Getting Started With Our API


The API is a Web Service through which clients can access and manipulate their accounts. The API is the computer-friendly version of our system, and enables integration between different systems in a powerful and uniform way.

How the API Works

An API (Application Programming Interface) is a tool which makes data readable to a computer. The computer can use API instructions to read and edit data. When you integrate your customer management system with the Everlytic API, you can automate tasks such as list management, and email sending.

The API consists of two systems:

  1. Our server which waits for users to ask it to perform a task.
  2. The client, which knows which data is available through the API and can manipulate it at the user's request.

API Flowchart


Which API Endpoint Should You Use?

The API endpoint is a web service, defined by a WDSL file, which defines the address or connection point to a web service. The endpoint is the entire interface, not one particular method. Everlytic has two API endpoints available; REST and XML-RPC.


REST (or Representational state transfer) is an architectural style that simplifies the design of Web Services. It's based on the concept that everything is a resource, and that each resource can be identified by and accessed at a uniform resource identifier (URI). Using this URI, the resource can be acted upon using various HTTP methods. Typically, the methods are mapped to actions taken on the resource as follows:

HTTP MethodAction

For example, to get a collection of lists you send a GET request to the Lists resource, which is at As GET is the default HTTP Method for browsers, you can do this in your browser. Just click on the following link:

You can learn more about REST in our API Endpoints article.


XML-RPC is a protocol specification which defines how Remote Procedure Calls can be made by sending XML to a Web Service using the HTTP protocol. The definitions for the different calls can be found by navigating to the different components. Each call has its unique signature which needs to be followed.

With XML-RPC, the programmer will use an external library to connect to the API, so any implementation details will be based on the library they choose to use.

Our XML-RPC section has examples of how to create the call correctly.

What is an API call?

API calls are made of two parts, the request and the return.


API requests are the individual instructions that you can use to access the data in our system.

To make a request, you need to include the following:

  1. URL: Each request must be made to a specific URL. Your URL is the address of your Everlytic install.
  2. Method: The method tells the server exactly what you want the system to do.
  3. List of headers: Headers provide meta-information about a request, such as the time the client sent the request.
  4. Body: The body of the request contains the data the client needs to send the server.


The response is the information that our system sends back to yours when you use the API. This includes whether or not the server could comply with your request. The response is structured similarly to the request, with a response code, header, and body. The header and body are similar to those in the request.

The status code is a three-digit number, and each code has a unique meaning. This code gives the client information about whether or not the server could fulfill the request.


To keep things as simple as possible, we use Basic HTTP Authentication on all of our endpoints.

Most HTTP libraries will have methods already in place in order to use Basic HTTP Authentication. If, however, the library that you are using doesn't provide this functionality, here is how to do it manually:

Basic HTTP Authentication works by adding a header in your request. Request headers are a list of key-value pairs. The key for the header to add for authentication is "Authorization". The value for the header is the word "Basic" followed by a space followed by a base64 encoded hash. To generate this base64 encoded hash, start with the string "username:apikey", substituting your username and apikey for our system. Next, run a base64 encode function on that string.

The API Key

An important facet of API authentication is the API key. The API key is a secret token which is passed with the API calls to identify the origin of the request. This key may seem like a string of random characters to you or me, but it is constructed in a specific way. The receiving system will recognise the construction, if it is valid, and process the request passed with the key.

An API key used with Basic Authentication might look something like this:

Authorization: Basic QmF0bWFuOkJydWNlV2F5bmU=

You can request an API key from or get one by contacting your reseller. You'll use your username and the key provided to authenticate and access your account.

Using the API

Now that we've covered the basics of what an API is and how it works, lets look at specific tasks you might need to complete the first time you want to send an email with our API.

The examples below have detailed pages which give the properties and code examples for each request. We've provided a link to each page below.

Import a List

You can use the Create a New Subsription List request to create a new subscription list. Subscription lists are used to send email campaigns to groups of contacts. A contact will have a subscription status to a list, denoting whether or not the contact should receive messages when a campaign is sent to a list.

The Method

API Method
RESTPOSThttp://[Your URL]/api/2.0/lists
Your URL is the address of your Everlytic install.

Your request must be structured as follows:

CreateList(\struct | array $properties) : int

Create Email

Email campaigns are used to send email messages to a list of contacts. Creating and sending the campaign are two different actions.

Creating the campaign puts it in the 'composing' state, giving you the opportunity to add and remove lists, and tweak the campaign parameters.

The Method

API Method
RESTPOSThttp://[Your URL]/api/2.0/emails
Your URL is the address of your Everlytic install.

Your request must be structured as follows:

CreateEmail(\struct | array $properties) : int

Send Email

Once you're done creating your email, you can trigger the sending of the campaign by creating a Send Email Action for the specific email.

The Method

API Method
RESTPOSThttp://[Your URL]/api/2.0/email_actions/send/:id
Your URL is the address of your Everlytic install.

Your request must be structured as follows:

SendEmail(integer $id)

Email Reports

You can use the Fetch Email Report request to retrieve reports on a specific email. Use the ID of the email you want the reports on, and specify which report you want the system to return.

The Method

API Method
RESTGEThttp://[Your URL]/api/2.0/emails/:id/report/:report
Your URL is the address of your Everlytic install.

Your request must be structured as follows:

EmailReports(integer $id, string $report) : array


Translate »