---
title: "Appointment"
method: POST
path: "labtest.appointment.*"
tags: ["lab-testing"]
---

# Appointment

`POST labtest.appointment.*` (webhook)

## Payload

- ClientFacingAppointmentChanged
  - `event_type` 'labtest.appointment.created' | 'labtest.appointment.updated', required
  - `user_id` string, uuid, required
  - `client_user_id` string, uuid, required
  - `team_id` string, uuid, required
  - `data` ClientFacingAppointment, required
    - `id` string, uuid4, required
    - `user_id` string, uuid4, required
    - `order_id` string, uuid4, required
    - `order_transaction_id` string, uuid4, nullable
    - `address` USAddress, required
      - `first_line` string, required
      - `second_line` string, nullable
      - `city` string, required
      - `state` string, required
      - `zip_code` string, required
      - `unit` string, nullable — Deprecated. Use `second_line` instead to provide the unit number. Subject to removal after 20 Nov 2023.
      - `access_notes` string, nullable
    - `location` LngLat, required
      - `lng` number, required
      - `lat` number, required
    - `start_at` string, date-time, nullable, required — Time is in UTC
    - `end_at` string, date-time, nullable, required — Time is in UTC
    - `iana_timezone` string, nullable
    - `type` 'phlebotomy' | 'patient_service_center', required — ℹ️ This enum is non-exhaustive.
    - `provider` 'getlabs' | 'phlebfinders' | 'quest' | 'sonora_quest', required — ℹ️ This enum is non-exhaustive.
    - `status` 'confirmed' | 'pending' | 'reserved' | 'in_progress' | 'completed' | 'cancelled', required — ℹ️ This enum is non-exhaustive.
    - `provider_id` string, required
    - `external_id` string, nullable
    - `can_reschedule` boolean, required
    - `appointment_notes` string, nullable
    - `event_status` 'pending' | 'reserved' | 'scheduled' | 'completed' | 'cancelled' | 'in_progress', required — ℹ️ This enum is non-exhaustive.
    - `event_data` object, nullable
    - `events` ClientFacingAppointmentEvent[], required
      - `created_at` string, date-time, required
      - `status` 'pending' | 'reserved' | 'scheduled' | 'completed' | 'cancelled' | 'in_progress', required — ℹ️ This enum is non-exhaustive.
      - `data` object, nullable

## Acknowledgement `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/tryvital/apis/junction-api.md) · [All operations](https://skmtc.net/tryvital/apis/junction-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tryvital/junction-api/revisions/1a22b97afb3a/schema)
