Appointment reminders

After the appointment type and message are created, you can start creating, updating, canceling, and send no-show reminders programmatically. Make the following calls to the Appointment Reminders API for appointment reminders:

Authentication

Note: Legacy APIs and the APIs outlined in the Attentive API section need separate tokens. Contact legacyapi@attentivemobile.com for a legacy API token.

You must include the following headers in your API call:

Headers

Header name Description Value Required
Authorization You must provide an access token. Contact legacyapi@attentivemobile.com for this token. Bearer <token> Required
Content-type The format of returned data. application/json Required

Create a new appointment reminder

Make a call to this endpoint to create a new appointment reminder.

URL

POST https://tactical-client-api.attentivemobile.com/events/reminders

Parameters

Parameter Description Example Type Required
uuid This is the unique identifier for the appointment reminder. This is automatically generated when you create an appointment reminder. 1a2b3c4d5e6f7g8h9i0j string n/a
externalEventId This unique identifier allows you to match an external appointment in your system. It is validated for a subscriber and external ID.

By using an external ID, you can ensure that duplicate reminders aren’t created for the same appointment and subscriber.

112233 string Optional
phone The phone number of the subscriber.

Note the following:

  • Phone numbers should be formatted as: “XXX-XXX-XXXX” or “XXXXXXXXXX”
  • Values must be enclosed in double quotes.
  • Country codes may be included.
1234567890 string Required
firstName The first name of the subscriber. First string Optional
lastName The last name of the subscriber. Last string Optional
emailAddress The email address of the subscriber. email@gmail.com string Optional
eventType This is used to map the reminder back to the associated event type. object Required
uuid This is the unique identifier for the appointment type. This was automatically generated when you created an [appointment type](https://docs.attentive.com/pages/api-reference/appointment-reminders-api/appointment-types/). 6c52d314-a3ca-4781-ba70-XXXXXXXXXXXX string Required
remindTimeOffset This allows you to send a SMS reminder X hours prior to the appointment.

It represents the duration and is defined in the ISO 8601 standard.

Note: If you do not enter a value, this defaults to three hours.

PT3H string Required
followUpTimeOffset This allows you to specify the time to schedule a follow up message. Follow up messages only send if a no-show was not triggered.

It represents the duration and is defined in the ISO 8601 standard.

PT2H string Optional
eventDateTime The date and time of when the reminder will be sent.

This is calculated applying the remindTimeOffset to the eventDateTime.

This must be in ISO 8601 standard format.

2021-01-06T16:50:00 string Required
subscriberTimeZone The timezone name. America/New_York string Required
sendEligibleSubscribersOnly When true, the reminder will only be created if the subscriber is eligible.

When false or not specified, the reminder is created regardless of subscriber status since the subscriber may become eligible at any time before the reminder message time.

true boolean Optional
metadata This object can be used to pass any metadata. for customizing messages related to a subscriber, event, reminder, and more. { "eventLocation": "New York" } string Optional

Sample JSON request

curl 'https://tactical-client-api.attentivemobile.com/events/reminders' \
-X POST \
-H 'Authorization: Bearer 1a2b3c4d5' \
-H 'Content-Type: application/json' \
-d '{"externalEventId": "12345",
  "phone": "1234567890",
  "eventType": {
        "uuid": "6c52d314-a3ca-4781-ba70-XXXXXXXXXXXX"
    },
  "emailAddress": "email@gmail.com",
  "remindTimeOffset": "PT1H",
  "followUpTimeOffset": "PT2H",
  "eventDateTime": "2021-01-06T16:50:00",
  "subscriberTimeZone": "America/New_York",
  "sendEligibleSubscribersOnly": true,
  "metadata": {"eventLocation": "New York"}
}'

Sample JSON response

{
  "uuid": "db04f6ff-42e4-4bba-a9d3-YYYYYYYYYYYY",
  "externalEventId": "12345",
  "phone": "1234567890",
  "eventType": {
        "uuid": "6c52d314-a3ca-4781-ba70-XXXXXXXXXXXX"
    },
  "emailAddress": "email@gmail.com",
  "remindTimeOffset": "PT1H",
  "followUpTimeOffset": "PT2H",
  "eventDateTime": "2021-01-06T16:50:00",
  "subscriberTimeZone": "America/New_York",
  "sendEligibleSubscribersOnly": true,
  "metadata": {"eventLocation": "New York"}
}

Update an appointment reminder

Make a call to this endpoint to update an existing appointment reminder.

URL

PUT https://tactical-client-api.attentivemobile.com/events/reminders/{uuid}

Parameters

Parameter Description Example Type Required
uuid This is the unique identifier for the appointment reminder. This is automatically generated when you create an appointment reminder. 1a2b3c4d5e6f7g8h9i0j string Required
externalEventId This unique identifier allows you to match an external appointment in your system. It is validated for a subscriber and external ID.

By using an external ID, you can ensure that duplicate reminders aren’t created for the same appointment and subscriber.

112233 string n/a
phone The phone number of the subscriber.

Note the following:

  • Phone numbers should be formatted as: “XXX-XXX-XXXX” or “XXXXXXXXXX”
  • Values must be enclosed in double quotes.
  • Country codes may be included.
1234567890 string n/a
firstName The first name of the subscriber. First string n/a
lastName The last name of the subscriber. Last string n/a
emailAddress The email address of the subscriber. email@gmail.com string n/a
eventType This is used to map the reminder back to the associated appointment type. object n/a
uuid This is the unique identifier for the appointment type. This was automatically generated when you created an [appointment type](https://docs.attentive.com/pages/api-reference/appointment-reminders-api/appointment-types/). 6c52d314-a3ca-4781-ba70-XXXXXXXXXXXX string n/a
remindTimeOffset This allows you to send a SMS reminder X hours prior to the appointment.

It represents the duration and is defined in the ISO 8601 standard.

Note: If you do not enter a value, this defaults to three hours.

PT1H string n/a
followUpTimeOffset This allows you to specify the time to schedule a follow up message. Follow up messages only send if a no-show was not triggered.

It represents the duration and is defined in the ISO 8601 standard.

PT2H string n/a
eventDateTime The date and time of when the reminder will be sent.

This is calculated applying the remindTimeOffset to the eventDateTime.

This must be in ISO 8601 standard format.

2021-01-06T16:50:00 string n/a
subscriberTimeZone The timezone name. America/Chicago string n/a
metadata This object can be used to pass any metadata. for customizing messages related to a subscriber, event, reminder, and more. { "eventLocation": "New York" } string n/a

Sample JSON request

curl 'https://tactical-client-api.attentivemobile.com/events/reminders/db04f6ff-42e4-4bba-a9d3-YYYYYYYYYYYY' \
-X PUT \
-H 'Authorization: Bearer 1a2b3c4d5' \
-H 'Content-Type: application/json' \
-d '{"remindTimeOffset": "PT2H", "eventDateTime": "2021-01-07T16:50:00"}'

Sample JSON response

{
  "uuid": "db04f6ff-42e4-4bba-a9d3-YYYYYYYYYYYY",
  "externalEventId": "12345",
  "phone": "1234567890",
  "eventType": {
        "uuid": "6c52d314-a3ca-4781-ba70-XXXXXXXXXXXX"
    },
  "emailAddress": "email@gmail.com",
  "remindTimeOffset": "PT2H",
  "followUpTimeOffset": "PT2H",
  "eventDateTime": "2021-01-07T16:50:00",
  "subscriberTimeZone": "America/New_York",
  "metadata": {"eventLocation": "New York"}
}

Cancel an appointment reminder

Make a call to this endpoint to cancel an existing appointment reminder.

URL

POST https://tactical-client-api.attentivemobile.com/events/reminders/{uuid}/cancel

Parameters

Parameter Description Example Type Required
uuid This is the unique identifier for the appointment reminder. This is automatically generated when you create an appointment reminder. 1a2b3c4d5e6f7g8h9i0j string Required

Sample JSON request

curl 'https://tactical-client-api.attentivemobile.com/events/reminders/db04f6ff-42e4-4bba-a9d3-YYYYYYYYYYYY/cancel' \
-X POST \
-H 'Authorization: Bearer 1a2b3c4d5' \
-H 'Content-Type: application/json' 

Sample JSON response

{
  "uuid": "db04f6ff-42e4-4bba-a9d3-YYYYYYYYYYYY",
  "externalEventId": "12345",
  "phone": "1234567890",
  "eventType": {
        "uuid": "6c52d314-a3ca-4781-ba70-XXXXXXXXXXXX"
    },
  "emailAddress": "email@gmail.com",
  "remindTimeOffset": "PT2H",
  "followUpTimeOffset": "PT2H",
  "eventDateTime": "2021-01-07T16:50:00",
  "subscriberTimeZone": "America/New_York",
  "metadata": {"eventLocation": "New York"}
}

Send a no-show appointment reminder

Make a call to this endpoint to send a message to subscribers to let them know that they missed their appointment.

URL

POST https://tactical-client-api.attentivemobile.com/events/reminders/{uuid}/no-show

Parameters

Parameter Description Example Type Required
uuid This is the unique identifier for the appointment reminder. This is automatically generated when you create an appointment reminder. 1a2b3c4d5e6f7g8h9i0j string Required

Sample JSON request

curl 'https://tactical-client-api.attentivemobile.comhttps://tactical-client-api.attentivemobile.com/events/reminders/db04f6ff-42e4-4bba-a9d3-YYYYYYYYYYYY/no-show' \
-X POST \
-H 'Authorization: Bearer 1a2b3c4d5' \
-H 'Content-Type: application/json' 

Sample JSON response

{
  "uuid": "db04f6ff-42e4-4bba-a9d3-YYYYYYYYYYYY",
  "externalEventId": "12345",
  "phone": "1234567890",
  "eventType": {
        "uuid": "6c52d314-a3ca-4781-ba70-XXXXXXXXXXXX"
    },
  "emailAddress": "email@gmail.com",
  "remindTimeOffset": "PT2H",
  "followUpTimeOffset": "PT2H",
  "eventDateTime": "2021-01-07T16:50:00",
  "subscriberTimeZone": "America/New_York",
  "metadata": {"eventLocation": "New York"}
}

Status codes

The following table lists the returned HTTP status codes.

Code Description Notes
200 OK Request successful.
400 Bad request Data is improperly formatted.
401 Authorization error API key is incorrect.
404 Not Found Activity ID was not found for cancel, no-show, or update.
500 Internal Server Error This status code indicates that the server encountered an unexpected condition that prevented it from fulfilling the request.