The Appointment Object

Object Definition

    "id": 67176890458,                                      // long(64) read-only 
    "scheduled_date": "2016-10-13T11:15:00Z",               // datetime(iso8601)
    "duration": 15,                                         // integer  (in minutes)
    "time_slot_type": "appointment",
    "time_slot_status": null,
    "reason": "Follow-Up",                                  // string(50), not nullable
    "description": "follow up to procedure",                // string(500)
    "status": {                                             // optional in "Create"
        "status": "Not Seen",                               // required in "Update"
        "room": "Room 102",
        "status_date": "2016-10-13T01:02:37",               // read-only
        "status_detail": "No Show"                          // only available for status "Not Seen"
    "service_location": {
        "id": 13631735,
        "name": "Elation North",
        "place_of_service": 1,                              // int(32)
        "address_line1": "1234 First Practice Way",
        "address_line2": "",
        "city": "San Francisco",
        "state": "CA",
        "zip": "94114",
        "phone": "555-555-5555",
    "telehealth_details": "video platform",                 // string
    "patient": 64058687489,                                 // long(64)
    "physician": 131074,                                    // long(64)
    "practice": 65540,                                      // long(64)
    "recurring_event_schedule": null,
    "billing_details": {                                    // billing information for appointments must be enabled for practice
        "billing_note": "",                                 // string(500)
        "referring_provider": "",                           // string(100)
        "referring_provider_state": "CA"                    // string(2)
    "payment": {
        "id": 140755836010857,                              // long(64) read-only
        "amount": "20.00",
        "when_collected": "2020-01-27T16:17:43Z",
        "bill": null,
        "appointment": 67176890458,
        "create_date": "2020-01-27T16:17:43Z",
        "delete_date": null
    "metadata": null,
    "created_date": "2016-10-13T00:47:01Z",                 // datetime(iso8601)   read-only
    "last_modified_date": "2016-10-13T00:59:16Z",           // datetime(iso8601)   read-only
    "deleted_date": null,                                   // datetime(iso8601)   read-only
    "mode": "IN_PERSON",                                    // IN_PERSON or VIDEO
    "instructions": "Please arrive 5 minutes early"         // string(500)
AttributeAllowed Values
status.status"Scheduled", "Confirmed", "Checked Out", "Cancelled", "With Doctor", "In Room", "Checked In", "In Room - Vitals Taken", "Not Seen", "Billed"
status.status_detail"No Show", "Left Without Seeing", "Other"; only available when status.status is set to "Not Seen"
status.roomthe value must be one of available rooms
duration5-min increment and must be between 1 to 1440

The "reason" field should not be free-text. The values are mapped to "appointment types" in the EMR.

Reasons that aren't already represented by a structured Appointment Type in Elation will cause one to be created for the practice automatically when we receive them.