TRVLSPORT Developers
Only the current contract is available.

Contract v1 · generated reference

Firebase Functions

65 deployed exports classified from the Functions entry barrel and trigger source.

A compiled handler that is absent from the entry barrel is not presented as deployed. Callable, HTTP, webhook and scheduled triggers are kept separate because they have different invocation and trust boundaries.

Deployed Firebase handler exports
ExportKindTriggerApp CheckRegion
adminAnnotateCALLABLEonCallREQUIREDREGION_CONSTANT
adminApprovePendingCALLABLEonCallREQUIREDREGION_CONSTANT
adminCommercialHealthCALLABLEonCallREQUIREDREGION_CONSTANT
adminDecideCALLABLEonCallREQUIREDREGION_CONSTANT
adminFulfilPrivacyRequestCALLABLEonCallREQUIREDREGION_CONSTANT
adminIssueRefundCALLABLEonCallREQUIREDREGION_CONSTANT
adminReplayWebhookCALLABLEonCallREQUIREDREGION_CONSTANT
adminRetryJobCALLABLEonCallREQUIREDREGION_CONSTANT
adminRetryPayoutCALLABLEonCallREQUIREDREGION_CONSTANT
adminRevealSubjectCALLABLEonCallREQUIREDREGION_CONSTANT
adminSetAccountRestrictionCALLABLEonCallREQUIREDREGION_CONSTANT
adminStartStepUpCALLABLEonCallREQUIREDREGION_CONSTANT
blackoutSetCALLABLEonCallREQUIREDREGION_CONSTANT
bookingCancelCALLABLEonCallREQUIREDREGION_CONSTANT
bookingRefundCALLABLEonCallREQUIREDREGION_CONSTANT
bookingRescheduleCALLABLEonCallREQUIREDREGION_CONSTANT
capacitySetCALLABLEonCallREQUIREDREGION_CONSTANT
checkoutResolveCALLABLEonCallREQUIREDREGION_CONSTANT
checkoutStartCALLABLEonCallREQUIREDREGION_CONSTANT
corporateSubmitIntakeCALLABLEonCallREQUIREDREGION_CONSTANT
corporateSubmitWaitlistCALLABLEonCallREQUIREDREGION_CONSTANT
disruptionReportCALLABLEonCallREQUIREDREGION_CONSTANT
groupCreateCALLABLEonCallREQUIREDREGION_CONSTANT
groupDecisionGetCALLABLEonCallREQUIREDREGION_CONSTANT
groupDecisionSetCALLABLEonCallREQUIREDREGION_CONSTANT
groupDecisionSummaryCALLABLEonCallREQUIREDREGION_CONSTANT
groupGetCALLABLEonCallREQUIREDREGION_CONSTANT
groupInviteCALLABLEonCallREQUIREDREGION_CONSTANT
groupInviteAcceptCALLABLEonCallREQUIREDREGION_CONSTANT
groupInvitesListCALLABLEonCallREQUIREDREGION_CONSTANT
groupListCALLABLEonCallREQUIREDREGION_CONSTANT
groupMessageSendCALLABLEonCallREQUIREDREGION_CONSTANT
groupMessagesListCALLABLEonCallREQUIREDREGION_CONSTANT
groupParticipantsListCALLABLEonCallREQUIREDREGION_CONSTANT
groupPollCreateCALLABLEonCallREQUIREDREGION_CONSTANT
groupPollsListCALLABLEonCallREQUIREDREGION_CONSTANT
groupPollVoteCALLABLEonCallREQUIREDREGION_CONSTANT
groupShareGetCALLABLEonCallREQUIREDREGION_CONSTANT
groupSharePaymentRequestCALLABLEonCallREQUIREDREGION_CONSTANT
holdPlaceCALLABLEonCallREQUIREDREGION_CONSTANT
holdsExpirySweepSCHEDULEDonScheduleNOT_APPLICABLEREGION_CONSTANT
listingCreateCALLABLEonCallREQUIREDREGION_CONSTANT
listingPublicationBlockersCALLABLEonCallREQUIREDREGION_CONSTANT
listingPublishCALLABLEonCallREQUIREDREGION_CONSTANT
listingUpdateCALLABLEonCallREQUIREDREGION_CONSTANT
partnerBusinessDetailsCALLABLEonCallREQUIREDREGION_CONSTANT
partnerPayoutOnboardingCALLABLEonCallREQUIREDREGION_CONSTANT
partnerTeamInviteCALLABLEonCallREQUIREDREGION_CONSTANT
paymentsExpirySweepSCHEDULEDonScheduleNOT_APPLICABLEREGION_CONSTANT
paymentsWebhookWEBHOOKonRequestNOT_APPLICABLEREGION_CONSTANT
quoteRequestCALLABLEonCallREQUIREDREGION_CONSTANT
reviewSubmitCALLABLEonCallREQUIREDREGION_CONSTANT
safetyReportCALLABLEonCallREQUIREDREGION_CONSTANT
sessionListCALLABLEonCallREQUIREDREGION_CONSTANT
sessionRegisterCALLABLEonCallREQUIREDREGION_CONSTANT
sessionRevokeAllCALLABLEonCallREQUIREDREGION_CONSTANT
supportReplyToRequestCALLABLEonCallREQUIREDREGION_CONSTANT
supportSubmitAccountDeletionCALLABLEonCallREQUIREDREGION_CONSTANT
supportSubmitPrivacyRequestCALLABLEonCallREQUIREDREGION_CONSTANT
supportSubmitRequestCALLABLEonCallREQUIREDREGION_CONSTANT
travelerDiscoverCALLABLEonCallREQUIREDREGION_CONSTANT
travelerExperienceGetCALLABLEonCallREQUIREDREGION_CONSTANT
travelerSavedListCALLABLEonCallREQUIREDREGION_CONSTANT
travelerSearchCALLABLEonCallREQUIREDREGION_CONSTANT
waitlistHTTP_COMPATIBILITYonRequestREQUIRED_MANUAL_HEADER_VERIFICATIONREGION_CONSTANT

Every discovered callable currently declares required App Check. Webhooks, scheduled triggers and compatibility HTTP handlers use their own platform or signature authority, so App Check is correctly marked not applicable.

Common integration contract

Sandbox and Production are isolated

Run examples only in a governed sandbox or local emulator. Sandbox identities, App Check tokens, payment fixtures and data do not grant Production access. The typed ports do not ratify a public numeric quota; enforcement may be stricter. Honor RATE_LIMITED and the server's retry-after value.

Authentication and authorization

Firebase Auth proves identity. App Check proves the approved app where a callable requires it. Roles, organization membership, requester identity and resource ownership are derived and rechecked by the server.

Authentication guide

Errors and recovery

Stable error codes distinguish validation, denial, conflict, expiry, authority pending, rate limiting and temporary unavailability. Never infer success from an HTTP redirect or a browser state.

Error catalogue

Idempotency, concurrency and retry

Reuse an idempotency key only for an identical retry. A new intent needs a new key. Preserve version preconditions and reload after a conflict.

Retry guidance

Changes and escalation

Check compatibility before adopting a new contract version. Review the changelog, service status and support guidance before retrying a persistent failure.

Common failure families
FamilyClient decision
Authentication / authorizationRefresh or step up only when instructed; do not retry a denial unchanged.
Validation / conflict / expiryCorrect or reload state, then obtain confirmation for a new intent.
Rate limited / unavailableHonor retry-after and use bounded backoff; inspect service status.
Unknown / serverFail closed and escalate with a privacy-safe correlation id.

Executable network examples are published only when the exact wire schema is producer-proven. Check the selected operation's example-availability status; an unresolved schema is a release blocker, not permission to guess.

Verified examples and local-only recovery snippets