Touchpoints
List touchpoints
GET/v1/touchpoints
Returns the organization's own touchpoints: the same ones its team manages in Video Intros. Use a touchpoint's slug when you send a touchpoint event. An organization can rename, reorder or turn off its touchpoints, so read this list rather than hard-coding it.
Authentication
A bearer API key. Authentication.
Headers
AuthorizationstringrequiredBearer followed by your API key. A test key works in the test environment only.
Response fields
idstringThe touchpoint's identifier.
slugstringThe value you send as touchpoint.
namestringWhat the organization calls it.
contextstringWhat kind of moment it is: appointment, status, milestone or none. An appointment touchpoint expects context.appointment.
activebooleanFalse when the organization has turned it off. Events for it are refused.
Errors
| Status | Code | When |
|---|---|---|
401 | unauthorized | The API key is missing, malformed or revoked. |
curl https://api.videointros.com/v1/touchpoints \
-H "Authorization: Bearer $VIDEO_INTROS_API_KEY"
const response = await fetch("https://api.videointros.com/v1/touchpoints", {
method: "GET",
headers: {
Authorization: `Bearer ${process.env.VIDEO_INTROS_API_KEY}`,
},
});
const result = await response.json();
import os, requests
response = requests.get(
"https://api.videointros.com/v1/touchpoints",
headers={
"Authorization": f"Bearer {os.environ['VIDEO_INTROS_API_KEY']}",
},
)
result = response.json()
{
"object": "list",
"data": [
{
"id": "tp_1c7e",
"object": "touchpoint",
"slug": "new_appointment",
"name": "New Appointment",
"context": "appointment",
"active": true
},
{
"id": "tp_9a02",
"object": "touchpoint",
"slug": "inspection_findings",
"name": "Inspection Findings / Next Steps",
"context": "none",
"active": true
},
{
"id": "tp_4d51",
"object": "touchpoint",
"slug": "project_update",
"name": "Project Update",
"context": "none",
"active": true
}
],
"has_more": false
}