Skip to content

goposta/posta-php

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Posta PHP Client

A lightweight PHP client for the Posta email API.

Requirements

  • PHP 8.1+
  • ext-curl
  • ext-json

Installation

Composer

composer require goposta/posta-php

Manual

Copy src/PostaClient.php and src/PostaException.php into your project and include them.

Usage

use Posta\PostaClient;

$client = new PostaClient('https://posta.example.com', 'your-api-key');

Send Email

$response = $client->sendEmail([
    'from'    => '[email protected]',
    'to'      => ['[email protected]'],
    'subject' => 'Hello',
    'html'    => '<h1>Hello World</h1>',
]);
// $response = ['id' => '...', 'status' => 'queued']

Send Template Email

$response = $client->sendTemplateEmail([
    'template'      => 'welcome',
    'to'            => ['[email protected]'],
    'template_data' => ['name' => 'John'],
]);

Send Batch Emails

$response = $client->sendBatch([
    'template'   => 'newsletter',
    'recipients' => [
        ['email' => '[email protected]', 'template_data' => ['name' => 'Alice']],
        ['email' => '[email protected]',   'template_data' => ['name' => 'Bob']],
    ],
]);
// $response = ['total' => 2, 'sent' => 2, 'failed' => 0, ...]

Get Email Status

$status = $client->getEmailStatus('email-uuid');
// $status = ['id' => '...', 'status' => 'sent', 'retry_count' => 0, ...]

Error Handling

use Posta\PostaException;

try {
    $client->sendEmail([...]);
} catch (PostaException $e) {
    echo $e->getStatusCode(); // HTTP status code
    echo $e->getMessage();    // Error message
    $info = $e->getErrorInfo(); // Parsed error details (nullable)
}

Contributing

Contributions are welcome! Please open an issue to discuss proposed changes before submitting a pull request.

License

This project is licensed under the Apache License 2.0. See LICENSE for details.


Copyright

Copyright © 2026 Jonas Kaninda

About

Posta PHP Client

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages