Popin Insta Call API Documentation
This documentation covers the Popin Insta Call APIs for:
Capturing users
Creating video call links
Retrieving available slots
Scheduling video calls
🔐 Authentication
All API requests require the following headers:
🔑 How to Generate API Key
Log in to your Popin Dashboard
Go to Settings → Developers
Select Popin API
Click Generate API Key
📋 Example Headers
X-API-KEY: {{apiKey}}
X-TOKEN: {{sellerToken}}
Accept: application/json📥 1. Capture User API
📌 Endpoint
POST https://widget01.popin.to/api/v1/external/capture🎯 Purpose
Captures and registers a customer. Returns:
A unique
customer_idA join URL for a Popin video call
📝 Required Fields (in Body)
name
string
Customer name
mobile
string
Mobile number
string
Email address
group
string
Group identifier
pin_code
string
PIN/ZIP code
🔁 Optional Fields
No optional fields defined explicitly.
📦 Example Request
{
"name": "Vijith",
"mobile": "9544510895",
"email": "vijith@springr.in",
"group": "QA101",
"pin_code": "221007"
}✅ Successful Response
{
"status": 1,
"customer_id": "MzE1",
"url": "https://live.popin.to/8131-a157",
"message": "User captured successfully"
}📅 2. Get Available Slots API
📌 Endpoint
GET https://widget01.popin.to/api/v1/external/slots🎯 Purpose
Fetches a list of available 15-minute time slots for scheduling a call.
⚠️ No request body is required.
📦 Sample Response (Partial)
{
"availability": [
{
"date": "Wed, 24 Sep 2025",
"slots": [
"01:00 PM",
"01:15 PM",
"01:30 PM",
"10:45 PM"
]
},
{
"date": "Thu, 25 Sep 2025",
"slots": [
"10:00 AM",
"10:15 AM",
"10:45 PM"
]
}
],
"slotDiff": 15,
"timezone": "Asia/Kolkata"
}🔍 Response Fields
availability
array
Dates with available time slots
slotDiff
integer
Time difference between each slot (minutes)
timezone
string
Timezone of the slots
⏰ Scheduling Format
To schedule a call, combine the date and time into a single string using this format:
Thu, 25 Sep 2025 03:15 PMUse this exact format in the Schedule API.
📆 3. Schedule a Call API
📌 Endpoint
POST https://widget01.popin.to/api/v1/external/schedule🎯 Purpose
Schedules a Popin video call using:
A valid
customer_id(from Capture API)A valid time slot (from Slots API)
📝 Required Fields (in Body)
customer_id
string
ID returned by Capture API
time
string
Date and time in specified format
📦 Example Request
{
"customer_id": "MzE1",
"time": "Fri, 19 Sep 2025 07:30 PM"
}✅ Successful Response
{
"status": 1,
"schedule": {
"data": {
"name": "Vijith",
"time": "Wed, Sep 24 | 10:30 PM",
"timezone": "Asia/Kolkata"
}
},
"data": "+919544510895"
}✅ Summary of Endpoints
Capture User
POST
https://widget01.popin.to/api/v1/external/capture
Get Available Slots
GET
https://widget01.popin.to/api/v1/external/slots
Schedule a Call
POST
https://widget01.popin.to/api/v1/external/schedule
Last updated