---
title: "List intake forms for an order"
method: GET
path: "/shop/order-intake-forms/{orderIntakeFormId}"
tags: ["Orders"]
---

# List intake forms for an order

`GET /shop/order-intake-forms/{orderIntakeFormId}`

Returns one row per (guest, intake form) on the order — completed
forms, pending ones the guest still needs to fill, and previously
completed mandatory waivers that roll forward from an earlier
order. Use this to render an intake-form checklist on the operator
console or to link a guest to their form via `intake_form_url`.

Mandatory-waiver behaviour: when a guest on the order has already
signed a mandatory waiver against this site on a previous order
(and no new waiver has been issued for the current order), that
previous waiver is included with `mandatory_waiver=true` and
`requires_intake_form=false`, so the operator UI shows it as
satisfied without prompting for a fresh signature.

Requires the `RESERVATIONS_VIEW` permission on the order's site.

## Response `200`

Per-guest intake-form status entries for the order. One entry per
guest + form combination — see `OrderIntakeForm` for the full
shape semantics.

- object
  - `data` OrderIntakeForm[], required
    - `basket_id` string, object-id, required — ID of the `Basket`/`Order` the intake form belongs to. May differ from the `orderIntakeFormId` in the path when surfacing a previously-completed mandatory waiver rolled forward from an earlier order.
    - `visit_intake_form_id` string, object-id, nullable, required — ID of the completed `VisitIntakeForm` record. `null` when the form has not been filled in yet.
    - `guest_id` string, object-id, nullable, required — ID of the guest the form belongs to. `null` for orphan intake forms that don't link back to any guest on the current order.
    - `name` string, required — Guest's full display name. Empty string when the guest has no associated name (e.g. on orphan forms).
    - `first_name` string, required — Guest's first name (empty string when unavailable).
    - `last_name` string, required — Guest's last name (empty string when unavailable).
    - `intake_form_url` string, uri, nullable, required — Public URL the guest can visit to complete the intake form. `null` once the form has been filled in.
    - `completed_at` string, date-time, nullable, required — ISO 8601 timestamp at which the guest completed the form. `null` while pending.
    - `anonymised_at` string, date-time, nullable, required — ISO 8601 timestamp at which the completed form's personal data was anonymised by Trybe's retention policy. `null` while the data is still intact.
    - `requires_intake_form` boolean, required — Whether the guest is required to fill this form in for the order. False once `visit_intake_form_id` is set.
    - `mandatory_waiver` boolean, required — Whether this is a mandatory waiver — the type of intake form that, once completed by a customer, rolls forward to subsequent orders until the waiver lapses.

## Other responses

- `401` — The user is unauthenticated
- `403` — The authenticated user does not have permission.
- `404` — The resource couldn't be found

---

[API](https://skmtc.dev/try/apis/trybe-api.md) · [All operations](https://skmtc.dev/try/apis/trybe-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/try/trybe-api/revisions/f37f92702da5/schema)
