sabbajohn / pulse-php
Framework-agnostic PHP client for the VoraPulse API.
0.1.1
2026-05-29 16:11 UTC
Requires
- php: ^8.2
- guzzlehttp/guzzle: ^7.8
This package is not auto-updated.
Last update: 2026-06-01 18:24:37 UTC
README
Framework-agnostic PHP client for the public v2 VoraPulse API.
Contract
The SDK contract is defined by the Pulse public OpenAPI spec:
https://github.com/vora-sys/Pulse/blob/main/VoraPulse/docs/openapi/pulse-public-v2.openapi.json
Administrative, billing, observability and other internal endpoints are intentionally out of scope.
Compatibility
- PHP
^8.2 - Public API base:
/api/v2
Installation
composer require sabbajohn/pulse-php
Quickstart
use Sabbajohn\PulsePhp\PulseClient; $pulse = new PulseClient('https://pulse.example.com', 'api-token'); $pulse->get('health'); $pulse->emails()->sendSync([ 'to' => [['email' => 'cliente@example.com', 'name' => 'Cliente']], 'subject' => 'Bem-vindo', 'html' => '<p>Ola!</p>', ]); $pulse->automations()->trigger('pedido.criado', ['pedido_id' => 123]);
The client automatically normalizes the base URL to /api/v2.
Services
emails(): send sync/async, list, status, cancel, retry, stats and SMTP testtemplates(): meta, CRUD and previewcomposer(): meta, render, validate, autosave and latest revisioncampaigns(): list, create, preview, show and sendaudiences(): audiences, channels, members, tags and segmentsautomations(): CRUD, trigger, toggle and manual runcalendar(): items, create event and delete eventwhatsapp(): config, test, instance status, QR, webhook, restart, list and send message
Errors
The public exception mapping is stable across SDKs:
AuthenticationExceptionNotFoundExceptionValidationExceptionRateLimitExceptionRemoteExceptionRequestFailedException
Examples
examples/quickstart.php