We don't offer web based service any longer since we consider Atomic Sender a more affordable and suitable offer.
You get Atomic Bulk Email Service for $ 79.85, no monthly fees.
Try free trial now!

Atomic Email Service API (v. 3.0)

Bulk Mailing API Overview

In order to activate the email gateway, please log into your Atomic Email Service account and in the Settings section (http://www.atompark.com/members/settings#emailservice) activate API 3.0 usage. Select the Mail Service tab and set Activate API 3.0 to Yes.

Note: You can activate the test mode by using the test=1 parameter. Please note, that any current parameter is also used in the checksum generation, if this exists.

 

API Usage Basics

To use API methods means to send an HTTP-request to the URL like:

https://atompark.com/api/email/3.0/METHOD?key=public_key&sum=CONTROL_SUM&arg1=ARG_1&argN=ARG_N

where:

METHODThe name of the method
KEYThe public key to access the API
SUMThe control request sum
ARG_1 … ARG_NThe method’s arguments, a separate argument for each method


The parameters can be transmitted by GET and POST methods, and all the parameters must be in UTF-8 encoding. It is recommended that you transmit all the parameters using the POST method to avoid saving them in the proxy server logs.

To calculate the control sum, you must:

  1. Sort all incoming keys
  2. Make a concatenation value over those keys
  3. Make a concatenation over received value with a private key
  4. Take an MD5 from the received result

 

The response will be a JSON format object.

You can specify the public and private keys on the service settings page.

Below is an example of sum calculation for the addAddressbookmethod using the PHP language.

$params ['version'] ='3.0';
$params ['action'] = 'addAddressBook';
$params ['key'] = $openKey; //you open key
$params ['name'] = 'Test addressbook';
ksort ($params);
$sum='';
foreach ($params as $k=>$v)
$sum.=$v;
$sum .= $privateKey; //your private key
$control_sum =  md5($sum);

 

Successful method call results

If the method call succeeds, the object will contain a “result” field, the content of which depends on the call method, and won’t contain an “error” field. But even when the method runs successfully, the “warnings” field may appear, containing a package of warning objects with a one-line “warning” field.

Successful method call response example:

{
    "result":{
        "addressbook_id":123
    }
}

or

   {
       "result":1
   } 

 

Error response example

The error criterion after the method running is the existence of an “error” field. It contains an HTML error message in the response object. Additionally, there will be a “code” field with an error code in the response object. The “result” field will be ignored in case of error.

    {
        "error": 202,       
    }

 

Methods

 

List of methods

 

Address Book Operations

 

Create a new address book

Method addAddressbook() is used.

Arguments:

name — address book name (title)

Request example: https://atompark.com/api/email/3.0/addAddressbook?key=public_key&sum=control_sum&name=BOOK_NAME

 

Response:

{
    "result":{
        "addressbook_id":"ADDRESSBOOK_ID" 
    }
}

The response will contain:

addressbook_id — address book ID.

 

Delete an address book

Method delAddressbook() is used.

Arguments:

id — address book ID

Request example: https://atompark.com/api/email/3.0/delAddressbook?key=public_key&sum=control_sum&id=ADDRESSBOOK_ID

 

Response:

If success

 {
   "result":1
} 

In case of error

If the book you wish to delete doesn’t exist, then the server will return

     {
        "error": 213,       
    }

 

Information about an address book/list of address books

Method getAddressbook() is used.

Arguments:

id — address book ID, optional parameter*

* without ID specification all address books will be returned

Request example: https://atompark.com/api/email/3.0/getAddressbook?key=public_key&sum=control_sum&id=2161

 

Response:

If success

 {
   "result":{
      "id":2161,
      "name":"super book",
      "all_email_qty":25,
      "active_email_qty":10,
      "inactive_email_qty":5,
      "activation_request_qty":10,
      "creationdate":"2012-04-01 18:44:36",
   }  
} 

The response will contain:

id — address book ID

name — address book name

all_email_qty — total number of e-mail addresses in the address book

active_email_qty — the number of active e-mail addresses

inactive_email_qty — the number of inactive e-mail addresses

activation_request_qty — the number of e-mail addresses with activation request

creationdate — address book creation date

 

E-mail Address Management

 

Add e-mail addresses

Method addAddresses() is used.

Arguments:

id_list — address book ID(s). (number or array)

email — e-mail address array

v — two-dimensional array of variables. Optional parameter

Request example: https://atompark.com/api/email/3.0/addAddresses?key=public_key&sum=control_sum&id_list[]=2161&id_list[]=2162&email[0]=email@addr.com&v[0][varname]=value

 

Or method addAddressesNew() is used. (optimized for uploading large mailing lists)

Arguments:

id_list — address book ID(s). (number or array)

emails[‘address’] — emails separated by symbol |

emails[‘variables’] — json formatted variables separated by symbol | . Optional parameter

Request example: https://atompark.com/api/email/3.0/addAddressesNew?key=c8b2543e32388b623d315145efd80a35&sum=b37e2551afd54da28fc0c0104889d6be&id_list[0]=123&emails[address]=excampl1@addr.com|excampl2@addr.com|&emails[variables]={“age”:32}|{“age”:28}|

 

Response:

{
   "result":1
}

 

Activation request

Method activateEmails() is used.

Arguments:

id — address book ID

description — description how emails we collected

Request example: https://atompark.com/api/email/3.0/activateEmails?key=public_key&sum=control_sum&id=2161&description=some_text

 

Response

 {
    "result":{
        "activation_request_qty":100
    }
}

The response will contain:

activation_request_qty — the number of e-mail addresses requesting activation.

 

Block/Unblock e-mail addresses

Method changeEmailStatus() is used.

Arguments:

id — address book ID

email — e-mail address to operate with

status – 0 – block address, 1 – unblock address

Request example: https://atompark.com/api/email/3.0/changeEmailStatus?key=public_key&sum=control_sum&id=2161&email=email@addr.com&status=1

 

Response

{
   "result":1
} 

 

Delete e-mail address

Method delEmail() is used.

Arguments:

id — address book ID

email — e-mail address to delete

Request example: https://atompark.com/api/email/3.0/delEmail?key=public_key&sum=control_sum&id=2161&email=email@addr.com

 

Response

{
   "result":1
} 

 

Campaign operation

 

Create a campaign

Method createCampaign() is used.

Agruments:

name — campaign name, optional parameter (if this is not defined, a default campaign name will be generated automatically)

sender_name — sender name

sender_email — sender e-mail address

subject — message subject

body — message content (base64)

list_id — address book ID. Specify the list to send mailings to.

labels — the list of labels to send mailings to, separated by a comma. If this parameter is not specified, the mailing will be sent to each e-mail address in the address book.

attachments — associative array of attached files. The file name is used as a key, the file’s content is used as a value.

Request example: https://atompark.com/api/email/3.0/createCampaign?key=public_key&sum=control_sum&name=campaignname&sender_name=testsender&sender_email=test@addr.com&subject=my subject&body=aGVsbG8gd29ybGQh &list_id=1234&labels=hello&attachments[file1.txt]=content+files1&attachments[file2.txt]=content+files2

 

Response

{
   "result":{
       "id":3214,
       "status":1,
       "count":300,
       "tariff_email_qty":200,
       "paid_email_qty":100,
       "overdraft_price":15.21,
       "ovedraft_currency":"USD" 
   }
}

The response will contain:

id — campaign ID

status — campaign status

count — the number of e-mail addresses to send to

tariff_email_qty — the number of e-mail messages sent and paid within the current plan

paid_email_qty — the number of extra plan e-mail messages

overdraft_price — the price for extra plan e-mail messages

ovedraft_currency — the currency for extra plan e-mail message payment (USD, RUR, UAH, EUR)

 

Get the list of campaigns

Method getCampaign() is used.

Arguments:

start — a sample position (optional parameter, default value is 0)

offset — an offset position (optional parameter, default value is 10, maximum = 100) )

Request example: https://atompark.com/api/email/3.0/getCampaign?key=public_key&sum=control_sum

 

Response

{
   "result":{
      :{
          "name":"campaign name",
          "message":{
              "sender_name":"sender name",
              "sender_email":"test@addr.com",
              "subject":"email subject",
              "body":"hello world!!!",
              "list_id":1234,
              "labels":"list of labels",
              "attachments":["file1.txt","file2.jpg"]
          }
          "status":1,
          "count":300,
          "tariff_email_qty":200,
          "paid_email_qty":100,
          "overdraft_price":15.21,
          "ovedraft_currency":"USD" 
      },
   }
}

The response will contain:

id — campaign ID

status — campaign status

count — the number of e-mail addresses to send to

tariff_email_qty — the number of e-mail messages sent and paid within the current plan

paid_email_qty — the number of extra plan e-mail messages

overdraft_price — the price for extra plan e-mail messages

ovedraft_currency — the currency for extra plan e-mail message payment (USD, RUR, UAH, EUR)

message — block that contains parameters of sent message

sender_name — sender name

sender_email — sender e-mail

subject — message subject

body — message content (base64)

list_id — address book ID

labels — list of labels (comma-separated)

attachments — the list of attached files

 

Get campaign status

Method getCampaignStats() is used.

Arguments:

id — campaign ID

Request example: https://atompark.com/api/email/3.0/getCampaignStats?key=public_key&sum=control_sum&id=1234

 

Response

{
   "result":{
       "id":1234,
       "status":1,
       "count":300,
       "tariff_email_qty":200,
       "paid_email_qty":100,
       "overdraft_price":15.21,
       "ovedraft_currency":"USD",
       "statistics":{
           "sent":290,
           "delivered":280,
           "open":200,
           "visit_link":100
       }
   }
}

The response will contain:

id — campaign ID

status — campaign status

count — the number of e-mail addresses to send to

tariff_email_qty — the number of e-mail messages sent and paid within the current plan

paid_email_qty — the number of extra plan e-mail messages

overdraft_price — the price for extra plan e-mail messages

ovedraft_currency — the currency for extra plan e-mail message payments (USD, RUR, UAH, EUR)

statistics — common campaign statistics

sent — sent

delivered — delivered

open — read

visit_link — clicked a link

 

Get e-mail address status

Method getCampaignDeliveryStats() is used.

Arguments:

id — campaign ID

start — a sample position (optional parameter, default value is 0)

offset — an offset position (optional parameter, default value is 10, maximum = 100)

Request example: https://atompark.com/api/email/3.0/getCampaignDeliveryStats?key=public_key&sum=control_sum&id=1234

 

Response

{
   "result":
       [,,],
       ['email@adddr.com',1,'2012-11-06 00:12:13']
   }
}

The response will contain:

email — e-mail address

last time status update — date and time when e-mail status was updated last

status — e-mail status digital code

 

Senders

 

Get the list of senders

Method getSender() is used.

Arguments:

start — a sample position (optional parameter, default value is 0)

offset — an offset position (optional parameter, default value is 10, maximum = 100)

Request example: https://atompark.com/api/email/3.0/getSender?key=public_key&sum=control_sum

 

Response

{
   "result":['email@addr.com','email2@addr.com']
} 

 

Add a sender

Method addSender() is used.

Arguments:

sender_name — sender name

sender_email — sender e-mail address

Request example: https://atompark.com/api/email/3.0/addSender?key=public_key&sum=control_sum&sender_name=Sender name&sender_email=email@addr.com

 

Response

{
   "result":1
} 

 

Get an activation code to the sender e-mail

Method getSenderActivateCode() is used.

Arguments:

sender_email — sender e-mail address

Request example: https://atompark.com/api/email/3.0/getSenderActivateCode?key=public_key&sum=control_sum&sender_email=email@addr.com

 

Response

{
   "result":1
} 

 

Activate a sender

Method activateSender() is used.

Arguments:

sender_email — sender e-mail address

code — activation code

Request example: https://atompark.com/api/email/3.0/activateSender?key=public_key&sum=control_sum&code=12312sender_email=email@addr.com

 

Response

{
   "result":1
} 

 

Delete a sender

Method delSender() is used.

Arguments:

sender_email — sender e-mail address

Request example: https://atompark.com/api/email/3.0/delSender?key=public_key&sum=control_sum&code=12312sender_email=email@addr.com

 

Response

{
   "result":1
} 

 

Check the balance

 

Method getUserBalance() is used.

Arguments:

currency — the currency of the returned balance

Request example: https://atompark.com/api/email/3.0/getUserBalance?key=public_key&sum=control_sum&currency=USD

 

Response

{
    "result":{
        "balance_currency":123.45,
        "currency":"USD" 

    }
}

The response will contain:

balance_currency — balance value in the specified currency

currency — the currency of the returned balance

 

Labels

 

Get the list of labels

Method getLabels() is used.

Request example: https://atompark.com/api/email/3.0/getLabels?key=public_key&sum=control_sum

 

Response

{
    "result":['label 1','label 2']
}

The response will contain:

result — includes list of labels

 

Add a label

Method addLabels() is used.

Arguments:

label_name — the name for the label you’re adding

Request example: https://atompark.com/api/email/3.0/addLabels?key=public_key&sum=control_sum&label_name=lebel 3

 

Response

{
   "result":1
}

 

Delete a label

Method delLabels() is used.

Arguments:

label_name — name of a label to delete

Request example: https://atompark.com/api/email/3.0/delLabels?key=public_key&sum=control_sum&label_name=lebel 3

 

Response

{
   "result":1
}

 

Unsubscribe reason (blacklist)

 

Get the list of unsubscribed e-mail addresses

Method getBlackList() is used.

Arguments:

start — a sample position (optional parameter, default value is 0)

offset — an offset position (optional parameter, default value is 10, maximum = 100)

Request example: https://atompark.com/api/email/3.0/getBlackList?key=public_key&sum=control_sum

 

Response

{
    "result":['email@addr.com','email2@addr.com']
}

The response will contain:

result — the list of unsubscribed e-mail addresses

 

Add to the list of unsubscribers

Method addBlackList() is used.

Arguments:

email — e-mail address to add to the list of unsubscribers

Request example: https://atompark.com/api/email/3.0/addBlackList?key=public_key&sum=control_sum&email=email@addr.com

 

Response

{
   "result":1
}

 

Remove an unsubscriber from the blacklist

Method delBlackList() is used.

Arguments:

email — e-mail address to remove from the list of unsubscribers

Request example: https://atompark.com/api/email/3.0/delBlackList?key=public_key&sum=control_sum&email=email@addr.com

Response

{
   "result":1
}

 

After spending some six months building an email database and 'struggling' with a competitive product to mail out to users, we found Atomic Mail Sender. Your product has saved us countless hours and headaches. I would more than happily endorse it. Well done. Read more »
Peter Van Vliet
FDRS
We’ve been using the Atomic Mail Sender for a few years now and I’m glad to say that it has made our lives very easy. We have a big database of members to whom we have to communicate on a regular basis. Atomic Mail Sender stays up to date with the latest technology and ensures that our emails get delivered. Thank you for a great product. Read more »
Albert la Grange
University of Makeup
Time to try something new!

Create and send your email campaigns.
Try it now for free.

Click the "download" button to download software and then click the "save file" button when prompted.