API Call: blast

Overview

Schedule a mass mail blast (see "Campaign overview"), or check on the status of a previously scheduled blast. See Examples.

Specification

Base URL

https://api.sailthru.com/blast

GET mode

Get data on a single blast

Parameter Description Example
blast_id blast ID 34463

= Optional Parameters =

Parameter Description Example
vars Pass 1 to return vars that have been set on this blast 1
Return Value

Will return a data structure including some or all of the following information:

Field Description Example
blast_id Blast Id 34463
name Name of the blast Monday Campaign
list List Name Monday-List
from_name From Name Value Sailthru
from_email From Email Value support@sailthru.com
reply_to Reply To Email Value support@sailthru.com
subject Campaign Email Subject Monday Campaign
content_html HTML Content of the campaign <p>We wanted to bring you a Valentine's Day greetings… etc…</p>
content_text Text Content of the campaign We wanted to bring you a Valentine's Day greetings… etc…
is_google_analytics Google Analytics Enabled / Disabled true or false
is_link_tracking Link Tracking Enabled / Disabled true or false
report_email When the blast is completed, report will be emailed to given address praj@sailthru.com or null if not given
start_time An RFC 2822 formatted date string corresponding to the time for which delivery was started Thu, 06 Jan 2011 14:50:55 -0500
end_time An RFC 2822 formatted date string corresponding to the time for which delivery was completed Thu, 06 Jan 2011 16:20:55 -0500
status Status of a blast sent or sending or scheduled
hardbounce_total Hard Bounce total 10
softbounce_total Soft Bounce total 17
delivered_total Delivered total 2418
open_total How many users opened the campaign 2245
click_total How many users actually clicked the campaign 2130
optout_total Total Optouts 21
spam_total Marked as spam 5
vars Vars set on the blast, only returned if the vars parameter is used

Note: Sailthru highly encourages the use of the Stats API Call to retrieve Blast-specific statistics.

Get blasts meta-data

Get blasts status
Parameter Description Example
status Status of a blast See below table
status description
created No schedule_time
scheduled Has schedule_time but no start_time
sending Has start_time but no stop_time
sent Has a stop_time

Note: Sent blasts will be returned in reverse chronological order. Sending and scheduled blasts will be returned in chronological order.

Conditionally Required Parameters

Only required if status=sent

start_date Starting date for retrieving blast metadata Jan 11 2011
end_date Ending date for retrieving blast metadata Jan 17 2011
Optional Parameters
Parameter Description Example
list Name of a list Welcome-List

Will return an array of a data structure listed below, as well as some or all of the following:

Field Description Example
blast_id Blast Id 34463
name Name of the blast Monday Campaign
list List Name Monday-List
email_count The number of email addresses the blast was meant to be sent 21210
sent_count The number of email addresses the blast was actually sent to 21210
schedule_time An RFC 2822 formatted date string corresponding to the time for which delivery was scheduled Thu, 06 Jan 2011 14:50:55 -0500
start_time An RFC 2822 formatted date string corresponding to the time for which delivery was started Thu, 06 Jan 2011 14:50:58 -0500

POST mode

Create, update, cancel and/or schedule a blast.
Conditionally Required Parameters

These parameters are all only required if you pass a schedule_time value to schedule the blast.

Note: If you use any of the optional copy_blast, copy_template, or eval_template parameters, you do not need to pass the parameters below if the blast/template you are copying already has them set. For example, if you are copying from a template that has content_html, you do not need to pass content_html unless you wish to override.

Parameter Description Example
name the name to give to this new blast blast-test-1
list the mailing list name to send to my-list-name
schedule_time when the blast should send. Dates in the past will be scheduled for immediate delivery. Any English textual datetime format known to PHP's strtotime function is acceptable, such as 2009-03-18 23:57:22 UTC, now (immediate delivery), +3 hours (3 hours from now), or February 14, 9:30 EST. Be sure to specify a timezone if you use an exact time. 10/10/2010 3pm EST
from_name the name appearing in the "From" of the email Daily Newsletter
from_email The email address to use as the "from" – choose from any of your verified emails newsletters@example.com
subject the subject line of the email My Subject Line
content_html the HTML-format version of the email <p>Content goes here</p>
content_text the text-format version of the email Content goes here
Optional parameters
Parameter Description Example
blast_id used to make updates to a previous unsent blast rather than create a new one 639
copy_blast the blast_id of a previous blast that you wish to copy the fields of 525
copy_template the name of a template that you wish to copy the fields of my-template
eval_template the name of a template that you wish to evaluate and turn into HTML that can be edited before sending my-template
replyto The Reply-To header to use in the email feedback@example.com
report_email an email address to receive a short report when the blast has finished sending emailteam@example.com
is_link_tracking 1 if you want to use link-tracking rewrites in the email, 0 if not (default 0) 1
is_google_analytics 1 if you want to use automatic Google Analytics tracking, 0 if not (default 0) 1
is_public 1 if you want to have this mass mail be publicly viewable by anyone, 0 if not (default 0) 1
suppress_list the name of a suppression list to use. Emails in the suppression list will not be emailed my-suppression-list
test_vars A JSON data structure of variables to test with using the GUI interface {"testvar":"value"}
email_hour_range The number of hours to distribute the delivery out to, using Horizon Send Time 8
abtest 1 if you want to create a new A/B test. You should also pass a blast_id and a test_percent. A new A/B test for that blast_id will be created, populating the new test with all the rest of your POSTed data. 1
test_percent the percent of emails in the list that this test should apply to (just pass an integer number; the % sign is not necessary) 15
data_feed_url the URL of a data feed to pull prior to sending the blast http://example.com/datafeed.json
vars Key/value hash of variables to directly pass into the blast without using a data feed {"testvar":"value","testvar1":"value1"}
setup The Setup section, a block of Zephyr code that will run prior to any other evaluation {content = horizon_select(content, 5)}
ad_plan the name of an adFlight Ad Plan to use with this blast Los Angeles Daily Plan
autoconvert_text Generate the content_text by doing a simple conversion on content_html 1
test_email Send a test blast to the given email address example@example.com
link_params Append link parameters, such as UTM tags, to all links in the blast utm_custom=yes
In order to cancel the blast, just make a POST request with schedule_time with null or empty string

Examples

Example: Send a blast due to go out at 9:30 AM Eastern time on Valentine's Day
name=2010 Valentine Mail
list=main_list
schedule_time=2010-02-14 9:30:00 EST
from_name=Example.com
from_email=noreply@sailthru.com
replyto=V-Day Folks
subject=Celebrate Valentine's Day
content_html=<p>We wanted to bring you a Valentine's Day greetings... etc...</p>
content_text=We wanted to bring you a Valentine's Day greetings... etc...
is_google_analytics=1

PHP Client equivalent

$sailthru_client->scheduleBlast(
    '2010 Valentine Mail',
    'main_list',
    '2010-02-14 9:30:00 EST',
    'Example.com',
    'noreply@sailthru.com',
    "Celebrate Valentine's Day",
    "<p>We wanted to bring you a Valentine's Day greetings... etc...</p>",
    "We wanted to bring you a Valentine's Day greetings... etc...",
    array(  'replyto' => 'V-Day Folks <vday@example.com>',
            'is_google_analytics' => 1));
Example: Schedule a blast to generate immediately from a template data feed, then actually send in an hour
eval_template=template-name
list=list-name
data_feed_url=http://url/to/the/datafeed
schedule_time=+1 hour
Example: Schedule a blast to send in an hour, using a template but pulling the data feed and evaluating at send time
copy_template=template-name
list=list-name
data_feed_url=http://url/to/the/datafeed
schedule_time=+1 hour

DELETE mode

Required Parameters
Parameter Description Example
blast_id Blast Id 737373
Return Value
Field Example
blast_id 737373
ok true or 1
 
/var/www/docs.sailthru.com/htdocs/data/pages/api/blast.txt · Last modified: 2012/02/16 13:40 by David Studinski
 
Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki