Skip to content
Video IntrosDevelopers
TestLive not yet available
videointros.com

Preview Developer preview. The API described here is not available yet. Examples are illustrative and every console screen uses sample data: nothing is sent, created or stored.

Core concepts

Touchpoints

A touchpoint is a business moment that should create a Video Intro experience: an appointment booked, an inspection done, an offer accepted.

Touchpoints belong to the organization

Every organization already has touchpoints in Video Intros. Its team names them, edits what the member says and what the customer sees, and turns them on or off. The API uses those same touchpoints. There is no separate list for integrations.

An industry only decides which touchpoints an organization starts with. See Exterior Remodeling and Real Estate.

Send business meaning, not CRM status names

Not this

{
  "touchpoint": "INSPECTION_COMPLETED"
}

A status name from one CRM. It means nothing to another organization.

This

{
  "touchpoint": "inspection_findings"
}

The organization’s own touchpoint.

  1. CRM statusINSPECTION_COMPLETED
  2. Integration mappingLives in your adapter
  3. Video Introsinspection_findings

List an organization’s 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.

  • idstring

    The touchpoint's identifier.

  • slugstring

    The value you send as touchpoint.

  • namestring

    What the organization calls it.

  • contextstring

    What kind of moment it is: appointment, status, milestone or none. An appointment touchpoint expects context.appointment.

  • activeboolean

    False when the organization has turned it off. Events for it are refused.

Full reference

Response · 200
{
  "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
}

Context

A touchpoint’s context says what kind of moment it is, and so what facts it can use.

ContextMeaningSend
Appointment
A scheduled meeting with a day and time.
context.appointment
Status
Something is happening now.
Nothing more
Milestone
A stage was reached.
Nothing more
No context
A message with no date attached.
Nothing more

Then trigger one

POST /v1/touchpoint-events with the slug. Video Intros takes it from there.