This guide will walk you through the available endpoints, how to authenticate, and how to integrate Sendr to generate personalized pages and GIFs.
π Base URL
https://api.sendr.io
All API endpoints are appended to this base URL.
π Authentication
All API requests must include your Sendr API Key in the headers:
X-API-Key: YOUR_API_KEY
Accept: application/json
You can generate your API Key in the app.sendr.io > Settings
π Sendr Endpoints
1. List Page Templates
Retrieve all your page templates.
Endpoint:
GET /api/v1/page-template/list
Headers:
X-API-Key: YOUR_API_KEY
Accept: application/json
Sample Response:
[
{
"id": "template_123",
"name": "Welcome Page",
"thumbnailUrl": "https://example.com/thumb.jpg"
"pageViews": 40,
"videoPlays": 0,
"uniqueViews": 17,
}
]
2. Get Page Template Variables
Fetch the variables defined in a page template. These variables are used when generating personalized pages.
Endpoint:
GET /api/v1/page-template/{{Page_Template_ID}}/variables
Replace {{Page_Template_ID}}
with your page template ID that can be found in the URL of your page template in Sendr. Example: https://app.sendr.io/templates/296
Headers:
X-API-Key: YOUR_API_KEY
Accept: application/json
Sample Response:
[
{
"tag": "firstName",
"label": "First Name"
},
{
"tag": "companyName",
"label": "Company Name"
}
]
3. Generate Personalized Page
Create a dynamic, personalized page using a template and user-specific variables. This request is asynchronous β youβll receive the completed page via a webhook event.
Endpoint:
POST /api/v1/enrichment/personalized-page
Headers:
X-API-Key: YOUR_API_KEY
Content-Type: application/json
Accept: application/json
Body:
{
"templateId": "template_123",
"websiteToScreenshotUrl": "https://yourwebsite.com",
"variablesValues": {
"firstName": "John",
"companyName": "Sendr Inc."
},
"attributes": {
"userId": "456",
"customNote": "Follow-up email"
}
}
Response:
{
"jobId": "job_001"
}
4. Webhook: Page Generation Completed
Youβll receive a POST request when the page is ready.
Payload:
{
"pageUrl": "https://sendr.page/generated/abc123",
"attributes": {
"userId": "456",
"customNote": "Follow-up email"
}
}
Use the attributes you passed in the request to map results back to your system.
5. Generate GIF from Personalized Page
Convert a personalized page into an animated GIF. This is also asynchronous, and results will be sent via webhook.
Endpoint:
POST /api/v1/enrichment/dynamic-gif
Headers:
X-API-Key: YOUR_API_KEY
Content-Type: application/json
Accept: application/json
Body:
{
{
"pageUrl": "https://sendr.page/generated/abc123",
"attributes": {
"userId": "456",
"campaign": "AprilLaunch"
}
}
Response:
{
"jobId": "job_002"
}
6. Webhook: GIF Generation Completed
Once the GIF is ready, your webhook endpoint will receive:
{
"gifEmbed": "<iframe src='https://sendr.page/gif/abc123' />",
"attributes": {
"userId": "456",
"campaign": "AprilLaunch"
}
}
π© Webhook Configuration
Set your webhook URL and secret key in the Sendr Settings under Webhook Endpoint.
Webhook Headers:
X-Webhook-Secret: YOUR_SECRET
Use the attributes object to identify and map jobs in your app.
π‘ Tips
You can pass any key-value pair in attributes to help track jobs.
All request bodies should be in JSON format.
Page and GIF generation are queued jobs β always use the webhook to receive the final result.
π Need Help?
Contact our support team at [email protected] or drop us a message on live if you need help setting up your integration.