Skip to content

Passengers

Passengers are saved travelers attached to a Movmo user. Each carries name, gender, date of birth, nationality, contact details, and a traveler_type (adult/child/infant) computed against a target departure date. Identity documents (passport, visa, KTN) are a child resource and KMS-encrypted at rest.

  • Soft-delete only. DELETE sets deleted_at rather than removing the row; list queries filter on deleted_at IS NULL. Booking-passenger FKs are RESTRICT, so a passenger that already shipped on a booking remains queryable.
  • PUT is full-body replace, not patch. Read, mutate, PUT the merged record. Sparse PUTs fail server-side validation.
  • ?departure_date=YYYY-MM-DD on the list endpoint computes traveler_type against that date. Without it, infants can mis-classify on flights months out.
  • Identity documents are KMS-encrypted at rest. Cleartext over TLS, encrypted on disk.
OperationPath
listPassengersGET /v1/users/{userid}/passengers
createPassengerPOST /v1/users/{userid}/passengers
getPassengerGET /v1/users/{userid}/passengers/{passengerid}
updatePassengerPUT /v1/users/{userid}/passengers/{passengerid}
deletePassengerDELETE /v1/users/{userid}/passengers/{passengerid}
listIdentityDocumentsGET /v1/users/{userid}/passengers/{passengerid}/identity-documents
createIdentityDocumentPOST /v1/users/{userid}/passengers/{passengerid}/identity-documents
getIdentityDocumentGET .../identity-documents/{documentid}
updateIdentityDocumentPUT .../identity-documents/{documentid}
deleteIdentityDocumentDELETE .../identity-documents/{documentid}

Full schemas in the OpenAPI spec under tags: [Passengers].

Model Context Protocol (MCP) wrappers for this domain:

ToolMaps to
get_passengers_profileGET /v1/users/{userid}/passengers
create_passenger_profilePOST /v1/users/{userid}/passengers
update_passenger_profileGET + PUT .../passengers/{passengerid}
delete_passenger_profileGET + DELETE .../passengers/{passengerid}

create_passenger_profile exposes only the core fields (no middle_name, no is_default, no KTN). For the full set, use the REST endpoint.

There is no MCP tool for identity-documents CRUD today. Documents are read/write over REST only.

  • update_passenger_profile (MCP) reads, merges, and writes for you; REST PUT does not — supply the full body.
  • update_passenger_profile writes the saved record; update_passenger (booking-flow tool) fills the offer slot. Different operations.