/APIv3-php-library

SendinBlue's API v3 Php Library

Primary LanguagePHPMIT LicenseMIT

SendinBlue's API v3 Php Library

SendinBlue's API exposes the entire SendinBlue features via a standardized programmatic interface. Please refer to the full documentation to learn more.

This is the wrapper for the API. It implements all the features of the API v3.

SendinBlue's API matches the OpenAPI v2 definition. The specification can be downloaded here.

This PHP package is automatically generated by the Swagger Codegen project and is reviewed and maintained by SendinBlue:

Requirements

PHP 5.6 and later

Installation & Usage

Composer

To install the bindings via Composer:

composer require sendinblue/api-v3-sdk "6.x.x"

Further do:

  • run composer install to get these dependencies added to your vendor directory
  • add the autoloader to your application with this line: require("vendor/autoload.php")

Tests

To run the unit tests:

composer install
./vendor/bin/phpunit

Getting Started

Please follow the installation procedure and then run the following:

<?php
require_once(__DIR__ . '/vendor/autoload.php');

// Configure API key authorization: api-key
$config = SendinBlue\Client\Configuration::getDefaultConfiguration()->setApiKey('api-key', 'YOUR_API_KEY');
// Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
// $config = SendinBlue\Client\Configuration::getDefaultConfiguration()->setApiKeyPrefix('api-key', 'Bearer');
// Configure API key authorization: partner-key
$config = SendinBlue\Client\Configuration::getDefaultConfiguration()->setApiKey('partner-key', 'YOUR_API_KEY');
// Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
// $config = SendinBlue\Client\Configuration::getDefaultConfiguration()->setApiKeyPrefix('partner-key', 'Bearer');

$apiInstance = new SendinBlue\Client\Api\AccountApi(
    // If you want use custom http client, pass your client which implements `GuzzleHttp\ClientInterface`.
    // This is optional, `GuzzleHttp\Client` will be used as default.
    new GuzzleHttp\Client(),
    $config
);

try {
    $result = $apiInstance->getAccount();
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling AccountApi->getAccount: ', $e->getMessage(), PHP_EOL;
}

?>

Documentation for API Endpoints

All URIs are relative to https://api.sendinblue.com/v3

Class Method HTTP request Description
AccountApi getAccount GET /account Get your account information, plan and credits details
AttributesApi createAttribute POST /contacts/attributes/{attributeCategory}/{attributeName} Create contact attribute
AttributesApi deleteAttribute DELETE /contacts/attributes/{attributeCategory}/{attributeName} Delete an attribute
AttributesApi getAttributes GET /contacts/attributes List all attributes
AttributesApi updateAttribute PUT /contacts/attributes/{attributeCategory}/{attributeName} Update contact attribute
ContactsApi addContactToList POST /contacts/lists/{listId}/contacts/add Add existing contacts to a list
ContactsApi createAttribute POST /contacts/attributes/{attributeCategory}/{attributeName} Create contact attribute
ContactsApi createContact POST /contacts Create a contact
ContactsApi createDoiContact POST /contacts/doubleOptinConfirmation Create a contact to trigger the DOI workflow from a Landing Page form
ContactsApi createFolder POST /contacts/folders Create a folder
ContactsApi createList POST /contacts/lists Create a list
ContactsApi deleteAttribute DELETE /contacts/attributes/{attributeCategory}/{attributeName} Delete an attribute
ContactsApi deleteContact DELETE /contacts/{email} Delete a contact
ContactsApi deleteFolder DELETE /contacts/folders/{folderId} Delete a folder (and all its lists)
ContactsApi deleteList DELETE /contacts/lists/{listId} Delete a list
ContactsApi getAttributes GET /contacts/attributes List all attributes
ContactsApi getContactInfo GET /contacts/{email} Get a contact's details
ContactsApi getContactStats GET /contacts/{email}/campaignStats Get email campaigns' statistics for a contact
ContactsApi getContacts GET /contacts Get all the contacts
ContactsApi getContactsFromList GET /contacts/lists/{listId}/contacts Get contacts in a list
ContactsApi getFolder GET /contacts/folders/{folderId} Returns a folder's details
ContactsApi getFolderLists GET /contacts/folders/{folderId}/lists Get lists in a folder
ContactsApi getFolders GET /contacts/folders Get all folders
ContactsApi getList GET /contacts/lists/{listId} Get a list's details
ContactsApi getLists GET /contacts/lists Get all the lists
ContactsApi importContacts POST /contacts/import Import contacts
ContactsApi removeContactFromList POST /contacts/lists/{listId}/contacts/remove Delete a contact from a list
ContactsApi requestContactExport POST /contacts/export Export contacts
ContactsApi updateAttribute PUT /contacts/attributes/{attributeCategory}/{attributeName} Update contact attribute
ContactsApi updateContact PUT /contacts/{email} Update a contact
ContactsApi updateFolder PUT /contacts/folders/{folderId} Update a folder
ContactsApi updateList PUT /contacts/lists/{listId} Update a list
EmailCampaignsApi createEmailCampaign POST /emailCampaigns Create an email campaign
EmailCampaignsApi deleteEmailCampaign DELETE /emailCampaigns/{campaignId} Delete an email campaign
EmailCampaignsApi emailExportRecipients POST /emailCampaigns/{campaignId}/exportRecipients Export the recipients of an email campaign
EmailCampaignsApi getAbTestCampaignResult GET /emailCampaigns/{campaignId}/abTestCampaignResult Get an A/B test email campaign results
EmailCampaignsApi getEmailCampaign GET /emailCampaigns/{campaignId} Get an email campaign report
EmailCampaignsApi getEmailCampaigns GET /emailCampaigns Return all your created email campaigns
EmailCampaignsApi getSharedTemplateUrl GET /emailCampaigns/{campaignId}/sharedUrl Get a shared template url
EmailCampaignsApi sendEmailCampaignNow POST /emailCampaigns/{campaignId}/sendNow Send an email campaign immediately, based on campaignId
EmailCampaignsApi sendReport POST /emailCampaigns/{campaignId}/sendReport Send the report of a campaign
EmailCampaignsApi sendTestEmail POST /emailCampaigns/{campaignId}/sendTest Send an email campaign to your test list
EmailCampaignsApi updateCampaignStatus PUT /emailCampaigns/{campaignId}/status Update an email campaign status
EmailCampaignsApi updateEmailCampaign PUT /emailCampaigns/{campaignId} Update an email campaign
EmailCampaignsApi uploadImageToGallery POST /emailCampaigns/images Upload an image to your account's image gallery
FoldersApi createFolder POST /contacts/folders Create a folder
FoldersApi deleteFolder DELETE /contacts/folders/{folderId} Delete a folder (and all its lists)
FoldersApi getFolder GET /contacts/folders/{folderId} Returns a folder's details
FoldersApi getFolderLists GET /contacts/folders/{folderId}/lists Get lists in a folder
FoldersApi getFolders GET /contacts/folders Get all folders
FoldersApi updateFolder PUT /contacts/folders/{folderId} Update a folder
ListsApi addContactToList POST /contacts/lists/{listId}/contacts/add Add existing contacts to a list
ListsApi createList POST /contacts/lists Create a list
ListsApi deleteList DELETE /contacts/lists/{listId} Delete a list
ListsApi getContactsFromList GET /contacts/lists/{listId}/contacts Get contacts in a list
ListsApi getFolderLists GET /contacts/folders/{folderId}/lists Get lists in a folder
ListsApi getList GET /contacts/lists/{listId} Get a list's details
ListsApi getLists GET /contacts/lists Get all the lists
ListsApi removeContactFromList POST /contacts/lists/{listId}/contacts/remove Delete a contact from a list
ListsApi updateList PUT /contacts/lists/{listId} Update a list
ProcessApi getProcess GET /processes/{processId} Return the informations for a process
ProcessApi getProcesses GET /processes Return all the processes for your account
ResellerApi addCredits POST /reseller/children/{childAuthKey}/credits/add Add Email and/or SMS credits to a specific child account
ResellerApi associateIpToChild POST /reseller/children/{childAuthKey}/ips/associate Associate a dedicated IP to the child
ResellerApi createChildDomain POST /reseller/children/{childAuthKey}/domains Create a domain for a child account
ResellerApi createResellerChild POST /reseller/children Creates a reseller child
ResellerApi deleteChildDomain DELETE /reseller/children/{childAuthKey}/domains/{domainName} Delete the sender domain of the reseller child based on the childAuthKey and domainName passed
ResellerApi deleteResellerChild DELETE /reseller/children/{childAuthKey} Delete a single reseller child based on the childAuthKey supplied
ResellerApi dissociateIpFromChild POST /reseller/children/{childAuthKey}/ips/dissociate Dissociate a dedicated IP to the child
ResellerApi getChildAccountCreationStatus GET /reseller/children/{childAuthKey}/accountCreationStatus Get the status of a reseller's child account creation, whether it is successfully created (exists) or not based on the childAuthKey supplied
ResellerApi getChildDomains GET /reseller/children/{childAuthKey}/domains Get all sender domains for a specific child account
ResellerApi getChildInfo GET /reseller/children/{childAuthKey} Get a child account's details
ResellerApi getResellerChilds GET /reseller/children Get the list of all children accounts
ResellerApi getSsoToken GET /reseller/children/{childAuthKey}/auth Get session token to access Sendinblue (SSO)
ResellerApi removeCredits POST /reseller/children/{childAuthKey}/credits/remove Remove Email and/or SMS credits from a specific child account
ResellerApi updateChildAccountStatus PUT /reseller/children/{childAuthKey}/accountStatus Update info of reseller's child account status based on the childAuthKey supplied
ResellerApi updateChildDomain PUT /reseller/children/{childAuthKey}/domains/{domainName} Update the sender domain of reseller's child based on the childAuthKey and domainName passed
ResellerApi updateResellerChild PUT /reseller/children/{childAuthKey} Update info of reseller's child based on the childAuthKey supplied
SMSCampaignsApi createSmsCampaign POST /smsCampaigns Creates an SMS campaign
SMSCampaignsApi deleteSmsCampaign DELETE /smsCampaigns/{campaignId} Delete an SMS campaign
SMSCampaignsApi getSmsCampaign GET /smsCampaigns/{campaignId} Get an SMS campaign
SMSCampaignsApi getSmsCampaigns GET /smsCampaigns Returns the information for all your created SMS campaigns
SMSCampaignsApi requestSmsRecipientExport POST /smsCampaigns/{campaignId}/exportRecipients Export an SMS campaign's recipients
SMSCampaignsApi sendSmsCampaignNow POST /smsCampaigns/{campaignId}/sendNow Send your SMS campaign immediately
SMSCampaignsApi sendSmsReport POST /smsCampaigns/{campaignId}/sendReport Send an SMS campaign's report
SMSCampaignsApi sendTestSms POST /smsCampaigns/{campaignId}/sendTest Send a test SMS campaign
SMSCampaignsApi updateSmsCampaign PUT /smsCampaigns/{campaignId} Update an SMS campaign
SMSCampaignsApi updateSmsCampaignStatus PUT /smsCampaigns/{campaignId}/status Update a campaign's status
SMTPApi createSmtpTemplate POST /smtp/templates Create an email template
SMTPApi deleteHardbounces POST /smtp/deleteHardbounces Delete hardbounces
SMTPApi deleteSmtpTemplate DELETE /smtp/templates/{templateId} Delete an inactive email template
SMTPApi getAggregatedSmtpReport GET /smtp/statistics/aggregatedReport Get your transactional email activity aggregated over a period of time
SMTPApi getEmailEventReport GET /smtp/statistics/events Get all your transactional email activity (unaggregated events)
SMTPApi getSmtpReport GET /smtp/statistics/reports Get your transactional email activity aggregated per day
SMTPApi getSmtpTemplate GET /smtp/templates/{templateId} Returns the template information
SMTPApi getSmtpTemplates GET /smtp/templates Get the list of email templates
SMTPApi getTransacBlockedContacts GET /smtp/blockedContacts Get the list of blocked or unsubscribed transactional contacts
SMTPApi getTransacEmailContent GET /smtp/emails/{uuid} Get the personalized content of a sent transactional email
SMTPApi getTransacEmailsList GET /smtp/emails Get the list of transactional emails on the basis of allowed filters
SMTPApi sendTemplate POST /smtp/templates/{templateId}/send Send a template
SMTPApi sendTestTemplate POST /smtp/templates/{templateId}/sendTest Send a template to your test list
SMTPApi sendTransacEmail POST /smtp/email Send a transactional email
SMTPApi smtpBlockedContactsEmailDelete DELETE /smtp/blockedContacts/{email} Unblock or resubscribe a transactional contact
SMTPApi smtpLogMessageIdDelete DELETE /smtp/log/{messageId} Delete an SMTP transactional log
SMTPApi updateSmtpTemplate PUT /smtp/templates/{templateId} Update an email template
SendersApi createSender POST /senders Create a new sender
SendersApi deleteSender DELETE /senders/{senderId} Delete a sender
SendersApi getIps GET /senders/ips Get all the dedicated IPs for your account
SendersApi getIpsFromSender GET /senders/{senderId}/ips Get all the dedicated IPs for a sender
SendersApi getSenders GET /senders Get the list of all your senders
SendersApi updateSender PUT /senders/{senderId} Update a sender
TransactionalSMSApi getSmsEvents GET /transactionalSMS/statistics/events Get all your SMS activity (unaggregated events)
TransactionalSMSApi getTransacAggregatedSmsReport GET /transactionalSMS/statistics/aggregatedReport Get your SMS activity aggregated over a period of time
TransactionalSMSApi getTransacSmsReport GET /transactionalSMS/statistics/reports Get your SMS activity aggregated per day
TransactionalSMSApi sendTransacSms POST /transactionalSMS/sms Send the SMS campaign to a mobile number
WebhooksApi createWebhook POST /webhooks Create a webhook
WebhooksApi deleteWebhook DELETE /webhooks/{webhookId} Delete a webhook
WebhooksApi getWebhook GET /webhooks/{webhookId} Get a webhook details
WebhooksApi getWebhooks GET /webhooks Get all webhooks
WebhooksApi updateWebhook PUT /webhooks/{webhookId} Update a webhook

Documentation For Models

Documentation For Authorization

api-key

The API key should be passed in the request headers as api-key for authentication.

  • Type: API key
  • API key parameter name: api-key
  • Location: HTTP header

partner-key

The partner key should be passed in the request headers as partner-key along with api-key pair for successful authentication of partner (Optional).

  • Type: API key
  • API key parameter name: partner-key
  • Location: HTTP header

If you find a bug, please post the issue on Github.

As always, if you need additional assistance, drop us a note here.