Call us toll free @ 888-497-7898

Hypermail API

We offer a Restful API to interact with the system remotely or from your own applications.
You can make API calls using either POST or GET methods, unless otherwise specified for a particular endpoint.
Webhooks are also supported. Read our Webhooks Guide.

    Each API call requires the following parameters:
  • apikey – Your unique API key. Find this under Get API Key in the API section.
  • area – The section of the system to access.
    Examples: email, home, clients
  • action – The specific API function you want to call.

Example API Call


https://api.hypermail.com/api.php?apikey=YOURAPIKEYHERE&area=home&action=getusers&output=xml
  
Example Response:

<response>
  <user>
    <id>1337</id>
    <firstname>John</firstname>
    <lastname>Doe</lastname>
    <username>username</username>
    <email>test@test.com</email>
    <lastlogin>October 17, 2025, 03:15:17 pm</lastlogin>
    <primaryuser>No</primaryuser>
  </user>
</response>
  

Paging Support

API calls that support pagination accept the following additional parameters:

  • start – The starting index for the query.
  • limit – The maximum number of records to return (default: 10, maximum: 1000).

Note: If you do not specify a limit, the default value is 10.

Example Paging API Call:


https://api.hypermail.com/api.php?apikey=YOURAPIKEYHERE&area=email&action=getmessages&start=0&limit=5
  

The API response will include a <records> element, indicating the total number of records available.

Example Response:

<response>
  <records>2</records>
  <message>
    <id>45911</id>
    <title>Message 1</title>
    <datecreated>August 11, 2025, 09:18:08 pm</datecreated>
    <numberoftimesused>0</numberoftimesused>
    <datelastused>Never</datelastused>
    <locked>0</locked>
  </message>
  <message>
    <id>45910</id>
    <title>Message 2</title>
    <datecreated>August 11, 2025 09:17:39 pm</datecreated>
    <numberoftimesused>2</numberoftimesused>
    <datelastused>October 11, 2025, 11:42:04 pm</datelastused>
    <locked>0</locked>
  </message>
</response>
  

Error Handling

If an error occurs, the API returns an error message in the following format:


<response>
  <error>Error Message Appears Here</error>
</response>
  

Output Formats

By default, the API returns results as XML. To request a different output format, add the output parameter to your request:

  • output=xml (default)
  • output=json
  • output=csv

Example:


https://api.hypermail.com/api.php?apikey=YOURAPIKEYHERE&area=home&action=getusers&output=json
    

Rate Limiting

Most API calls are limited to 10 requests per second, unless otherwise specified. If you exceed this limit, you will receive the following error:


<response>
  <error>Rate Limited: 1 API query per second.</error>
</response>
  

To avoid rate limiting, please implement a delay (e.g., sleep(1)) between requests if needed.

API Call List

Home

  • adduser - Allows adding a user to an account
  • deleteuser - Deletes a user from the account given the userid
  • edituser - Allows editing a user given their userid
  • getusers - Returns a list of users in the account.

Clients

  • getclients - This api returns a list of clients under the account. Also returns api key of client to allow to run API calls on their account

Email Marketing

- Lists
  • addemail - Adds an email to a list, when giving the list id. Also supports custom columns if they already exist in the list just pass the column name via the request.
  • createlist - Allows creating a list by passing a data containing email addresses
  • deleteemailbyemail - Deletes an email address from a list given it's list id and email address
  • deleteemailbyemailid - Deletes an email address from a list given it's list id and email id
  • deletelist - Deletes a list by a list id
  • editemail - Edits an email entry inside a list. Given either email address or email id.
  • getdatafeeds - Gets a list of data feeds from the account
  • getfeedbackloopconfirmationemails - Gets a list of feedback confirmation emails from the account.
  • getlistdetail - Gets a list of emails from the list with all the columns.
  • getlistfields - Returns a list of fields inside a list. Which can be used submitted when using the addemail function call
  • getlisthardbounces - Gets a list of hard bounces from a list given the listid.
  • getlists - Returns a list of email lists found in the account
  • getunsubscribelist - This api returns a list of optouts from the unsubscribe list of the account.
  • mergelist - Merges multiple lists together into a new list. Keeps the original list!
  • unsubscribedomain - This api allows you to unsubscribe a domain by adding it to the account's unsubscribe list.
  • unsubscribeemail - This api allows you to unsubscribe an email address by adding it to the account's unsubscribe list.
  • uploadlistbyurl - Uploads a list to the account given a url to a list.
  • uploadlistfile - Allows you to upload a list to the system either csv,txt file or a zip file containing txt or csv files.
- Messages
  • addmessage - This api allows you to remotely add a message to your email marketing account.
  • checkspamassassin - Returns the results of the spam assassin content check
  • deleteimage - Deletes an image given an image id
  • deletemessage - Delete a message by message id
  • editmessage - Allows editing of a message in the system.
  • getmessagedetail - This api returns the html and text content of message given the id of the message.
  • getmessages - Returns a list of messages in the account
- Campaigns
  • blreport - Gets list of blocked responses from a campaign that appear to be from blacklists
  • campaignlog - Gets the details of a campaign from the campaign log. For each chunk update. This data builds the campaign graph.
  • createcampaign - Sends an email campaign
  • deletecampaign - Deletes a campaign given a campaign id
  • deletereoccurringcampaign - Deletes a recurring campaign given the recurring id
  • deletetrigger - Deletes a trigger given a trigger id
  • editcampaign - Allows editing of a campaign
  • getallclicks - Gets all the clicks from all campaigns. Returns the email, date/time, and ip address, and campaign id.
  • getallopens - Gets all the opens from all campaigns. Returns the email, date/time, and ip address, and campaign id.
  • getcampaigndetail - Get a detailed high level information from a campaign
  • getcampaignresults - Shows each individual email delivery result from a campaign.
  • getcampaigns - Returns a list of campaigns from the account.
  • getcampaigntriggers - Get list of campaigns triggers in the account
  • getclicklog - Returns a list of emalis,ip,date,revenue from click logs for the specified campaign.
  • getconversionlog - Returns a list of emalis,ip,date,revenue from conversion logs for the specified campaign.
  • getopenlog - Returns a list of emalis,ip,date,revenue from open logs for the specified campaign.
  • getrecurringcampaigns - Gets a list of recurring campaigns in the account.
  • pausecampaign - Pauses a campaign given a campaign id
  • resumecampaign - Resumes a campaign given a campaign id
  • retryerrorcampaign - Retries an errored campaign given a campaign id
- Domains and IP's
  • addcustomdomain - Adds a custom domain to be used to send on behalf.
  • addcustomfromaddress - Adds a custom from address given a custom domain id
  • adddomain - Adds a domain to a users account. Charges $17 for a .com domain unless it is a user controlled domain
  • addprofile - Adds a sending profile to the account given an IP ID and Domain ID.
  • deletecustomdomain - Deletes a custom domain used for sending on behalf. Also deletes any custom from addresses that have been setup using that domain
  • deletecustomfromaddress - Deletes a custom from address given the id.
  • deletedomain - This deletes a domain from the account.
  • deleteprofile - Deletes a sending profile given its id from the account
  • getcustomdomains - Gets list of custom verified domains to send on behalf of
  • getdomainblacklisthistory - Gets the domain blacklist history from the account if monitoring is enabled.
  • getdomains - Returns a list of domains from the account
  • getipblacklisthistory - Gets the ip blacklist history of ips. Entries are created by the monitoring system.
  • getips - Returns a list of ips inside the account.
  • getsenderscorehistory - Gets sender score history for ips
  • getsendingprofiles - Returns a list of sending profiles from the account.
  • getservers - Gets a list of servers from inside the account
  • updatedomainsettings - Updates the domains forwarding email and redirection url settings
  • verifycustomdomain - Runs the verification check again for the custom domain to see if the DNS records are added.
  • viewzonefile - View zone file of a domain given the domain id
- Single Email Send & SMTP - Other
  • addcanspamwhoisinfo - Adds a can spam/whois information to the account returns whoisid
  • addfolder - Add a folder to group lists, messages or images.
  • deletewhois - Deletes a whois/CAN SPAM footer entry given a whois id
  • editcanspamwhoisinfo - Edits a can spam/whois information in the account
  • getaccountinfo - Returns basic account information. Such as billing period, number of emails sent, package size, total ips, total domains.
  • getcanspamwhoisinfo - Gets a list of whois/can spam footer addresses from the account
  • getfeedbackloopreports - Gets a list of feedback reports
  • getimages - Gets a list of images from imagehosting inside the account.
  • getreplies - Gets a list of email replies
  • getreplyeml - Returns an EML file which can be opened in outlook given a reply id
  • uploadimage - Allows uploading of an image file to be imported into image hosting
  • viewreply - Views a specific reply email message.

Leads

  • addfolder - Adds a folder to leads section.
  • addlabel - Adds a new label to lead system for use with your leads.
  • addlead - Allows adding leads to the system by passing the lead data fields.
  • deletelabel - deletes a label given an id
  • deletelead - Delete a lead given the lead id
  • getfolders - Gets a list of lead folders
  • getlabels - Gets a list of labels
  • getleadslist - Gets a list of leads from the account.
  • labellead - Labels a lead given the lead id and the id of the label that needs to be assigned to the lead
  • markspam - Marks a lead as spam or not spam
  • moveleadtofolder - Moves a lead to a folder
  • viewlead - Views a complete lead with custom fields and notes given the lead id passed as the id column

Data Search

Support

List Verify

  • deletelist - Deletes a list given the list id
  • getaccountinfo - Gets list verify package information and total stats for all lists in the account.
  • getlists - Gets a list of all list verify jobs
  • getliststatus - Get list details
  • pauseverify - Pause a list verify job
  • resumeverify - Resumes a list verify job that was paused
  • uploadlistbyfile - Allows you to upload a list to the system either csv,txt file or a zip file containing txt or csv files.
  • uploadlistbyurl - Uploads a list to the account given a url to a list.
  • verifylist - Verify an unverified list given the list id from the list verify section
  • verifysingleemail - Allows you to verify an email address real time.
  • viewlist - Gets all the list records from a verified list.

SMS/Peer2Peer

  • addmobiletolist - Adds a mobile number to an existing mobile list. Also supports custom columns if they already exist in the list just pass the column name via the request.
  • buynumber - Buy a phone number for the account.
  • campaignverifytoken - Update the campaign verify token on the account
  • deletecampaigndlc - Delete a campaign from 10 DLC
  • deleteimage - Delete an image from image hosting.
  • deletelist - Delete a sms list
  • deletenumber - Delete a phone number by id
  • findnumbers - Find phone numbers to buy
  • getaccountinfo - Gets account information and stats at a glance such as total mms credits, sms credits, total replies, clicks, optouts
  • getcampaigns - Get list of campaigns
  • getclicklog - Get all clicks from a campaign
  • getdlcinformation - Gets the DLC information such as company information, campaign message information
  • getimages - Gets a list of images from imagehosting inside the account.
  • getlists - Gets a list of the lists in the account.
  • getreplies - Get all the replies to messages in the account
  • getunsubscribelist - Gets a list of mobile numbers that have unsubscribed
  • listnumbers - List phone numbers in the account
  • registernumberdlc - Register a phone number for 10 DLC. (Registration takes about 3 hours or so to push though all the mobile carriers)
  • sendsms - Send a single SMS/MMS message
  • statusdlc - Get Status of 10 DLC
  • submitcampaigndlc - Submit the information to 10 DLC for campaign registration
  • unsubscribemobile - Unsubscribe a single mobile number
  • updatedlc - Update 10 DLC information
  • uploadimage - Upload an image to image hosting

API