Download the PHP package sendpost/sendpost_php_sdk without Composer

On this page you can find all versions of the php package sendpost/sendpost_php_sdk. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package sendpost_php_sdk

sendpost

Introduction

📌 API versioning & the v1 response contract

This reference documents the v1 response contract — the stable, camelCase response shape that SendPost commits to. This is the shape you should build against.

During the current deprecation window, requests authenticated with an account or sub-account API key receive the legacy response shape by default, so existing integrations keep working unchanged. To receive the documented v1 shape today, send:

How to tell which shape you got. Every public response echoes the applied contract in the X-SendPost-Public-Contract response header. While the legacy shape is being served, responses also carry standard deprecation signals: Deprecation: true, a Sunset header with the exact cut-over date, and a Link: <...>; rel=\"deprecation\" header pointing at the migration guide. Read the Sunset header for the authoritative end date rather than hardcoding one.

After the sunset date, v1 becomes the default and the legacy shape is no longer served. New integrations should send X-SendPost-Public-Contract: v1 now and rely on the shapes in this reference.

SendPost provides email API and SMTP relay which can be used not just to send & measure but also alert & optimised email sending.

You can use SendPost to:

At and advanced level you can use it to:

<img src=\"https://run.pstmn.io/button.svg\" alt=\"Run In Postman\" style=\"width: 128px; height: 32px;\">

Overview

REST API

SendPost API is built on REST API principles. Authenticated users can interact with any of the API endpoints to perform:

The API endpoint for all API calls is: https://api.sendpost.io/api/v1

Some conventions that have been followed in the API design overall are following:

<aside class=\"success\"> All resources have either /api/v1/subaccount or /api/v1/account in their API call resource path based on who is authorised for the resource. All API calls with path /api/v1/subaccount use X-SubAccount-ApiKey in their request header. Likewise all API calls with path /api/v1/account use X-Account-ApiKey in their request header.

SendPost uses conventional HTTP response codes to indicate the success or failure of an API request.

<aside class=\"info\"> SendPost all responses return created in UNIX nano epoch timestamp.

Authentication

SendPost uses API keys for authentication. You can register a new SendPost API key at our developer portal.

SendPost expects the API key to be included in all API requests to the server in a header that looks like the following:

X-SubAccount-ApiKey: AHEZEP8192SEGH

This API key is used for all Sub-Account level operations such as:

In addition to X-SubAccount-ApiKey you also have another API Key X-Account-APIKey which is used for Account level operations such as :

<aside class=\"notice\"> You must look at individual API reference page to look at whether X-SubAccount-ApiKey is required or X-Account-ApiKey

In case an incorrect API Key header is specified or if it is missed you will get HTTP Response 401 ( Unauthorized ) response from SendPost.

HTTP Response Headers

Code Reason Details
200 Success Everything went well
401 Unauthorized Incorrect or missing API header either X-SubAccount-ApiKey or X-Account-ApiKey
403 Forbidden Typically sent when resource with same name or details already exist
406 Missing resource id Resource id specified is either missing or doesn't exist
422 Unprocessable entity Request body is not in proper format
500 Internal server error Some error happened at SendPost while processing API request
503 Service Unavailable SendPost is offline for maintenance. Please try again later

API SDKs

We have native SendPost SDKs in the following programming languages. You can integrate with them or create your own SDK with our API specification. In case you need any assistance with respect to API then do reachout to our team from website chat or email us at [email protected]

API Reference

SendX REST API can be broken down into two major sub-sections:

Sub-Account API operations enable common email sending API use-cases like sending bulk email, adding new domains or senders for email sending programmatically, retrieving stats, adding suppressions etc. All Sub-Account API operations need to pass X-SubAccount-ApiKey header with every API call.

The Account API operations allow users to manage multiple sub-accounts and manage IPs. A single parent SendPost account can have 100's of sub-accounts. You may want to create sub-accounts for different products your company is running or to segregate types of emails or for managing email sending across multiple customers of yours.

SMTP Reference

Simple Mail Transfer Protocol (SMTP) is a quick and easy way to send email from one server to another. SendPost provides an SMTP service that allows you to deliver your email via our servers instead of your own client or server. This means you can count on SendPost's delivery at scale for your SMTP needs.

Integrating SMTP

  1. Get the SMTP username and password from your SendPost account.

  2. Set the server host in your email client or application to smtp.sendpost.io. This setting is sometimes referred to as the external SMTP server or the SMTP relay.

  3. Set the username and password.

  4. Set the port to 587 (or as specified below).

SMTP Ports

SendPost supports STARTTLS for establishing a TLS-encrypted connection. STARTTLS is a means of upgrading an unencrypted connection to an encrypted connection. There are versions of STARTTLS for a variety of protocols; the SMTP version is defined in RFC 3207.

To set up a STARTTLS connection, the SMTP client connects to the SendPost SMTP endpoint smtp.sendpost.io on port 25, 587, or 2525, issues an EHLO command, and waits for the server to announce that it supports the STARTTLS SMTP extension. The client then issues the STARTTLS command, initiating TLS negotiation. When negotiation is complete, the client issues an EHLO command over the new encrypted connection, and the SMTP session proceeds normally.

<aside class=\"success\"> If you are unsure which port to use, a TLS connection on port 587 is typically recommended.

Sending email from your application

For PHP

For Python

For Golang

For Java

Many programming languages support sending email using SMTP. This capability might be built into the programming language itself, or it might be available as an add-on, plug-in, or library. You can take advantage of this capability by sending email through SendPost from within application programs that you write.

We have provided examples in Python3, Golang, Java, PHP, JS.

API Contract Versioning (Public REST)

The public REST API uses a versioned response contract so field changes stay non-breaking:

X-SendPost-Private-Api: true is an internal header used only by the SendPost dashboard to receive richer internal objects. It is not part of the public SDK contract and should not be set by API integrations.

Installation & Usage

Requirements

PHP 8.1 and later.

Composer

To install the bindings via Composer, add the following to composer.json:

Then run composer install

Manual Installation

Download the files and include autoload.php:

Getting Started

Please follow the installation procedure and then run the following:

API Endpoints

All URIs are relative to https://api.sendpost.io/api/v1

Class Method HTTP request Description
DomainApi createSubAccountDomain POST /subaccount/domain Create Domain
DomainApi deleteSubAccountDomain DELETE /subaccount/domain/{domain_id} Delete Domain
DomainApi getAllDomains GET /subaccount/domain List Domains
DomainApi getSubAccountDomain GET /subaccount/domain/{domain_id} Get Domain
EmailApi sendEmail POST /subaccount/email/ Send Email
EmailApi sendEmailWithTemplate POST /subaccount/email/template Send Email With Template
IPApi allocateNewIp PUT /account/ip/allocate Allocate IP
IPApi deleteIp DELETE /account/ip/{ip_id} Delete IP
IPApi getAllIps GET /account/ip/ List IPs
IPApi getSpecificIp GET /account/ip/{ip_id} Get IP
IPApi updateIp PUT /account/ip/{ip_id} Update IP
IPPoolsApi createIPPool POST /account/ippool Create IPPool
IPPoolsApi deleteIPPool DELETE /account/ippool/{ippool_id} Delete IPPool
IPPoolsApi getAllIPPools GET /account/ippool List IPPools
IPPoolsApi getIPPoolById GET /account/ippool/{ippool_id} Get IPPool
IPPoolsApi updateIPPool PUT /account/ippool/{ippool_id} Update IPPool
MessageApi getAllMessages GET /account/message List Messages
MessageApi getMessageById GET /account/message/{message_id} Get Message
StatsApi accountSubaccountStatSubaccountIdAggregateGet GET /account/subaccount/stat/{subaccount_id}/aggregate Get Aggregate Stats
StatsApi accountSubaccountStatSubaccountIdGet GET /account/subaccount/stat/{subaccount_id} List Stats
StatsApi getAggregateStatsByGroup GET /account/subaccount/stat/{subaccount_id}/group Get Group Aggregate Stats
StatsAApi getAccountAggregateStats GET /account/stat/aggregate Get Account Aggregate Stats
StatsAApi getAccountAggregateStatsByGroup GET /account/stat/aggregate/group Get Account Group Aggregate Stats
StatsAApi getAccountStatsByGroup GET /account/stat/group List Account Group Stats
StatsAApi getAllAccountStats GET /account/stat List Account Stats
SubAccountApi createSubAccount POST /account/subaccount/ Create Sub-Account
SubAccountApi deleteSubAccount DELETE /account/subaccount/{subaccount_id} Delete Sub-Account
SubAccountApi getAllSubAccounts GET /account/subaccount/ List Sub-Accounts
SubAccountApi getSubAccount GET /account/subaccount/{subaccount_id} Get Sub-Account
SubAccountApi updateSubAccount PUT /account/subaccount/{subaccount_id} Update Sub-Account
SuppressionApi createSuppression POST /subaccount/suppression Create Suppressions
SuppressionApi deleteSuppression DELETE /subaccount/suppression Delete Suppressions
SuppressionApi getSuppressionList GET /subaccount/suppression List Suppressions
WebhookApi createWebhook POST /account/webhook Create Webhook
WebhookApi deleteWebhook DELETE /account/webhook/{webhook_id} Delete Webhook
WebhookApi getAllWebhooks GET /account/webhook List Webhooks
WebhookApi getWebhook GET /account/webhook/{webhook_id} Get Webhook
WebhookApi updateWebhook PUT /account/webhook/{webhook_id} Update Webhook

Models

Authorization

Authentication schemes defined for the API:

accountAuth

subAccountAuth

Tests

To run the tests, use:

Author

About this package

This PHP package is automatically generated by the OpenAPI Generator project:


All versions of sendpost_php_sdk with dependencies

PHP Build Version
Package Version
Requires php Version ^7.4 || ^8.0
ext-curl Version *
ext-json Version *
ext-mbstring Version *
guzzlehttp/guzzle Version ^7.3
guzzlehttp/psr7 Version ^1.7 || ^2.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package sendpost/sendpost_php_sdk contains the following files

Loading the files please wait ...