Party and Traveler Handling¶
Overview¶
The concept of a party serves as a logical grouping of travelers. This is particularly useful for scenarios such as placing orders, managing bookings, or organizing shared activities. Typical examples of a party include:
- A family group
- A school class
- A sports team
- Members of a sports club
A party acts as a container for travelers, allowing for efficient management and reuse of traveler data.
Party Structure¶
- Party: Represents a group of travelers.
- Traveler: Individual entries within a party. Travelers do not exist independently outside of a party context.
Each party contains a list of travelers. Important to note:
- Travelers are bound to their party and cannot exist without it.
- If a traveler appears in multiple parties, updates to the traveler’s data (by ID) will propagate to all instances across parties.
Traveler Identification¶
When a traveler is created, an identifier (ID) is automatically generated. The rules for ID generation are as follows:
- If at least 2 out of the traveler's family name, surname, and birthdate are provided, these are used to generate a deterministic ID.
- If these details are not available, a random GUID is generated to ensure uniqueness.
Client-Provided Identifier¶
When creating or updating travelers, clients may optionally provide their own identifier. However, we recommend using the automatically generated ID to maintain consistency and avoid conflicts.
Shared Traveler Data Across Parties¶
If a traveler with a given ID exists in multiple parties:
- Updates to that traveler’s profile are applied across all parties.
This ensures data consistency and avoids duplication of traveler profiles.
Party Sharing and Collaboration¶
Parties support collaboration through sharing. Users can invite others to join their party:
- Invited users can update their traveler data.
- Changes made by any party member are automatically reflected for all.
For detailed implementation guidelines, refer to the document: Profile Data Sharing
Managing Travelers in Applications¶
When managing travelers within your application, we recommend the following approach:
- Create a dedicated party: Use a party with a clear, consistent name to act as the container for your travelers.
- Centralized traveler management: Create and update all travelers within this designated party to simplify management.
- Retrieve traveler data:
- Use the dedicated party to obtain a specific, controlled list of travelers.
- Alternatively, use the Get All Travelers endpoint to retrieve travelers from all parties.
This approach ensures clarity and consistency in traveler data handling.
User Access in the Portal¶
Users can view all their parties and associated travelers via the My Portal interface. This provides a clear overview and facilitates easy management of traveler data.