SlideShare a Scribd company logo
1
Use the Engagement tracking
and Metrics APIs
to bring insights to your business
Day 1 - Tuesday Nov 3, 2015
2
In this session
Make the most of the fine-grained information available on
your customer behavior from SparkPost & Momentum
We’ll look at several ways to do that:
•  Via the Reporting User Interface
•  Via the APIs
•  Via Webhooks event feeds in
near real-time
3
OTHER
CHANNELS
Recipients
ISPs
YAHOO
GMAIL
OUTLOOK
AOL
Message flow
Generate Message Deliver
Analyze
Multichannel
Powerful
Templating
Big-Data
Triggered
Marketing
Automated
Delivery
Optimization
Adaptive
Email
Network
React in
Real-Time
User
Friendly UI
Big Data
Feed
Sender
Real-Time
Insight
Transmission
API
One API
Transactional
Messages
97.8%
Average
Deliverability
Opens
Clicks
Bounces
OOB bounces
Feedback Loop
messages
Reporting UI
Metrics &
per-event API
Webhooks
4
Example newsletter
Target segments?
•  Interested in
cats, dogs, or both
What type of
customer?
•  Loyalty card holder
bronze/silver/gold
Campaign timing?
Black Friday
5
Name your campaigns
Use the “campaign_id” attribute – shows up in the Summary chart
{	
  
	
  	
  	
  	
  "options":	
  {	
  
	
  	
  	
  	
  "open_tracking"	
  :	
  true,	
  
	
  	
  	
  	
  "click_tracking"	
  :	
  true,	
  
	
  	
  	
  	
  "transactional"	
  :	
  false	
  
	
  	
  },	
  
	
  	
  "campaign_id":	
  "Bulk	
  Pet	
  Food	
  Offers",	
  
	
  	
  "content"	
  :	
  {	
  
	
  	
  	
  	
  	
  	
  "from":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "name"	
  :	
  "Awesome	
  
Company","email":"steve@thetucks.com"	
  
	
  	
  	
  	
  	
  	
  },	
  
	
  	
  	
  	
  	
  	
  "subject"	
  :	
  "Test	
  SparkPost	
  Transmission",	
  
	
  	
  	
  	
  	
  	
  "reply_to"	
  :	
  "Awesome	
  Company",	
  
	
  	
  	
  	
  	
  	
  "text"	
  :	
  "Hi	
  {{first_name}}rnTest	
  email!r
nCongratulations,rn{{signature}}",	
  
	
  	
  	
  	
  	
  	
  "html"	
  :	
  "<strong>Hi	
  {{first_name}},</strong><p>Test	
  
email	
  from	
  <a	
  href="http://messagesystems.com">Message	
  
Systems</a></p><p>Congratulations!</p>{{signature}}"	
  
	
  	
  },	
  
	
  	
  	
  "recipients":	
  [	
  
	
  	
  	
  	
  {	
  
	
  	
  	
  	
  	
  	
  "address":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  "name":	
  "Bob	
  Lumreeker",	
  
	
  	
  	
  	
  	
  	
  	
  	
  "email":	
  "bob.lumreeker@gmail.com"	
  
	
  	
  	
  	
  	
  	
  },	
  
	
  	
  	
  	
  	
  	
  "tags":	
  ["cats",	
  "dogs"],	
  
	
  	
  	
  	
  	
  	
  "metadata":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "MemberType":	
  "Gold"	
  
	
  	
  	
  	
  	
  	
  },	
  
	
  	
  	
  	
  	
  	
  "substitution_data":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "signature":"Your	
  friendly	
  Solution	
  Engineer",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "first_name":"Steve"	
  
	
  	
  	
  	
  	
  	
  }	
  
	
  	
  	
  	
  }	
  
	
  	
  ],	
  
	
  	
  "substitution_data":	
  {	
  
	
  	
  },	
  
	
  	
  "metadata":{	
  
	
  	
  	
  	
  	
  	
  "Sender":	
  "BlackFriday1",	
  
	
  	
  }	
  
}	
  
6
Name your content links
data-­‐msys-­‐linkname	
  custom attribute
https://www.sparkpost.com/api#/introduction/substitutions-reference/personalized-links
Max length of 63 characters (truncated if too long)
Link name incorporated into the click-tracked link, will be tracked in engagement events.
7
Named content links in Engagement report
https://support.sparkpost.com/customer/portal/articles/2035637?b_id=7411
8
Passing information through metadata and tags
Tags: A list of single-values
•  10 per recipient, max 100
system-wide
Metadata: key-value pairs
•  Recipient-level
•  Transmission-level
(tags + metadata) max 1000 bytes
https://www.sparkpost.com/api#/reference/recipient-lists
9
Pulling information using the API
•  Everything that’s visible
on the Reporting UI, you
can also get via the
Metrics API (and then
some) ...
•  The message_events
API endpoint gives
access to fine-grained
event information for up
to 10 days:
Campaign ID
Metadata
Tags
10
Demo time!
11
API endpoints are self-describing
https://api.sparkpost.com/api/v1/message-events/events/documentation
{	
  
	
  	
  "results":	
  [	
  
	
  	
  	
  	
  {	
  
	
  	
  	
  	
  	
  	
  "type":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  "description":	
  "Type	
  of	
  event	
  this	
  record	
  describes",	
  
	
  	
  	
  	
  	
  	
  	
  	
  "sampleValue":	
  "bounce"	
  
	
  	
  	
  	
  	
  	
  },	
  
	
  	
  	
  	
  	
  	
  "bounce_class":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  "description":	
  "Classification	
  code	
  for	
  a	
  given	
  message	
  (see	
  [Bounce	
  Classification	
  Codes](https://support.sparkpost.com/
customer/portal/articles/1929896))",	
  
	
  	
  	
  	
  	
  	
  	
  	
  "sampleValue":	
  "1"	
  
	
  	
  	
  	
  	
  	
  },	
  
	
  	
  	
  	
  	
  	
  "campaign_id":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  "description":	
  "Campaign	
  of	
  which	
  this	
  message	
  was	
  a	
  part",	
  
	
  	
  	
  	
  	
  	
  	
  	
  "sampleValue":	
  "Example	
  Campaign	
  Name"	
  
	
  	
  	
  	
  	
  	
  },	
  
	
  	
  	
  	
  	
  	
  "customer_id":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  "description":	
  "SparkPost-­‐customer	
  identifier	
  through	
  which	
  this	
  message	
  was	
  sent",	
  
	
  	
  	
  	
  	
  	
  	
  	
  "sampleValue":	
  "1"	
  
	
  	
  	
  	
  	
  	
  },	
  
	
  	
  	
  	
  	
  	
  "delv_method":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  "description":	
  "Protocol	
  by	
  which	
  SparkPost	
  delivered	
  this	
  message",	
  
	
  	
  	
  	
  	
  	
  	
  	
  "sampleValue":	
  "esmtp"	
  
	
  	
  	
  	
  	
  	
  },	
  
	
  	
  	
  	
  	
  	
  "device_token":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  "description":	
  "Token	
  of	
  the	
  device	
  /	
  application	
  targeted	
  by	
  this	
  PUSH	
  notification	
  message.	
  Applies	
  only	
  when	
  delv_method	
  is	
  
gcm	
  or	
  apn.",	
  
	
  	
  	
  	
  	
  	
  	
  	
  "sampleValue":	
  "45c19189783f867973f6e6a5cca60061ffe4fa77c547150563a1192fa9847f8a"	
  
	
  	
  	
  	
  	
  	
  },	
  
	
  	
  	
  	
  	
  	
  "error_code":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  "description":	
  "Error	
  code	
  by	
  which	
  the	
  remote	
  server	
  described	
  a	
  failed	
  delivery	
  attempt",	
  
	
  	
  	
  	
  	
  	
  	
  	
  "sampleValue":	
  "554"	
  
	
  	
  	
  	
  	
  	
  },	
  
	
  	
  	
  	
  	
  	
  "ip_address":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  "description":	
  "IP	
  address	
  of	
  the	
  host	
  to	
  which	
  SparkPost	
  delivered	
  this	
  message;	
  in	
  engagement	
  events,	
  the	
  IP	
  address	
  of	
  the	
  
host	
  where	
  the	
  HTTP	
  request	
  originated",	
  
	
  	
  	
  	
  	
  	
  	
  	
  "sampleValue":	
  "127.0.0.1"	
  
	
  	
  	
  	
  	
  	
  },	
  
	
  	
  	
  	
  	
  	
  "message_id":	
  {	
  
	
  	
  	
  	
  	
  	
  	
  	
  "description":	
  "SparkPost-­‐cluster-­‐wide	
  unique	
  identifier	
  for	
  this	
  message",	
  
	
  	
  	
  	
  	
  	
  	
  	
  "sampleValue":	
  "0e0d94b7-­‐9085-­‐4e3c-­‐ab30-­‐e3f2cd9c273e"	
  
	
  	
  	
  	
  	
  	
  },	
  
12
Webhooks
•  Creating webhooks
­  Via the UI ..
­  or through API calls ..
­  Can have many
•  Security
­  https transport option
•  Authentication
­  Choose between None,
Basic, or OAUTH2
13
Demo time!
14
Webhooks best practice
•  Timing
­  60 second batches, or batch-size reached
•  Your receiver code must http ACK
­  Once you’ve committed the data
­  Otherwise SparkPost will keep trying
•  Check the Batch ID in the http header
X-­‐MessageSystems-­‐Batch-­‐ID:	
  77c2b630-­‐d712-­‐11e4-­‐9642-­‐efc2723b99c1	
  
User-­‐Agent:	
  SparkPost	
  
host:	
  ec2-­‐54-­‐154-­‐175-­‐157.eu-­‐west-­‐1.compute.amazonaws.com	
  
accept:	
  application/json	
  
content-­‐type:	
  application/json	
  
content-­‐length:	
  9658	
  
Connection:	
  keep-­‐alive	
  
15
Webhook event types
bounce
delivery
injection
spam_complaint
out_of_band
policy_rejection
delay
click
open
generation_failure
generation_rejection
list_unsubscribe
link_unsubscribe
relay_injection
relay_rejection
relay_delivery
relay_tempfail
relay_permfail
https://api.sparkpost.com/api/v1/webhooks/events/documentation for full details !!
16
Focus on list hygiene
Processing the following event types is important for
keeping your lists clean:
•  Bounce
•  Out-of-Band bounce
•  Spam Complaint
•  List Unsubscribe
•  Link Unsubscribe
These events automatically add the recipient to the
suppression list inside SparkPost, as a safety net
measure.
17
Customer code in the public-domain
Financial Times have published their code for both Transmission API
usage and Webhooks handling
18
Summary
We’ve seen how fine-grained information can be carried by
•  The campaign_id attribute
•  Named links in templates and transmissions
•  Metadata and tags
We’ve used that information via:
•  The Reporting UI
•  Via the SparkPost APIs
•  Via Webhooks near real-time event feeds
19
Thank you
Steve Tuck
solution engineer
mobile +44 7917 064055
email steve.tuck@sparkpost.com

More Related Content

Similar to Insight User Conference Bootcamp - Use the Engagement Tracking and Metrics APIs to Bring Insights to Your Business

Event-Based API Patterns and Practices
Event-Based API Patterns and PracticesEvent-Based API Patterns and Practices
Event-Based API Patterns and Practices
LaunchAny
 
Analytics, Authentication and Data with AWS Amplify - MBL403 - re:Invent 2017
Analytics, Authentication and Data with  AWS Amplify - MBL403 - re:Invent 2017Analytics, Authentication and Data with  AWS Amplify - MBL403 - re:Invent 2017
Analytics, Authentication and Data with AWS Amplify - MBL403 - re:Invent 2017
Amazon Web Services
 
MongoDB World 2019: Securing Application Data from Day One
MongoDB World 2019: Securing Application Data from Day OneMongoDB World 2019: Securing Application Data from Day One
MongoDB World 2019: Securing Application Data from Day One
MongoDB
 
Large scale data capture and experimentation platform at Grab
Large scale data capture and experimentation platform at GrabLarge scale data capture and experimentation platform at Grab
Large scale data capture and experimentation platform at Grab
Roman
 
Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd
Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd
Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd
Sencha
 
Introduction to WSO2 Data Analytics Platform
Introduction to  WSO2 Data Analytics PlatformIntroduction to  WSO2 Data Analytics Platform
Introduction to WSO2 Data Analytics Platform
Srinath Perera
 
Securing Serverless Workloads with Cognito and API Gateway Part II - AWS Secu...
Securing Serverless Workloads with Cognito and API Gateway Part II - AWS Secu...Securing Serverless Workloads with Cognito and API Gateway Part II - AWS Secu...
Securing Serverless Workloads with Cognito and API Gateway Part II - AWS Secu...
Amazon Web Services
 
The top 10 security issues in web applications
The top 10 security issues in web applicationsThe top 10 security issues in web applications
The top 10 security issues in web applications
Devnology
 
F5 Automation and service discovery
F5 Automation and service discoveryF5 Automation and service discovery
F5 Automation and service discovery
Scott van Kalken
 
Swift distributed tracing method and tools v2
Swift distributed tracing method and tools v2Swift distributed tracing method and tools v2
Swift distributed tracing method and tools v2
zhang hua
 
Node.js and Parse
Node.js and ParseNode.js and Parse
Node.js and Parse
Nicholas McClay
 
BlueHat v17 || Where, how, and why is SSL traffic on mobile getting intercept...
BlueHat v17 || Where, how, and why is SSL traffic on mobile getting intercept...BlueHat v17 || Where, how, and why is SSL traffic on mobile getting intercept...
BlueHat v17 || Where, how, and why is SSL traffic on mobile getting intercept...
BlueHat Security Conference
 
Security enforcement of Java Microservices with Apiman & Keycloak
Security enforcement of Java Microservices with Apiman & KeycloakSecurity enforcement of Java Microservices with Apiman & Keycloak
Security enforcement of Java Microservices with Apiman & Keycloak
Charles Moulliard
 
When GenAI meets with Java with Quarkus and langchain4j
When GenAI meets with Java with Quarkus and langchain4jWhen GenAI meets with Java with Quarkus and langchain4j
When GenAI meets with Java with Quarkus and langchain4j
Jean-Francois James
 
Amazon Web Services Security
Amazon Web Services SecurityAmazon Web Services Security
Amazon Web Services Security
Jason Chan
 
Should I Make My Own API Gateway?
Should I Make My Own API Gateway?Should I Make My Own API Gateway?
Should I Make My Own API Gateway?
Nordic APIs
 
Look, ma! no clients!
Look, ma! no clients!Look, ma! no clients!
Look, ma! no clients!
Chris Chandler
 
SRV408 Deep Dive on AWS IoT
SRV408 Deep Dive on AWS IoTSRV408 Deep Dive on AWS IoT
SRV408 Deep Dive on AWS IoT
Amazon Web Services
 
MongoDB World 2019: How Braze uses the MongoDB Aggregation Pipeline for Lean,...
MongoDB World 2019: How Braze uses the MongoDB Aggregation Pipeline for Lean,...MongoDB World 2019: How Braze uses the MongoDB Aggregation Pipeline for Lean,...
MongoDB World 2019: How Braze uses the MongoDB Aggregation Pipeline for Lean,...
MongoDB
 

Similar to Insight User Conference Bootcamp - Use the Engagement Tracking and Metrics APIs to Bring Insights to Your Business (20)

Event-Based API Patterns and Practices
Event-Based API Patterns and PracticesEvent-Based API Patterns and Practices
Event-Based API Patterns and Practices
 
Analytics, Authentication and Data with AWS Amplify - MBL403 - re:Invent 2017
Analytics, Authentication and Data with  AWS Amplify - MBL403 - re:Invent 2017Analytics, Authentication and Data with  AWS Amplify - MBL403 - re:Invent 2017
Analytics, Authentication and Data with AWS Amplify - MBL403 - re:Invent 2017
 
MongoDB World 2019: Securing Application Data from Day One
MongoDB World 2019: Securing Application Data from Day OneMongoDB World 2019: Securing Application Data from Day One
MongoDB World 2019: Securing Application Data from Day One
 
Large scale data capture and experimentation platform at Grab
Large scale data capture and experimentation platform at GrabLarge scale data capture and experimentation platform at Grab
Large scale data capture and experimentation platform at Grab
 
Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd
Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd
Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd
 
Introduction to WSO2 Data Analytics Platform
Introduction to  WSO2 Data Analytics PlatformIntroduction to  WSO2 Data Analytics Platform
Introduction to WSO2 Data Analytics Platform
 
Securing Serverless Workloads with Cognito and API Gateway Part II - AWS Secu...
Securing Serverless Workloads with Cognito and API Gateway Part II - AWS Secu...Securing Serverless Workloads with Cognito and API Gateway Part II - AWS Secu...
Securing Serverless Workloads with Cognito and API Gateway Part II - AWS Secu...
 
The top 10 security issues in web applications
The top 10 security issues in web applicationsThe top 10 security issues in web applications
The top 10 security issues in web applications
 
F5 Automation and service discovery
F5 Automation and service discoveryF5 Automation and service discovery
F5 Automation and service discovery
 
Swift distributed tracing method and tools v2
Swift distributed tracing method and tools v2Swift distributed tracing method and tools v2
Swift distributed tracing method and tools v2
 
Node.js and Parse
Node.js and ParseNode.js and Parse
Node.js and Parse
 
BlueHat v17 || Where, how, and why is SSL traffic on mobile getting intercept...
BlueHat v17 || Where, how, and why is SSL traffic on mobile getting intercept...BlueHat v17 || Where, how, and why is SSL traffic on mobile getting intercept...
BlueHat v17 || Where, how, and why is SSL traffic on mobile getting intercept...
 
Security enforcement of Java Microservices with Apiman & Keycloak
Security enforcement of Java Microservices with Apiman & KeycloakSecurity enforcement of Java Microservices with Apiman & Keycloak
Security enforcement of Java Microservices with Apiman & Keycloak
 
When GenAI meets with Java with Quarkus and langchain4j
When GenAI meets with Java with Quarkus and langchain4jWhen GenAI meets with Java with Quarkus and langchain4j
When GenAI meets with Java with Quarkus and langchain4j
 
Amazon Web Services Security
Amazon Web Services SecurityAmazon Web Services Security
Amazon Web Services Security
 
testupload
testuploadtestupload
testupload
 
Should I Make My Own API Gateway?
Should I Make My Own API Gateway?Should I Make My Own API Gateway?
Should I Make My Own API Gateway?
 
Look, ma! no clients!
Look, ma! no clients!Look, ma! no clients!
Look, ma! no clients!
 
SRV408 Deep Dive on AWS IoT
SRV408 Deep Dive on AWS IoTSRV408 Deep Dive on AWS IoT
SRV408 Deep Dive on AWS IoT
 
MongoDB World 2019: How Braze uses the MongoDB Aggregation Pipeline for Lean,...
MongoDB World 2019: How Braze uses the MongoDB Aggregation Pipeline for Lean,...MongoDB World 2019: How Braze uses the MongoDB Aggregation Pipeline for Lean,...
MongoDB World 2019: How Braze uses the MongoDB Aggregation Pipeline for Lean,...
 

More from SparkPost

Unlocking Email’s Hidden Opportunities to Create a Competitive Advantage
Unlocking Email’s Hidden Opportunities  to Create a Competitive AdvantageUnlocking Email’s Hidden Opportunities  to Create a Competitive Advantage
Unlocking Email’s Hidden Opportunities to Create a Competitive Advantage
SparkPost
 
SparkPost Celebrates International Women's Day 2020
SparkPost Celebrates International Women's Day 2020SparkPost Celebrates International Women's Day 2020
SparkPost Celebrates International Women's Day 2020
SparkPost
 
PMTA Success Story - J2 Martech
PMTA Success Story - J2 MartechPMTA Success Story - J2 Martech
PMTA Success Story - J2 Martech
SparkPost
 
How Email and Your Culture Can Help Change the World
How Email and Your Culture Can Help Change the WorldHow Email and Your Culture Can Help Change the World
How Email and Your Culture Can Help Change the World
SparkPost
 
Brave New World: Everything you Wanted to Know About Deliverability Updates
Brave New World: Everything you Wanted to Know About Deliverability UpdatesBrave New World: Everything you Wanted to Know About Deliverability Updates
Brave New World: Everything you Wanted to Know About Deliverability Updates
SparkPost
 
PowerMTA Integration Experiences and Solutions
PowerMTA Integration Experiences and SolutionsPowerMTA Integration Experiences and Solutions
PowerMTA Integration Experiences and Solutions
SparkPost
 
Get Ahead of the Game! Our Journey to Rebranding and Success
Get Ahead of the Game! Our Journey to Rebranding and SuccessGet Ahead of the Game! Our Journey to Rebranding and Success
Get Ahead of the Game! Our Journey to Rebranding and Success
SparkPost
 
Beyond the Norm: Email and the Innovation Ethos
Beyond the Norm: Email and the Innovation EthosBeyond the Norm: Email and the Innovation Ethos
Beyond the Norm: Email and the Innovation Ethos
SparkPost
 
New features in PMTA 5.0
New features in PMTA 5.0New features in PMTA 5.0
New features in PMTA 5.0
SparkPost
 
Product Roadmap 2019 PMTA Summit
Product Roadmap 2019 PMTA SummitProduct Roadmap 2019 PMTA Summit
Product Roadmap 2019 PMTA Summit
SparkPost
 
At the Wheel: An Evolution Story for Email Strategists (and Cyclists)
At the Wheel: An Evolution Story for Email Strategists (and Cyclists)At the Wheel: An Evolution Story for Email Strategists (and Cyclists)
At the Wheel: An Evolution Story for Email Strategists (and Cyclists)
SparkPost
 
Webinar: Retail Banking - Optimizing the Customer Deposit Lifecycle
Webinar: Retail Banking - Optimizing the Customer Deposit LifecycleWebinar: Retail Banking - Optimizing the Customer Deposit Lifecycle
Webinar: Retail Banking - Optimizing the Customer Deposit Lifecycle
SparkPost
 
SparkPost Celebrates Pride
SparkPost Celebrates PrideSparkPost Celebrates Pride
SparkPost Celebrates Pride
SparkPost
 
How LendingTree is Growing Rapidly with Email and Customer Engagement
How LendingTree is Growing Rapidly with Email and Customer Engagement How LendingTree is Growing Rapidly with Email and Customer Engagement
How LendingTree is Growing Rapidly with Email and Customer Engagement
SparkPost
 
On-Premises and Cloud - Putting the Pieces Together
On-Premises and Cloud - Putting the Pieces TogetherOn-Premises and Cloud - Putting the Pieces Together
On-Premises and Cloud - Putting the Pieces Together
SparkPost
 
Trends and Insights for Interactive Email & Google AMP for Email
Trends and Insights for Interactive Email & Google AMP for EmailTrends and Insights for Interactive Email & Google AMP for Email
Trends and Insights for Interactive Email & Google AMP for Email
SparkPost
 
Scaling Your Product with Key Growth Surfaces
Scaling Your Product with Key Growth SurfacesScaling Your Product with Key Growth Surfaces
Scaling Your Product with Key Growth Surfaces
SparkPost
 
Segmenting Your Way to Smarter Sending
Segmenting Your Way to Smarter SendingSegmenting Your Way to Smarter Sending
Segmenting Your Way to Smarter Sending
SparkPost
 
State of Transactional Email 2018 (Benchmark report)
State of Transactional Email 2018 (Benchmark report)State of Transactional Email 2018 (Benchmark report)
State of Transactional Email 2018 (Benchmark report)
SparkPost
 
GDPR Affects Email Worldwide
GDPR Affects Email WorldwideGDPR Affects Email Worldwide
GDPR Affects Email Worldwide
SparkPost
 

More from SparkPost (20)

Unlocking Email’s Hidden Opportunities to Create a Competitive Advantage
Unlocking Email’s Hidden Opportunities  to Create a Competitive AdvantageUnlocking Email’s Hidden Opportunities  to Create a Competitive Advantage
Unlocking Email’s Hidden Opportunities to Create a Competitive Advantage
 
SparkPost Celebrates International Women's Day 2020
SparkPost Celebrates International Women's Day 2020SparkPost Celebrates International Women's Day 2020
SparkPost Celebrates International Women's Day 2020
 
PMTA Success Story - J2 Martech
PMTA Success Story - J2 MartechPMTA Success Story - J2 Martech
PMTA Success Story - J2 Martech
 
How Email and Your Culture Can Help Change the World
How Email and Your Culture Can Help Change the WorldHow Email and Your Culture Can Help Change the World
How Email and Your Culture Can Help Change the World
 
Brave New World: Everything you Wanted to Know About Deliverability Updates
Brave New World: Everything you Wanted to Know About Deliverability UpdatesBrave New World: Everything you Wanted to Know About Deliverability Updates
Brave New World: Everything you Wanted to Know About Deliverability Updates
 
PowerMTA Integration Experiences and Solutions
PowerMTA Integration Experiences and SolutionsPowerMTA Integration Experiences and Solutions
PowerMTA Integration Experiences and Solutions
 
Get Ahead of the Game! Our Journey to Rebranding and Success
Get Ahead of the Game! Our Journey to Rebranding and SuccessGet Ahead of the Game! Our Journey to Rebranding and Success
Get Ahead of the Game! Our Journey to Rebranding and Success
 
Beyond the Norm: Email and the Innovation Ethos
Beyond the Norm: Email and the Innovation EthosBeyond the Norm: Email and the Innovation Ethos
Beyond the Norm: Email and the Innovation Ethos
 
New features in PMTA 5.0
New features in PMTA 5.0New features in PMTA 5.0
New features in PMTA 5.0
 
Product Roadmap 2019 PMTA Summit
Product Roadmap 2019 PMTA SummitProduct Roadmap 2019 PMTA Summit
Product Roadmap 2019 PMTA Summit
 
At the Wheel: An Evolution Story for Email Strategists (and Cyclists)
At the Wheel: An Evolution Story for Email Strategists (and Cyclists)At the Wheel: An Evolution Story for Email Strategists (and Cyclists)
At the Wheel: An Evolution Story for Email Strategists (and Cyclists)
 
Webinar: Retail Banking - Optimizing the Customer Deposit Lifecycle
Webinar: Retail Banking - Optimizing the Customer Deposit LifecycleWebinar: Retail Banking - Optimizing the Customer Deposit Lifecycle
Webinar: Retail Banking - Optimizing the Customer Deposit Lifecycle
 
SparkPost Celebrates Pride
SparkPost Celebrates PrideSparkPost Celebrates Pride
SparkPost Celebrates Pride
 
How LendingTree is Growing Rapidly with Email and Customer Engagement
How LendingTree is Growing Rapidly with Email and Customer Engagement How LendingTree is Growing Rapidly with Email and Customer Engagement
How LendingTree is Growing Rapidly with Email and Customer Engagement
 
On-Premises and Cloud - Putting the Pieces Together
On-Premises and Cloud - Putting the Pieces TogetherOn-Premises and Cloud - Putting the Pieces Together
On-Premises and Cloud - Putting the Pieces Together
 
Trends and Insights for Interactive Email & Google AMP for Email
Trends and Insights for Interactive Email & Google AMP for EmailTrends and Insights for Interactive Email & Google AMP for Email
Trends and Insights for Interactive Email & Google AMP for Email
 
Scaling Your Product with Key Growth Surfaces
Scaling Your Product with Key Growth SurfacesScaling Your Product with Key Growth Surfaces
Scaling Your Product with Key Growth Surfaces
 
Segmenting Your Way to Smarter Sending
Segmenting Your Way to Smarter SendingSegmenting Your Way to Smarter Sending
Segmenting Your Way to Smarter Sending
 
State of Transactional Email 2018 (Benchmark report)
State of Transactional Email 2018 (Benchmark report)State of Transactional Email 2018 (Benchmark report)
State of Transactional Email 2018 (Benchmark report)
 
GDPR Affects Email Worldwide
GDPR Affects Email WorldwideGDPR Affects Email Worldwide
GDPR Affects Email Worldwide
 

Recently uploaded

Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Shahin Sheidaei
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
Globus
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi ArabiaTop 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Yara Milbes
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
wottaspaceseo
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
XfilesPro
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
abdulrafaychaudhry
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
takuyayamamoto1800
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
Roshan Dwivedi
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 

Recently uploaded (20)

Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi ArabiaTop 7 Unique WhatsApp API Benefits | Saudi Arabia
Top 7 Unique WhatsApp API Benefits | Saudi Arabia
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)Introduction to Pygame (Lecture 7 Python Game Development)
Introduction to Pygame (Lecture 7 Python Game Development)
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 

Insight User Conference Bootcamp - Use the Engagement Tracking and Metrics APIs to Bring Insights to Your Business

  • 1. 1 Use the Engagement tracking and Metrics APIs to bring insights to your business Day 1 - Tuesday Nov 3, 2015
  • 2. 2 In this session Make the most of the fine-grained information available on your customer behavior from SparkPost & Momentum We’ll look at several ways to do that: •  Via the Reporting User Interface •  Via the APIs •  Via Webhooks event feeds in near real-time
  • 3. 3 OTHER CHANNELS Recipients ISPs YAHOO GMAIL OUTLOOK AOL Message flow Generate Message Deliver Analyze Multichannel Powerful Templating Big-Data Triggered Marketing Automated Delivery Optimization Adaptive Email Network React in Real-Time User Friendly UI Big Data Feed Sender Real-Time Insight Transmission API One API Transactional Messages 97.8% Average Deliverability Opens Clicks Bounces OOB bounces Feedback Loop messages Reporting UI Metrics & per-event API Webhooks
  • 4. 4 Example newsletter Target segments? •  Interested in cats, dogs, or both What type of customer? •  Loyalty card holder bronze/silver/gold Campaign timing? Black Friday
  • 5. 5 Name your campaigns Use the “campaign_id” attribute – shows up in the Summary chart {          "options":  {          "open_tracking"  :  true,          "click_tracking"  :  true,          "transactional"  :  false      },      "campaign_id":  "Bulk  Pet  Food  Offers",      "content"  :  {              "from":  {                      "name"  :  "Awesome   Company","email":"steve@thetucks.com"              },              "subject"  :  "Test  SparkPost  Transmission",              "reply_to"  :  "Awesome  Company",              "text"  :  "Hi  {{first_name}}rnTest  email!r nCongratulations,rn{{signature}}",              "html"  :  "<strong>Hi  {{first_name}},</strong><p>Test   email  from  <a  href="http://messagesystems.com">Message   Systems</a></p><p>Congratulations!</p>{{signature}}"      },        "recipients":  [          {              "address":  {                  "name":  "Bob  Lumreeker",                  "email":  "bob.lumreeker@gmail.com"              },              "tags":  ["cats",  "dogs"],              "metadata":  {                              "MemberType":  "Gold"              },              "substitution_data":  {                      "signature":"Your  friendly  Solution  Engineer",                      "first_name":"Steve"              }          }      ],      "substitution_data":  {      },      "metadata":{              "Sender":  "BlackFriday1",      }   }  
  • 6. 6 Name your content links data-­‐msys-­‐linkname  custom attribute https://www.sparkpost.com/api#/introduction/substitutions-reference/personalized-links Max length of 63 characters (truncated if too long) Link name incorporated into the click-tracked link, will be tracked in engagement events.
  • 7. 7 Named content links in Engagement report https://support.sparkpost.com/customer/portal/articles/2035637?b_id=7411
  • 8. 8 Passing information through metadata and tags Tags: A list of single-values •  10 per recipient, max 100 system-wide Metadata: key-value pairs •  Recipient-level •  Transmission-level (tags + metadata) max 1000 bytes https://www.sparkpost.com/api#/reference/recipient-lists
  • 9. 9 Pulling information using the API •  Everything that’s visible on the Reporting UI, you can also get via the Metrics API (and then some) ... •  The message_events API endpoint gives access to fine-grained event information for up to 10 days: Campaign ID Metadata Tags
  • 11. 11 API endpoints are self-describing https://api.sparkpost.com/api/v1/message-events/events/documentation {      "results":  [          {              "type":  {                  "description":  "Type  of  event  this  record  describes",                  "sampleValue":  "bounce"              },              "bounce_class":  {                  "description":  "Classification  code  for  a  given  message  (see  [Bounce  Classification  Codes](https://support.sparkpost.com/ customer/portal/articles/1929896))",                  "sampleValue":  "1"              },              "campaign_id":  {                  "description":  "Campaign  of  which  this  message  was  a  part",                  "sampleValue":  "Example  Campaign  Name"              },              "customer_id":  {                  "description":  "SparkPost-­‐customer  identifier  through  which  this  message  was  sent",                  "sampleValue":  "1"              },              "delv_method":  {                  "description":  "Protocol  by  which  SparkPost  delivered  this  message",                  "sampleValue":  "esmtp"              },              "device_token":  {                  "description":  "Token  of  the  device  /  application  targeted  by  this  PUSH  notification  message.  Applies  only  when  delv_method  is   gcm  or  apn.",                  "sampleValue":  "45c19189783f867973f6e6a5cca60061ffe4fa77c547150563a1192fa9847f8a"              },              "error_code":  {                  "description":  "Error  code  by  which  the  remote  server  described  a  failed  delivery  attempt",                  "sampleValue":  "554"              },              "ip_address":  {                  "description":  "IP  address  of  the  host  to  which  SparkPost  delivered  this  message;  in  engagement  events,  the  IP  address  of  the   host  where  the  HTTP  request  originated",                  "sampleValue":  "127.0.0.1"              },              "message_id":  {                  "description":  "SparkPost-­‐cluster-­‐wide  unique  identifier  for  this  message",                  "sampleValue":  "0e0d94b7-­‐9085-­‐4e3c-­‐ab30-­‐e3f2cd9c273e"              },  
  • 12. 12 Webhooks •  Creating webhooks ­  Via the UI .. ­  or through API calls .. ­  Can have many •  Security ­  https transport option •  Authentication ­  Choose between None, Basic, or OAUTH2
  • 14. 14 Webhooks best practice •  Timing ­  60 second batches, or batch-size reached •  Your receiver code must http ACK ­  Once you’ve committed the data ­  Otherwise SparkPost will keep trying •  Check the Batch ID in the http header X-­‐MessageSystems-­‐Batch-­‐ID:  77c2b630-­‐d712-­‐11e4-­‐9642-­‐efc2723b99c1   User-­‐Agent:  SparkPost   host:  ec2-­‐54-­‐154-­‐175-­‐157.eu-­‐west-­‐1.compute.amazonaws.com   accept:  application/json   content-­‐type:  application/json   content-­‐length:  9658   Connection:  keep-­‐alive  
  • 16. 16 Focus on list hygiene Processing the following event types is important for keeping your lists clean: •  Bounce •  Out-of-Band bounce •  Spam Complaint •  List Unsubscribe •  Link Unsubscribe These events automatically add the recipient to the suppression list inside SparkPost, as a safety net measure.
  • 17. 17 Customer code in the public-domain Financial Times have published their code for both Transmission API usage and Webhooks handling
  • 18. 18 Summary We’ve seen how fine-grained information can be carried by •  The campaign_id attribute •  Named links in templates and transmissions •  Metadata and tags We’ve used that information via: •  The Reporting UI •  Via the SparkPost APIs •  Via Webhooks near real-time event feeds
  • 19. 19 Thank you Steve Tuck solution engineer mobile +44 7917 064055 email steve.tuck@sparkpost.com