Skip to content

braze-community/braze-php

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Folders and files

NameName
Last commit message
Last commit date
Feb 1, 2024
Feb 1, 2024
Feb 1, 2024
Aug 13, 2023
Aug 19, 2023
Aug 13, 2023
Aug 13, 2023
Aug 13, 2023
Aug 13, 2023
Jan 5, 2024
Aug 13, 2023
Aug 19, 2023
Jan 5, 2024
Aug 13, 2023

Repository files navigation

braze-php

packagist build test

PHP library for Braze. Code is generated using the OpenAPI spec.

Requirements

Version

PHP >=7.2

API URL

Use the REST endpoint provisioned to your account when you log in to the dashboard:

Instance REST Endpoint
US-01 https://rest.iad-01.braze.com
US-02 https://rest.iad-02.braze.com
US-03 https://rest.iad-03.braze.com
US-04 https://rest.iad-04.braze.com
US-05 https://rest.iad-05.braze.com
US-06 https://rest.iad-06.braze.com
US-08 https://rest.iad-08.braze.com
EU-01 https://rest.fra-01.braze.eu
EU-02 https://rest.fra-02.braze.eu

API Key

The API key can be created in your Braze dashboard.

Install

Install with Composer:

composer require braze/sdk

Use Composer's autoload:

require_once 'vendor/autoload.php';

Usage

Instantiate the client:

use Braze\Braze;

$braze = new Braze('YOUR_API_URL', 'YOUR_API_KEY');

$client = $braze->client;

Or create a custom client:

use Braze\Client;

$httpClient = \Http\Discovery\Psr18ClientDiscovery::find();
$uri = \Http\Discovery\Psr17FactoryDiscovery::findUriFactory()->createUri('YOUR_API_URL');
$bearer = new \Http\Message\Authentication\Bearer('YOUR_API_KEY');
$plugins = [
    new \Http\Client\Common\Plugin\AddHostPlugin($uri),
    new \Http\Client\Common\Plugin\AuthenticationPlugin($bearer),
];
$httpClient = new \Http\Client\Common\PluginClient($httpClient, $plugins);

$client = Client::create($httpClient);

Send a message to your user:

use Braze\Braze;
use Braze\Model\MessagesSendPostBody;

$braze = new Braze('YOUR_API_URL', 'YOUR_API_KEY');

$braze->client->postMessagesSend(new MessagesSendPostBody([
    'external_user_ids' => ['your_external_user_id'],
    'messages' => [
        'email' => [
            'app_id' => 'your_app_id',
            'from' => 'Company <company@example.com>',
            'email_template_id' => 'your_email_template_id',
        ],
    ],
]));

Handle an API error:

use Braze\Braze;

$braze = new Braze('YOUR_API_URL', 'YOUR_API_KEY');

try {
    $braze->client->getCatalog();
} catch (Throwable $exception) {
    echo $exception->getMessage();
    echo $exception->getCode();
}

Scripts

composer build

Generate the code:

composer build

composer clean

Delete the lib/ directory:

composer clean

composer test

Run the tests:

composer test

About This Package

This package is automatically generated by Jane.