Dashboard

Using Pepipost webhooks you can get data as needed whenever an email event is triggered such as email delivery or link clicked on email.

Get actionable insights on your email program in real-time using Webhooks

You want to closely track and monitor your email success. Isn’t it great that you no longer need to fetch data that you need and instead can receive it as instantly as when it occurs? Get instant answers to your most pressing questions on email delivery and engagement such as -

Dashboard

Was the email successfully delivered to the Inbox or did email delivery fail?

Dashboard

Did the email bounce? If so, was it a soft bounce or a hard bounce?

Dashboard

Did the recipient open his / her email?

Dashboard

Did the recipient click within the email?

Dashboard

Did the recipient unsubscribe?

Webhooks for email delivery, bounce, opens and more

You can create and configure email delivery webhooks to receive email delivery notifications or build recipient engagement webhooks to track opens, clicks or other engagement metrics. By setting up webhooks in Pepipost, you leave no stone unturned and have all your answers.

The Delivery webhook is a way for Pepipost to notify your application that an email was successfully delivered to the receiving server.

[
    {
        "TRANSID":"14652378013752608",
        "RCPTID":"0",
        "RESPONSE":"smtp;250 2.0.0 OK 1465276276 mo3si31128106wjb.147 - gsmtp",
        "EMAIL":"test@gmail.com",
        "TIMESTAMP":"1465276276",
        "CLIENTID":"10001",
        "FROMADDRESS":"info@mydomain.com",
        "EVENT":"sent",
        "MSIZE":"1216",
        "USERAGENT":"1216"
    }
]

Enabling Bounce Webhooks will give you live stream of bounces in an easy-to-understand JSON format. An example of the full JSON that would be POSTed to your webhook URL is:

[
    {
        "TRANSID":"14652378014624064",
        "RCPTID":"0",
        "RESPONSE":"smtp;550 5.1.1 The email account that you tried to reach does not exist. Please try double-checking
        the for typo or unnecessary spaces. Learn more at https://support.google.com/mail/answer/6596 z130si23626456iod.1",
        "BOUNCE_TYPE":"HARDBOUNCE",
        "EMAIL":"jdshfjkjsdjsjdjsjdjsj@gmail.com",
        "TIMESTAMP":"1465277622",
        "BOUNCE_REASONID":"77",
        "CLIENTID":"10001",
        "BOUNCE_REASON":"email account that you tried to reach does not exist",
        "FORMADDRESS":"info@mydomain.com",
        "EVENT":"bounced",
        "MSIZE":"10",
        "USERAGENT":"1"
    }
]

An open webhook instantly notifies your application of email opens by POSTing the data in a JSON document to the webhook URL that you specify.

[
    {
        "TRANSID":"14652378013752608",
        "RCPTID":"0",
        "RESPONSE":"",
        "EMAIL":"test@gmail.com",
        "TIMESTAMP":"1465276362",
        "CLIENTID":"10001",
        "FROMADDRESS":"info@mydomain.com",
        "EVENT":"opened",
        "MSIZE":"1216",
        "USERAGENT":"Mozilla/5.0 (Windows NT 5.1; rv:11.0) Gecko Firefox/11.0 (via ggpht.com GoogleImageProxy)",
        "IPADDRESS":"64.233.173.70"
    }
]

Simplify webhook setup with Pepipost

Implementing webhooks with Pepipost is easy and takes only a few seconds.

One

Head to Settings.

Two

Click on webhooks.

Three

Implement callback url.

Dashboard

Ready to use libraries to deploy webhooks faster

We have created ready to use API libraries so that you can deploy webhooks faster at your end. Our library has easy to integrate SDKs in different programming languages and frameworks.

PHP
PYTHON
JS
PHP CODE
from threading import Thread
from SocketServer import ThreadingMixIn
from BaseHTTPServer import HTTPServer, BaseHTTPRequestHandler
from urlparse import urlparse
import urllib
import datetime,traceback,sys
import imp
from Queue import Queue
import psLogging as log

my_logger = log.init_logger('/tmp/masterServer.log','Master Server')

thread  = 40
q = Queue()
putCounter=0
var http = require('http');
fs = require('fs');
http.createServer(function(req,res){
var path = '/tmp/pepipost_webhooks.log';
    console.dir(req.param);

        if(req.method == 'POST'){
            console.log("POST");
            var body = '';
            req.on('data',function(data){
            fs.appendFile(path, data, function(error){
                if(error){
            console.error("write error: " + error.message);
        } else{
          console.log("Successful Write to " + path);   
        }
    })
    })
    }
})

Join the thousands of global companies that trust Pepipost

Good email service provider for transactional emails. The best prices and very easy to get started. Statistics and reporting are also very powerful and helpful.

George Krash (Pigogo.gr)

on Trust Pilot

Good features, low cost, very helpful and fast support. I am able to improve my website contact form deliverability and monitor the traffic if needed.

Chris A.

on G2Crowd

Pepipost is low cost and fairly easy to implement. It has the ability to send invoices reliably. The bounce rate so far has been pretty low.

Darren C.

on Capterra

Read more about Webhooks

What are Webhooks?

Webhooks are pretty amazing, it helps in keeping subscriber’s activity data in sync with your system. Read More >

What are the different Webhooks format?

Supported Events: We currently support Webhook on a number of events, which are: Read More >

How to test and debug Webhooks?

It’s always good to test Webhooks in an external or temporary environment before making changes in production. Read More >