HEX
Server: Apache/2.4.65 (Debian)
System: Linux wordpress-7cb4c6b6f6-hg958 5.15.0-131-generic #141-Ubuntu SMP Fri Jan 10 21:18:28 UTC 2025 x86_64
User: www-data (33)
PHP: 8.3.27
Disabled: NONE
Upload Files
File: /var/www/html/wp-content/plugins/post-smtp/Postman/Postman-Mail/Services/ElasticEmail/Handler.php
<?php

class PostmanElasticEmail extends PostmanServiceRequest {

    /**
     * Success Code
     * 
     * @since 2.6.0
     * @version 1.0
     */
    private $email_sent_code = 200;

    /**
     * API Key
     * 
     * @since 2.6.0
     * @version 1.0
     */
    private $api_key = '';

    /**
     * Base URL
     * 
     * @since 2.6.0
     * @version 1.0
     */
    private $base_url = 'https://api.elasticemail.com/v4/emails';

    /**
     * constructor ElasticEmail
     * 
     * @param $api_key
     * @since 2.6.0
     * @version 1.0
     */
    public function __construct( $api_key ) {

        $this->api_key = $api_key;
        
        parent::__construct( $this->base_url );

    }

    /**
     * Prepares Header for Request
     * 
     * @since 2.6.0
     * @version 1.0
     */
    private function get_headers() {

        return array(
            'X-ElasticEmail-ApiKey' =>  $this->api_key
        );

    }

    /**
     * Sends Email using ElasticEmail transactional end point
     * 
     * @param $api_key
     * @since 2.6.0
     * @version 1.0
     */
    public function send( $content ) {

        $content = json_encode( $content );

        return $this->request(
            'POST',
            '/transactional',
            $this->get_headers(),
            $content,
            $this->email_sent_code
        );

    }

}