openapi: 3.2.0 info: title: NewSkies-Digital-Api User API version: 4.8.6.23 description: Navitaire Digital Api servers: - url: https://prod.api.tui/flight/newskies/rest description: TUI Prod - url: https://playground.api.tui/flight/newskies/rest description: TUI Playground security: - JWT: [] tags: - name: user paths: /api/nsk/v1/user: get: tags: - user summary: Retrieves the current logged in user. description: 'GraphQL endpoint: user' operationId: nsk_v1_user_get responses: '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfUser' deprecated: true post: tags: - user summary: Creates a user and person (used by anonymous to create non agent logins). description: 'This endpoint will create a user based off the system configured customer creation parameters. The associated person has to be of type customer or an exception will be thrown. To change these default settings please configure utilities. GraphQL endpoint: userAdd' operationId: nsk_v1_user_post requestBody: x-name: request description: The user customer create request. content: application/json: schema: $ref: '#/components/schemas/UserCustomerCreateRequest' required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' put: tags: - user summary: Updates the current logged in user. description: 'GraphQL endpoint: userSet' operationId: nsk_v1_user_put requestBody: x-name: request description: The user edit request. content: application/json: schema: $ref: '#/components/schemas/UserRequest' required: true x-position: 1 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '500': description: A server error occurred. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' deprecated: true patch: tags: - user summary: Patches the current logged in user. description: 'GraphQL endpoint: userModifyv2' operationId: nsk_v1_user_patch requestBody: x-name: request description: The user patch request. content: application/json: schema: $ref: '#/components/schemas/DeltaMapperOfUserRequest' required: true x-position: 1 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '500': description: A server error occurred. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' deprecated: true /api/nsk/v1/user/bookings: get: tags: - user summary: Searches the logged in user booking upcoming and past bookings. description: 'GraphQL endpoint: userBookings' operationId: nsk_v1_user_bookings_get parameters: - name: AssociatedFirstName in: query description: "An associated passenger/contact first name.\n " schema: type: - string - 'null' x-position: 1 - name: AssociatedLastName in: query description: "An associated passenger/contact last name.\n " schema: type: - string - 'null' x-position: 2 - name: PhoneticSearch in: query description: "Flag indicating to search using the phonetic option.\n " schema: type: - boolean - 'null' x-position: 3 - name: TripIdentifier in: query description: "Filter by trip identifier.\n " schema: type: - string - 'null' x-position: 4 - name: Origin in: query description: "Filter by origin station code.\n " schema: type: - string - 'null' maxLength: 3 minLength: 0 x-position: 5 - name: Destination in: query description: "Filter by destination station code.\n " schema: type: - string - 'null' maxLength: 3 minLength: 0 x-position: 6 - name: SearchArchive in: query description: "Flag indicating to search archived bookings.\n " schema: type: - boolean - 'null' x-position: 7 - name: TripDate in: query description: "Filter by trip date.\n " schema: type: - string - 'null' format: date-time x-position: 8 - name: StartDate in: query description: "Filter by starting search date.\n " schema: type: - string - 'null' format: date-time x-position: 9 - name: EndDate in: query description: "Filter by ending search date.\n " schema: type: - string - 'null' format: date-time x-position: 10 - name: SearchByCustomerNumber in: query description: "Flag indicating to search by the users customer number instead of user identifier.\n " schema: type: - boolean - 'null' x-position: 11 - name: ReturnCount in: query description: "The number of results to be returned.\n " schema: type: integer maximum: 5000.0 minimum: 10.0 x-position: 12 - name: LastBookingKey in: query description: "The last booking key.\n " schema: type: - string - 'null' x-position: 13 - name: StartingIndex in: query description: "The starting index of the next set of bookings (used for paging).\n " schema: type: - integer - 'null' format: int64 x-position: 14 responses: '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfIListOfBookingSearchResult' deprecated: true /api/nsk/v1/user/bookingsByContactCustomerNumber: get: tags: - user summary: Searches for any bookings that have the current user as a contact via their customer number. description: 'GraphQL endpoint: userBookingsByContactCustomerNumber' operationId: nsk_v1_user_bookingsByContactCustomerNumber_get parameters: - name: PageSize in: query description: "The number of items to return for the request.\n " schema: type: - integer - 'null' maximum: 5000.0 minimum: 10.0 x-position: 1 - name: LastIndex in: query description: "The last booking index (used for paging).\n " schema: type: - integer - 'null' format: int64 maximum: 9.223372036854776e+18 minimum: 0.0 x-position: 2 - name: FlightNumber in: query description: "Filter by the flight number.\n " schema: type: - string - 'null' x-position: 3 - name: DepartureDate in: query description: "The first journeys departure date.\n " schema: type: - string - 'null' format: date-time x-position: 4 - name: Destination in: query description: "Filter by the destination code.\n " schema: type: - string - 'null' maxLength: 3 minLength: 3 x-position: 5 - name: Origin in: query description: "Filter by the departure code.\n " schema: type: - string - 'null' maxLength: 3 minLength: 3 x-position: 6 - name: SourceOrganization in: query description: "Filter by the organization associated with the booking. For example the\ntravel agency associated with this booking.\n " schema: type: - string - 'null' maxLength: 10 minLength: 0 x-position: 7 - name: OrganizationGroupCode in: query description: "Filter by the organization group code to find.\n " schema: type: - string - 'null' maxLength: 3 minLength: 0 x-position: 8 - name: SearchArchive in: query description: "Whether or not to search the booking archive.\n " schema: type: - boolean - 'null' x-position: 9 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfIListOfBookingSearchResult' /api/nsk/v1/user/bookingsByPassenger: get: tags: - user summary: Searches the logged in user booking upcoming and past bookings. description: 'This is similar to the user booking endpoint but returns more focused trip information. This endpoint will only return data where a booking''s passenger customer number matches the current logged in user. Bookings made by the user where the passenger customer number is not assigned are ignored. The BeginDate will default to today, and the EndDate defaults to one month from today unless a value is provided. GraphQL endpoint: userBookingsByPassenger' operationId: nsk_v1_user_bookingsByPassenger_get parameters: - name: StartDate in: query description: "Booking start search date.\n " schema: type: - string - 'null' format: date-time x-position: 1 - name: EndDate in: query description: "Booking end search date.\n " schema: type: - string - 'null' format: date-time x-position: 2 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfIListOfBookingTripResult' deprecated: true /api/nsk/v1/user/impersonate: get: tags: - user summary: Gets the logged in users current session roles state. description: 'GraphQL endpoint: impersonate' operationId: nsk_v1_user_impersonate_get responses: '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfNskRoles' post: tags: - user summary: Impersonates a new role for the logged in user. description: 'GraphQL endpoint: impersonateSet' operationId: nsk_v1_user_impersonate_post requestBody: x-name: request description: The user impersonate request. content: application/json: schema: $ref: '#/components/schemas/UserImpersonateRequest' required: true x-position: 1 responses: '202': description: The request was accepted successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' delete: tags: - user summary: Resets the logged in users role. description: 'GraphQL endpoint: impersonateDelete' operationId: nsk_v1_user_impersonate_delete responses: '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: Success.: description: Success will return a 200 with no data. value: data: null Not impersonating.: description: If not needed a 200 will be returned with a warning. value: messages: - code: nsk:NoOperation type: Warning value: No operation was performed. The data is already in the expected state. status: 0 details: null data: null /api/nsk/v3/user/password/change: post: tags: - user summary: Changes the logged in user's password. description: 'Validates that the current password is correct before proceeding. This follows domain level restrictions and could result in a failed change if there is a minimum time requirement between password changes, invalid password length, or invalid character. GraphQL endpoint: userChangePasswordv3' operationId: nsk_v3_user_password_change_post requestBody: x-name: request description: The change password request. content: application/json: schema: $ref: '#/components/schemas/UserChangePasswordRequestv2' examples: UserChangePasswordRequestv2: description: Updates the current user's password with the new provided one. value: currentPassword: oldPassword123! newPassword: newPassword123! required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: Error response for incorrect domain, username, or password.: description: Only returns raw message in debug mode. value: errors: - id: null code: nsk:PasswordChange:Failed message: null type: Error details: null rawMessage: 'nsk-server:AgentAuthentication: The agent (WWW/ABC123) was not authenticated' exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Error response for a locked account.: description: Only returns raw message in debug mode. value: errors: - id: null code: nsk:PasswordChange:Failed message: null type: Error details: null rawMessage: 'nsk-server:AgentLocked: The agent (WWW/ABC123) is locked.' exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Error response for minimum password time.: description: Only returns raw message in debug mode. Minimum time is determined by domain configuration. value: errors: - id: null code: nsk:PasswordChange:Failed message: null type: Error details: null rawMessage: 'nsk-server:PasswordMinimumTime: The agent (WWW/ABC123) cannot change their password before the Minimum Time is up.' exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Error response for password policy violation.: description: Only returns raw message in debug mode. Password policy is configurable and determined by the domain. value: errors: - id: null code: nsk:PasswordChange:Failed message: null type: Error details: null rawMessage: 'nsk-server:PasswordPolicy: X, Y, Z' exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null Error response when the new password is already used as password before.: description: Only returns raw message in debug mode. Unique password count is determined by domain configuration. value: errors: - id: null code: nsk-server:PasswordHistory message: nsk-server:PasswordHistory type: Information details: null rawMessage: The agent (WWW/tst01) cannot reuse this password. exception: null debugMode: The API is currently running in debug mode. In production the 'rawMessage' and 'exception' nodes will not be returned. These are for troubleshooting development issues only. data: null /api/nsk/v1/user/preferences/skySpeedSettings: get: tags: - user summary: Retrieves the default SkySpeed settings user preferences of the currently logged in user. description: 'GraphQL endpoint: userPreferencesSkySpeedSettings' operationId: nsk_v1_user_preferences_skySpeedSettings_get responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfSkySpeedSettingsUserPreferences' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' deprecated: true put: tags: - user summary: Updates the default SkySpeed settings user preferences of the currently logged in user. description: 'If the SkySpeed settings of the current user is disabled and an update is made, the settings will automatically be enabled and updated. If given, each string property is validated if it exists and is active. The collection currency setting can only be CollectionCurrencySetting.None if the collection currency code is null or empty. A bad request will be returned if the collection currency code and collection currency setting are: - Collection Currency Code is not null or empty and the Collection Currency Setting is set to CollectionCurrency.None. - Collection Currency Code is null or empty and the Collection Currency Setting is set to CollectionCurrency.Both (Any value except for CollectionCurrencySetting.None). GraphQL endpoint: userPreferencesSkySpeedSettingsSet' operationId: nsk_v1_user_preferences_skySpeedSettings_put requestBody: x-name: request description: The SkySpeed settings user preferences. content: application/json: schema: $ref: '#/components/schemas/SkySpeedSettingsUserPreferences' required: true x-position: 1 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' deprecated: true /api/nsk/v1/user/roles: get: tags: - user summary: Gets all roles from the logged in user. description: Gets all roles from the logged in user. operationId: nsk_v1_user_roles_get responses: '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfIListOfUserRole' deprecated: true post: tags: - user summary: Creates a new role on the logged in user. description: 'GraphQL endpoint: userRoleAdd' operationId: nsk_v1_user_roles_post requestBody: x-name: request description: The new role. content: application/json: schema: $ref: '#/components/schemas/UserRoleCreateRequest' required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' deprecated: true /api/nsk/v1/user/roles/{userRoleKey}: get: tags: - user summary: Gets a specific role from the logged in user. description: 'GraphQL endpoint: userRole' operationId: nsk_v1_user_roles_userRoleKey_get parameters: - name: userRoleKey in: path required: true description: The unique user role key schema: type: string x-position: 1 responses: '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfUserRole' deprecated: true put: tags: - user summary: Updates a specific role on the logged in user. description: 'GraphQL endpoint: userRoleSet' operationId: nsk_v1_user_roles_userRoleKey_put parameters: - name: userRoleKey in: path required: true description: The unique user role key. schema: type: string x-position: 1 requestBody: x-name: request description: The modified role. content: application/json: schema: $ref: '#/components/schemas/UserRoleEditRequest' required: true x-position: 2 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '500': description: A server error occurred. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' deprecated: true patch: tags: - user summary: Patches a specific role on the logged in user. description: 'GraphQL endpoint: userRoleModify' operationId: nsk_v1_user_roles_userRoleKey_patch parameters: - name: userRoleKey in: path required: true description: The unique user role key. schema: type: string x-position: 1 requestBody: x-name: request description: The patched role. content: application/json: schema: $ref: '#/components/schemas/DeltaMapperOfUserRolePatchRequest' required: true x-position: 2 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '500': description: A server error occurred. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' deprecated: true delete: tags: - user summary: Deletes a specific role on the logged in user. description: 'GraphQL endpoint: userRoleDelete' operationId: nsk_v1_user_roles_userRoleKey_delete parameters: - name: userRoleKey in: path required: true description: The unique user role key. schema: type: string x-position: 1 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' deprecated: true /api/nsk/v1/user/singleSignOnToken: get: tags: - user summary: Gets all of the single sign on tokens associated with a specific user. description: 'GraphQL endpoint: singleSignOnTokens' operationId: nsk_v1_user_singleSignOnToken_get responses: '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfIListOfUserSingleSignOnToken' /api/nsk/v1/user/singleSignOnToken/{providerKey}: get: tags: - user summary: Gets a single sign on token associated with a specific user. description: 'GraphQL endpoint: singleSignOnToken' operationId: nsk_v1_user_singleSignOnToken_providerKey_get parameters: - name: providerKey in: path required: true description: The single sign on provider key. schema: type: string x-position: 1 responses: '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfUserSingleSignOnToken' post: tags: - user summary: Links the requested token with the logged-in user. description: 'GraphQL endpoint: singleSignOnTokenAdd' operationId: nsk_v1_user_singleSignOnToken_providerKey_post parameters: - name: providerKey in: path required: true description: The single sign on provider key. schema: type: string x-position: 1 requestBody: x-name: tokenRequest description: The single sign on token request. content: application/json: schema: $ref: '#/components/schemas/SingleSignOnTokenRequest' required: true x-position: 2 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' put: tags: - user summary: Updates an existing token associated with the logged-in user. description: 'GraphQL endpoint: singleSignOnTokenSet' operationId: nsk_v1_user_singleSignOnToken_providerKey_put parameters: - name: providerKey in: path required: true description: The single sign on provider key. schema: type: string x-position: 1 requestBody: x-name: tokenRequest description: The single sign on token request. content: application/json: schema: $ref: '#/components/schemas/SingleSignOnTokenRequest' required: true x-position: 2 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '500': description: A server error occurred. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' patch: tags: - user summary: Patches an existing token associated with the logged-in user. description: 'GraphQL endpoint: singleSignOnTokenModify' operationId: nsk_v1_user_singleSignOnToken_providerKey_patch parameters: - name: providerKey in: path required: true description: The single sign on provider key. schema: type: string x-position: 1 requestBody: x-name: tokenRequest description: The single sign on token request. content: application/json: schema: $ref: '#/components/schemas/DeltaMapperOfSingleSignOnTokenRequest' required: true x-position: 2 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' '500': description: A server error occurred. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' delete: tags: - user summary: Deletes a token associated with the single sign on provider from the logged-in user. description: 'GraphQL endpoint: singleSignOnTokenDelete' operationId: nsk_v1_user_singleSignOnToken_providerKey_delete parameters: - name: providerKey in: path required: true description: The single sign on provider key. schema: type: string x-position: 1 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' components: schemas: TransportationIdentifier: type: object description: "Represents the transportation identifier model data.\n " additionalProperties: false required: - identifier - carrierCode properties: identifier: type: string description: "The unique transportation identifier.\n " maxLength: 4 minLength: 0 carrierCode: type: string description: "The carrier code.\n " maxLength: 3 minLength: 2 opSuffix: type: - string - 'null' description: "The op suffix.\nPlease note that this should be a char and not a string.\n " maxLength: 1 PersonPhoneNumberRequest: type: object description: "Defines the the person phone number.\n " additionalProperties: false required: - type - number properties: type: description: "The phone number type.\n " $ref: '#/components/schemas/PhoneNumberType' number: type: string description: "The phone number without any formatting characters.\n " maxLength: 20 minLength: 0 default: type: boolean description: "Flag indicating if this phone number is the default.\n " LegTripResult: type: object description: "Model data.\n " additionalProperties: false properties: designator: description: "Transportation information.\n " $ref: '#/components/schemas/TransportationDesignator' boardingSequence: type: integer description: "The boarding sequence number.\n " compartmentDesignator: type: - string - 'null' description: "The passenger seat compartment designator.\n " maxLength: 2 minLength: 0 unitDesignator: type: - string - 'null' description: "The passenger seat compartment designator.\n " maxLength: 2 minLength: 0 status: description: "The leg's status.\n " $ref: '#/components/schemas/LegStatus' liftStatus: description: "The lift status.\n " $ref: '#/components/schemas/LiftStatus' departureTimeUtc: type: - string - 'null' description: "The departure time using the time variant in universal time.\n " format: date-time arrivalTimeUtc: type: - string - 'null' description: "The arrival time using the time variant in universal time.\n " format: date-time UserSetting: type: object description: "Defines the agent setting configuration.\n " additionalProperties: false properties: agentSettingTypeCode: type: - string - 'null' description: "The setting type code.\n " maxLength: 20 minLength: 0 name: type: - string - 'null' description: "The setting type name.\n " maxLength: 64 minLength: 0 inActive: type: boolean description: "The in active.\n " schema: type: - string - 'null' description: "The data schema.\n " maxLength: 2147483647 minLength: 0 data: type: - string - 'null' description: "The setting data.\n " version: type: integer description: "The settings version.\n " PersonPreferenceCreateRequest: type: object description: "Defines a person preference create request.\n " additionalProperties: false properties: value: type: - string - 'null' description: "The value of the preference.\n " code: type: - string - 'null' description: "The preference code.\n " FlightResultFareType: type: integer description: "Defines which fares will be included in the flight results.\n \n\n0 = All\n1 = Monetary\n2 = Loyalty" x-enumNames: - All - Monetary - Loyalty enum: - 0 - 1 - 2 LiftStatus: type: integer description: "Lift status enumeration.\n \n\n0 = Default\n1 = CheckedIn\n2 = Boarded\n3 = NoShow" x-enumNames: - Default - CheckedIn - Boarded - NoShow enum: - 0 - 1 - 2 - 3 IJsonResponseOfIListOfUserRole: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: type: - array - 'null' description: "The payload data.\n " items: $ref: '#/components/schemas/UserRole' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' TransportationDesignator: type: object description: "Model information about the traveling arrival and destination details.\n " additionalProperties: false properties: destination: type: - string - 'null' description: "Gets or sets the leg arrival station.\n " maxLength: 3 minLength: 0 origin: type: - string - 'null' description: "Gets or sets the leg departure station.\n " maxLength: 3 minLength: 0 arrival: type: string description: "The arrival date and time local to the arrival station.\n " format: date-time departure: type: string description: "The departure date and time local to the departure station.\n " format: date-time PersonStatus: type: integer description: "The status of the person.\n \n\n0 = Active\n1 = Terminated\n2 = Suspended" x-enumNames: - Active - Terminated - Suspended enum: - 0 - 1 - 2 PersonCustomerProgramCreateRequest: type: object description: "Defines a person's customer program create request.\n " additionalProperties: false required: - programNumber - programCode properties: programNumber: type: string description: "The unique program number for the person.\n " maxLength: 32 minLength: 0 effectiveDate: type: - string - 'null' description: "The effective date.\n " format: date-time expirationDate: type: - string - 'null' description: "The expiration date.\n " format: date-time default: type: boolean description: "True if this is set as the default program.\n " programLevelCode: type: - string - 'null' description: "The program level.\n " maxLength: 3 minLength: 0 programCode: type: string description: "The program code.\n " maxLength: 3 minLength: 0 UserCustomerCreateRequest: type: object description: "Defines the user customer create request that will be setup with the defined default customer creation parameters.\n " additionalProperties: false required: - username - password - person properties: username: type: string description: "The unique username.\n " maxLength: 64 minLength: 0 password: type: string description: "The unique password.\n " minLength: 1 sendRegistrationConfirmation: type: boolean description: "Send registration configrmation.\n " person: description: "The person record to be associated with the customer.\n " $ref: '#/components/schemas/PersonCreateRequest' PersonCommentRequest: type: object description: "Defines a person comment request.\n " additionalProperties: false properties: text: type: - string - 'null' description: "The comments text.\n " type: description: "The comment type.\n " $ref: '#/components/schemas/PersonCommentType' BookingStatus: type: integer description: "Booking Status Enumeration\n \n\n0 = Default\n1 = Hold\n2 = Confirmed\n3 = Closed\n4 = HoldCanceled\n5 = PendingArchive\n6 = Archived\n7 = ArchivedPrivate\n777 = ProcessedForArchive" x-enumNames: - Default - Hold - Confirmed - Closed - HoldCanceled - PendingArchive - Archived - ArchivedPrivate - ProcessedForArchive enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 777 Exception: type: object additionalProperties: false properties: Message: type: string InnerException: $ref: '#/components/schemas/Exception' Source: type: - string - 'null' StackTrace: type: - string - 'null' PersonAliasRequest: type: object description: "Defines the person alias request.\n " additionalProperties: false properties: first: type: - string - 'null' description: "The given first name.\n " maxLength: 32 minLength: 0 middle: type: - string - 'null' description: "The given middle name.\n " maxLength: 32 minLength: 0 last: type: - string - 'null' description: "The given last name.\n " maxLength: 32 minLength: 0 title: type: - string - 'null' description: "The title.\n " maxLength: 6 minLength: 0 suffix: type: - string - 'null' description: "The suffix.\n " maxLength: 6 minLength: 0 type: description: "The type of alias.\n " $ref: '#/components/schemas/PersonAliasType' NskRoles: type: object description: "Defines the NSK role.\n " additionalProperties: false properties: inBaseRole: type: boolean description: "Flag indicating if in the base role.\n " acting: description: "The acting role.\n " $ref: '#/components/schemas/RoleBase' base: description: "The base/original role.\n " $ref: '#/components/schemas/RoleBase' CollectionCurrencySetting: type: integer description: "Defines to which the collection currency will be applied.\n \n\n0 = None\n1 = Payments\n2 = Fees\n3 = Both" x-enumNames: - None - Payments - Fees - Both enum: - 0 - 1 - 2 - 3 UserRole: type: object description: "Defines a user role.\n " additionalProperties: false required: - roleCode - effectiveAfter properties: roleName: type: - string - 'null' description: "The role's name.\n " parentRoleCode: type: - string - 'null' description: "The parents role code.\n " roleCode: type: string description: "The unique role code.\n " minLength: 1 effectiveDays: type: - array - 'null' description: "The days the role is effective.\n " items: $ref: '#/components/schemas/DayOfWeek' effectiveAfter: type: string description: "The date the role is effective after.\n " format: date-time minLength: 1 effectiveBefore: type: - string - 'null' description: "The date the role is effective before.\n " format: date-time userRoleKey: type: - string - 'null' description: "The user role key.\n " MessageStatus: type: integer description: "Defines the message status.\n \n\n0 = General\n1 = Warning\n2 = Critical" x-enumNames: - General - Warning - Critical enum: - 0 - 1 - 2 PersonCommentType: type: integer description: "Defines the different types of person comments.\n \n\n0 = Default\n1 = Itinerary\n2 = Manifest\n3 = Alert\n4 = Archive\n5 = Voucher" x-enumNames: - Default - Itinerary - Manifest - Alert - Archive - Voucher enum: - 0 - 1 - 2 - 3 - 4 - 5 User: type: object description: "Defines a unique user.\n " additionalProperties: false required: - roles - username - codes properties: lastAlertReadDate: type: - string - 'null' description: "The date the alerts were last read.\n " format: date-time lastNewsReadDate: type: - string - 'null' description: "The date the news was last read.\n " format: date-time allowed: type: boolean description: "Flag indicating if status is allowed.\n " lastLogon: type: - string - 'null' description: "The data and time of last login.\n " format: date-time passwordLastChanged: type: - string - 'null' description: "The date and time the password was last changed.\n " format: date-time roles: type: array description: "The collection of authorized roles.\n " items: $ref: '#/components/schemas/UserRole' settings: type: - array - 'null' description: "The collection of agent settings.\n " items: $ref: '#/components/schemas/UserSetting' status: description: "The status of the account.\n " $ref: '#/components/schemas/UserStatus' username: type: string description: "The unique username.\n " maxLength: 64 minLength: 0 codes: description: "The identifying agent codes.\n " $ref: '#/components/schemas/UserCodes' hireDate: type: - string - 'null' description: "The date the agent was hired.\n " format: date-time terminationDate: type: - string - 'null' description: "The date the agent was terminated.\n " format: date-time note: type: - string - 'null' description: "The agent's note.\n " traceQueueCode: type: - string - 'null' description: "The trace logging queue code.\n " locked: type: boolean description: "Flag indicating if the account is locked.\n " forcePasswordReset: type: - boolean - 'null' description: "Flag indicating if the password needs to be reset.\n " userKey: type: - string - 'null' description: "The unique user key.\n " personKey: type: - string - 'null' description: "The unique person key associated to the user.\n " Gender: type: integer description: "Defines the different binary gender types.\n \n\n0 = XX\n1 = Male\n2 = Female" x-enumNames: - XX - Male - Female enum: - 0 - 1 - 2 DeltaMapperOfSingleSignOnTokenRequest: type: object description: "Map delta changes of a specific type T to another object.\n " additionalProperties: false properties: singleSignOn: type: string description: "The single sign on token.\n " maxLength: 256 minLength: 0 expirationDate: type: - string - 'null' description: "The single sign on token expiration date.\n " format: date-time IJsonResponseOfIListOfUserSingleSignOnToken: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: type: - array - 'null' description: "The payload data.\n " items: $ref: '#/components/schemas/UserSingleSignOnToken' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' PersonTravelDocumentRequest: type: object description: "Defines the person travel document.\n " additionalProperties: false required: - documentTypeCode properties: documentTypeCode: type: string description: "The unique travel document type code.\n " maxLength: 4 minLength: 0 issuedByCode: type: - string - 'null' description: "The issuer code for the travel document (country code).\n " maxLength: 3 minLength: 0 birthCountry: type: - string - 'null' description: "The BirthCountry property.\n " name: description: "The Name property.\n " $ref: '#/components/schemas/Name' nationality: type: - string - 'null' description: "The Nationality property.\n " maxLength: 2 minLength: 0 expirationDate: type: - string - 'null' description: "The date when this travel document expires.\n " format: date-time number: type: - string - 'null' description: "The travel document number.\n " maxLength: 35 minLength: 0 issuedDate: type: - string - 'null' description: "The date this travel document was issued.\n " format: date-time gender: description: "The travel document holder's gender.\n " $ref: '#/components/schemas/Gender' dateOfBirth: type: - string - 'null' description: "The person's date of birth.\n " format: date-time declaredGender: type: - string - 'null' description: "The travel document holder's declared gender.\nThis will override the gender field on passenger or person POST, PUT, and PATCH requests.\nNote: Any value other than \"F\" will cause gender to be updated to Male by default to support compatibility with\nother systems.\nAdditionally you cannot change the declared gender and gender fields at the same time as declared gender\nwill override any gender field value regardless of the value passed in.\n " maxLength: 2 minLength: 0 placeOfBirth: type: - string - 'null' description: "Represents the place of birth. Only used on the following document type groups: TravelVisa (9), RedressNumber (20),\nand KnownTravelerId (21).\nOnly allows alpha characters, please do not use spaces, numbers, or special characters.\nNote: If unsure which travel document types fall into these groups please use `/api/nsk/v1/resources/DocumentTypes`\nor `/api/nsk/v1/resources/DocumentTypes/{documentTypeCode}`\n " maxLength: 35 minLength: 0 pattern: ^[A-Za-z\s]*$ placeOfIssue: type: - string - 'null' description: "Represents the place of issue. Only used on the following document type groups: TravelVisa (9), RedressNumber (20),\nand KnownTravelerId (21).\nOnly allows alpha characters, please do not use spaces, hyphens, or special characters.\nNote: If unsure which travel document types fall into these groups please use `/api/nsk/v1/resources/DocumentTypes`\nor `/api/nsk/v1/resources/DocumentTypes/{documentTypeCode}`\n " maxLength: 35 minLength: 0 pattern: ^[A-Za-z\s]*$ default: type: boolean description: "Flag indicating if the travel document is the default.\n " Name: type: object description: "Defines a common name.\n " additionalProperties: false properties: first: type: - string - 'null' description: "The given first name.\n " maxLength: 32 minLength: 0 middle: type: - string - 'null' description: "The given middle name.\n " maxLength: 32 minLength: 0 last: type: - string - 'null' description: "The given last name.\n " maxLength: 32 minLength: 0 title: type: - string - 'null' description: "The title.\n " maxLength: 6 minLength: 0 suffix: type: - string - 'null' description: "The suffix.\n " maxLength: 6 minLength: 0 IJsonResponseOfNskRoles: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/NskRoles' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' UserRequest: type: object description: "Defines the user request.\n " additionalProperties: false required: - username - codes properties: status: description: "The status of the account.\n " $ref: '#/components/schemas/UserStatus' username: type: string description: "The unique username.\n " maxLength: 64 minLength: 0 codes: description: "The identifying agent codes.\n " $ref: '#/components/schemas/UserCodes' hireDate: type: - string - 'null' description: "The date the agent was hired.\n " format: date-time terminationDate: type: - string - 'null' description: "The date the agent was terminated.\n " format: date-time note: type: - string - 'null' description: "The agent's note.\n " traceQueueCode: type: - string - 'null' description: "The trace logging queue code.\n " locked: type: boolean description: "Flag indicating if the account is locked.\n " forcePasswordReset: type: - boolean - 'null' description: "Flag indicating if the password needs to be reset.\n " DeltaMapperOfUserRequest: type: object description: "Map delta changes of a specific type T to another object.\n " additionalProperties: false properties: status: description: "The status of the account.\n " $ref: '#/components/schemas/UserStatus' username: type: string description: "The unique username.\n " maxLength: 64 minLength: 0 codes: description: "The identifying agent codes.\n " properties: departmentCode: type: string description: "The user's department code.\n " maxLength: 4 minLength: 1 locationCode: type: string description: "The user's location code.\n " maxLength: 5 minLength: 1 locationGroupCode: type: - string - 'null' description: "The user's location group code.\n " organizationCode: type: string description: "The user's organization code.\n " maxLength: 10 minLength: 0 organizationGroupCode: type: - string - 'null' description: "The user's organization group code.\n " domainCode: type: string description: "The user's domain code.\n " maxLength: 3 minLength: 0 hireDate: type: - string - 'null' description: "The date the agent was hired.\n " format: date-time terminationDate: type: - string - 'null' description: "The date the agent was terminated.\n " format: date-time note: type: - string - 'null' description: "The agent's note.\n " traceQueueCode: type: - string - 'null' description: "The trace logging queue code.\n " locked: type: boolean description: "Flag indicating if the account is locked.\n " forcePasswordReset: type: - boolean - 'null' description: "Flag indicating if the password needs to be reset.\n " PersonType: type: integer description: "Defines the type of person.\n \n\n0 = None\n1 = Customer\n2 = Agent" x-enumNames: - None - Customer - Agent enum: - 0 - 1 - 2 RoleBase: type: object description: "Defines the base role.\n " additionalProperties: false properties: roleCode: type: - string - 'null' description: "The unique role code.\n " name: type: - string - 'null' description: "The role's name.\n " IJsonResponseOfUserRole: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/UserRole' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' EmailCreateRequest: type: object description: "Defines the person email create address.\n " additionalProperties: false required: - email - type properties: email: type: string description: "The email address value.\n " maxLength: 266 minLength: 0 default: type: boolean description: "Flag indicating if the email is the default.\n " type: type: string description: "The type code of the email address.\nPlease note that this should be a char and not a string.\n " maxLength: 1 minLength: 1 PersonAffiliation: type: object description: "Defines the person affiliation.\n " additionalProperties: false required: - name properties: name: type: string description: "The name of the affiliated person.\n " minLength: 1 personAffiliationKey: type: - string - 'null' description: "The unique person affiliation key.\n " LegStatus: type: integer description: "Leg status enumeration.\n \n\n0 = Normal\n1 = Closed\n2 = Canceled\n3 = Suspended\n5 = ClosedPending\n6 = BlockAllActivities\n7 = Mishap" x-enumNames: - Normal - Closed - Canceled - Suspended - ClosedPending - BlockAllActivities - Mishap enum: - 0 - 1 - 2 - 3 - 5 - 6 - 7 SkySpeedSettingsUserPreferences: type: object description: "Defines the SkySpeed default settings for the currently logged in user.\n " additionalProperties: false properties: currencyCode: type: - string - 'null' description: "The default currency.\n " maxLength: 3 minLength: 0 cultureCode: type: - string - 'null' description: "The default culture code.\n " maxLength: 17 minLength: 0 countryCode: type: - string - 'null' description: "The default country.\n " maxLength: 2 minLength: 0 nationality: type: - string - 'null' description: "The default nationality.\n " maxLength: 2 minLength: 0 collectionCurrencyCode: type: - string - 'null' description: "The currency that is used for fees and SSRs other than the default currency.\n " maxLength: 3 minLength: 0 collectionCurrencySetting: description: "Indicates to which the collection currency will be applied to.\n " $ref: '#/components/schemas/CollectionCurrencySetting' flightResultFareType: description: "Indicates whether to display flights with monetary, loyalty or both fares in the flight results.\n " $ref: '#/components/schemas/FlightResultFareType' DeltaMapperOfUserRolePatchRequest: type: object description: "Map delta changes of a specific type T to another object.\n " additionalProperties: false properties: effectiveAfter: type: string description: "The date the role is effective after.\n " format: date-time minLength: 1 effectiveBefore: type: - string - 'null' description: "The date the role is effective before.\n " format: date-time UserImpersonateRequest: type: object description: "Defines a user impersonate request.\n " additionalProperties: false required: - roleCode properties: roleCode: type: string description: "The role to impersonate.\n " minLength: 1 IJsonResponseOfUser: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/User' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' IJsonResponseOfSkySpeedSettingsUserPreferences: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/SkySpeedSettingsUserPreferences' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' PhoneNumberType: type: integer description: "Defines the types of phone numbers. Note: New Skies does not support Mobile for booking contacts.\n \n\n0 = Other\n1 = Home\n2 = Work\n3 = Mobile\n4 = Fax" x-enumNames: - Other - Home - Work - Mobile - Fax enum: - 0 - 1 - 2 - 3 - 4 PriceStatus: type: integer description: "Describes the fare pricing status\n \n\n0 = Invalid\n1 = Override\n2 = Valid" x-enumNames: - Invalid - Override - Valid enum: - 0 - 1 - 2 PaymentMethodType: type: integer description: "Defines the payment method types.\n \n\n0 = ExternalAccount\n1 = PrePaid\n2 = AgencyAccount\n3 = CustomerAccount\n4 = Voucher\n5 = Loyalty" x-enumNames: - ExternalAccount - PrePaid - AgencyAccount - CustomerAccount - Voucher - Loyalty enum: - 0 - 1 - 2 - 3 - 4 - 5 PersonStoredPaymentRequest: type: object description: "Defines the person's stored payment create request.\n " additionalProperties: false required: - paymentMethodType - paymentMethodCode - accountNumber properties: paymentMethodType: description: "The type of payment being added.\n " $ref: '#/components/schemas/PaymentMethodType' accountName: type: - string - 'null' description: "The name of the account.\n " maxLength: 64 minLength: 0 expiration: type: - string - 'null' description: "The expiration.\n " format: date-time paymentMethodCode: type: string description: "The payment method code.\n " maxLength: 2 minLength: 1 default: type: boolean description: "Indicates if the stored payment is the default.\n " accountNumber: type: string description: "The account number.\n " maxLength: 34 minLength: 0 PersonBasicInformation: type: object description: "Defines the person's basic information.\n " additionalProperties: false properties: gender: description: "The person's gender.\n " $ref: '#/components/schemas/Gender' dateOfBirth: type: - string - 'null' description: "The person's date of birth.\n " format: date-time nationality: type: - string - 'null' description: "The person's nationality.\n " residentCountry: type: - string - 'null' description: "The person's resident country.\n " passengerType: type: - string - 'null' description: "The type of passenger the person is.\n " preferredCultureCode: type: - string - 'null' description: "The person's preferred culture code.\n " preferredCurrencyCode: type: - string - 'null' description: "The person's preferred currency code.\n " nationalIdNumber: type: - string - 'null' description: "The person's national ID number.\n " declaredGender: type: - string - 'null' description: "The person's declared gender. A value of \"F\" is mapped to a female binary gender. All other values will be\nmapped to a male binary gender.\n " maxLength: 2 minLength: 0 SegmentTripResult: type: object description: "Model data.\n " additionalProperties: false properties: designator: description: "This is a summary of all the legs on the segment. It will contain the details\nof the transportation from the first and last leg.\n " $ref: '#/components/schemas/TransportationDesignator' classOfService: type: - string - 'null' description: "The class of service.\n " maxLength: 8 minLength: 0 activityDate: type: - string - 'null' description: "The activity date.\n " format: date-time identifier: description: "The transportation identifier.\n " $ref: '#/components/schemas/TransportationIdentifier' externalIdentifier: description: "The external transportation identifier.\n " $ref: '#/components/schemas/TransportationIdentifier' legs: type: - array - 'null' description: "The associated leg information.\n " items: $ref: '#/components/schemas/LegTripResult' journeyIndex: type: integer description: "The journey index the segment is related to relative to the booking.\n " segmentIndex: type: integer description: "The segment index the segment is related to relative to the booking.\n " ErrorResponse: type: object description: "Defines a unique error response.\n " additionalProperties: false properties: exception: description: "The original exception that was thrown and all the exception details.\n " $ref: '#/components/schemas/Exception' rawMessage: type: - string - 'null' description: "The original raw message set (non-localized).\n " code: type: - string - 'null' description: "The unique error code. The primary value used to match against a unique message localized for the end user in the\nchosen language.\n " message: type: - string - 'null' description: "The error message. Deprecated: Please use the Code instead.\n " type: type: - string - 'null' description: "The error type showing severity. Values: Critical, Error, Validation, Information.\n " number: type: - integer - 'null' description: "A unique identifier in numeric form. This is required for Splunk logging. If none is provided a number will be\ngenerated based on code and type.\n " format: int32 maximum: 99999.0 minimum: 0.0 details: type: - object - 'null' description: "Dynamic detailed information about the error.\n " additionalProperties: type: string ActivityId: type: - string - 'null' description: "The activity ID unique to the request. Useful for debugging purposes to uniquely look up what happened for this\nspecific request.\n " UserRoleCreateRequest: type: object description: "Defines the user role create request.\n " additionalProperties: false required: - effectiveAfter - roleCode properties: effectiveDays: type: - array - 'null' description: "The days the role is effective.\n " items: $ref: '#/components/schemas/DayOfWeek' effectiveAfter: type: string description: "The date the role is effective after.\n " format: date-time minLength: 1 effectiveBefore: type: - string - 'null' description: "The date the role is effective before.\n " format: date-time roleCode: type: string description: "The unique role code.\n " minLength: 1 UserChangePasswordRequestv2: type: object description: "Defines a user change password request.\n " additionalProperties: false required: - newPassword - currentPassword properties: newPassword: type: string description: "The new password.\n " maxLength: 256 minLength: 0 currentPassword: type: string description: "The current user's password.\n " maxLength: 256 minLength: 0 IJsonResponseOfUserSingleSignOnToken: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/UserSingleSignOnToken' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' Message: type: object description: "Defines a unique informational message.\n " additionalProperties: false properties: code: type: - string - 'null' description: "The unique message code.\n " type: type: - string - 'null' description: "The message type.\n " value: type: - string - 'null' description: "The message's value.\n " status: description: "The message's status.\n " $ref: '#/components/schemas/MessageStatus' details: type: - object - 'null' description: "Dynamic detailed information about the message.\n " additionalProperties: type: string IJsonResponseOfIListOfBookingSearchResult: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: type: - array - 'null' description: "The payload data.\n " items: $ref: '#/components/schemas/BookingSearchResult' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' NotificationPreference: type: integer description: "Describes types of notifications the user would prefer.\n \n\n0 = None\n1 = Promotional" x-enumNames: - None - Promotional enum: - 0 - 1 PersonCreateRequest: type: object description: "Defines the person create request.\n " additionalProperties: false required: - name properties: customerNumber: type: - string - 'null' description: "The unique person customer number.\n " maxLength: 20 minLength: 0 type: description: "The type of person.\n " $ref: '#/components/schemas/PersonType' status: description: "The status of the person.\n " $ref: '#/components/schemas/PersonStatus' details: description: "The person's basic information.\n " $ref: '#/components/schemas/PersonBasicInformation' notificationPreference: description: "The person's notification preference.\n " $ref: '#/components/schemas/NotificationPreference' name: description: "The persons true name.\n " $ref: '#/components/schemas/Name' emailAddresses: type: - array - 'null' description: "The collection of registered email address.\n " items: $ref: '#/components/schemas/EmailCreateRequest' phoneNumbers: type: - array - 'null' description: "The collection of registered phone numbers.\n " items: $ref: '#/components/schemas/PersonPhoneNumberRequest' addresses: type: - array - 'null' description: "The collection of known addresses.\n " items: $ref: '#/components/schemas/PersonAddressCreateRequest' storedPayments: type: - array - 'null' description: "The collection of registered stored payments.\n " items: $ref: '#/components/schemas/PersonStoredPaymentRequest' travelDocuments: type: - array - 'null' description: "The collection of registered travel documents.\n " items: $ref: '#/components/schemas/PersonTravelDocumentRequest' programs: type: - array - 'null' description: "The collection of enrolled customer programs.\n " items: $ref: '#/components/schemas/PersonCustomerProgramCreateRequest' comments: type: - array - 'null' description: "The collection of comments.\n " items: $ref: '#/components/schemas/PersonCommentRequest' preferences: type: - array - 'null' description: "The collection of preferences.\n " items: $ref: '#/components/schemas/PersonPreferenceCreateRequest' aliases: type: - array - 'null' description: "The collection of alternate names for the person.\n " items: $ref: '#/components/schemas/PersonAliasRequest' affiliates: type: - array - 'null' description: "The collection of affiliates for the person.\n " items: $ref: '#/components/schemas/PersonAffiliation' UserSingleSignOnToken: type: object description: "Defines a user's single sign on token.\n " additionalProperties: false required: - singleSignOn properties: providerKey: type: - string - 'null' description: "The unique single sign on provider key.\n " singleSignOn: type: string description: "The single sign on token.\n " maxLength: 256 minLength: 0 expirationDate: type: - string - 'null' description: "The single sign on token expiration date.\n " format: date-time BookingSearchResult: type: object description: "Booking model data.\n " additionalProperties: false properties: bookingKey: type: - string - 'null' description: "The booking key.\n " allowedToModifyGdsBooking: type: boolean description: "Indicates whether it is allowed to modify GDS booking.\n " bookingStatus: description: "The booking status.\n " $ref: '#/components/schemas/BookingStatus' channelType: description: "The type of the channel.\n " $ref: '#/components/schemas/ChannelType' editable: type: boolean description: "Indicates whether this is editable.\n " expiredDate: type: - string - 'null' description: "The expired date.\n " format: date-time flightDate: type: - string - 'null' description: "Flight date.\n " format: date-time flightNumber: type: - string - 'null' description: "The flight number.\n " origin: type: - string - 'null' description: "Origin.\n " passengerId: type: - integer - 'null' description: "The passenger id.\n " format: int64 recordLocator: type: - string - 'null' description: "The record locator.\n " sourceAgentCode: type: - string - 'null' description: "The source agent code.\n " sourceDomainCode: type: - string - 'null' description: "The source domain code.\n " sourceOrganizationCode: type: - string - 'null' description: "The source organization code.\n " systemCode: type: - string - 'null' description: "The system code.\n " destination: type: - string - 'null' description: "Destination.\n " name: description: "The name on the booking.\n " $ref: '#/components/schemas/Name' UserCodes: type: object description: "Defines all the different user codes.\n " additionalProperties: false required: - departmentCode - locationCode - organizationCode - domainCode properties: departmentCode: type: string description: "The user's department code.\n " maxLength: 4 minLength: 1 locationCode: type: string description: "The user's location code.\n " maxLength: 5 minLength: 1 locationGroupCode: type: - string - 'null' description: "The user's location group code.\n " organizationCode: type: string description: "The user's organization code.\n " maxLength: 10 minLength: 0 organizationGroupCode: type: - string - 'null' description: "The user's organization group code.\n " domainCode: type: string description: "The user's domain code.\n " maxLength: 3 minLength: 0 ChannelType: type: integer description: "Defines the available channel types doing invoking the communication with the server.\n \n\n0 = Default\n1 = Direct\n2 = Web\n3 = Gds\n4 = Api\n5 = DigitalApi\n6 = DigitalWeb\n7 = Ndc" x-enumNames: - Default - Direct - Web - Gds - Api - DigitalApi - DigitalWeb - Ndc enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 UserStatus: type: integer description: "Defines the status of a user.\n \n\n0 = Default\n1 = Active\n2 = Pending\n3 = Suspended\n4 = Terminated" x-enumNames: - Default - Active - Pending - Suspended - Terminated enum: - 0 - 1 - 2 - 3 - 4 BookingTripResult: type: object description: "Booking flight result data.\n " additionalProperties: false properties: recordLocator: type: - string - 'null' description: "The record locator.\n " bookingStatus: description: "The booking status.\n " $ref: '#/components/schemas/BookingStatus' priceStatus: description: "The price status.\n " $ref: '#/components/schemas/PriceStatus' paidStatus: description: "The paid status.\n " $ref: '#/components/schemas/PaidStatus' createdDate: type: - string - 'null' description: "The UTC date and time of when the booking was created.\n " format: date-time firstName: type: - string - 'null' description: "The first name on the booking.\n " lastName: type: - string - 'null' description: "The last name on the booking.\n " customerNumber: type: - string - 'null' description: "The customer number on the booking.\n " segments: type: - array - 'null' description: "The applicable segments.\n " items: $ref: '#/components/schemas/SegmentTripResult' UserRoleEditRequest: type: object description: "Defines the user role edit request.\n " additionalProperties: false required: - effectiveAfter properties: effectiveAfter: type: string description: "The date the role is effective after.\n " format: date-time minLength: 1 effectiveBefore: type: - string - 'null' description: "The date the role is effective before.\n " format: date-time effectiveDays: type: - array - 'null' description: "The days the role is effective.\n " items: $ref: '#/components/schemas/DayOfWeek' IJsonResponse: type: object description: "Defines the JSON response contract for a not content type response.\n " additionalProperties: false properties: data: description: "The payload data, this will always be null for errors responses and no content responses.\n " errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' DayOfWeek: type: integer description: "Defines the day of the week with none as an option.\n \n\n0 = None\n1 = Monday\n2 = Tuesday\n3 = Wednesday\n4 = Thursday\n5 = Friday\n6 = Saturday\n7 = Sunday" x-enumNames: - None - Monday - Tuesday - Wednesday - Thursday - Friday - Saturday - Sunday enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 SingleSignOnTokenRequest: type: object description: "Defines the single sign on token request.\n " additionalProperties: false required: - singleSignOn properties: singleSignOn: type: string description: "The single sign on token.\n " maxLength: 256 minLength: 0 expirationDate: type: - string - 'null' description: "The single sign on token expiration date.\n " format: date-time PaidStatus: type: integer description: "Paid status enumeration.\n \n\n0 = UnderPaid\n1 = PaidInFull\n2 = OverPaid" x-enumNames: - UnderPaid - PaidInFull - OverPaid enum: - 0 - 1 - 2 IJsonResponseOfIListOfBookingTripResult: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: type: - array - 'null' description: "The payload data.\n " items: $ref: '#/components/schemas/BookingTripResult' errors: type: - array - 'null' description: "The collection of errors being thrown.\n " items: $ref: '#/components/schemas/ErrorResponse' messages: type: - array - 'null' description: "The collection of informational messages.\n " items: $ref: '#/components/schemas/Message' PersonAddressCreateRequest: type: object description: "Defines a person address request.\n " additionalProperties: false required: - addressTypeCode properties: default: type: boolean description: "Flag indicating if the address is the persons default.\n " lineOne: type: - string - 'null' description: "The address line one.\n " maxLength: 128 minLength: 0 lineTwo: type: - string - 'null' description: "The address line two.\n " maxLength: 128 minLength: 0 lineThree: type: - string - 'null' description: "The address line 3.\n " maxLength: 128 minLength: 0 countryCode: type: - string - 'null' description: "The country code.\n " maxLength: 2 minLength: 0 provinceState: type: - string - 'null' description: "The province state.\n " maxLength: 3 minLength: 0 city: type: - string - 'null' description: "The city.\n " maxLength: 32 minLength: 0 postalCode: type: - string - 'null' description: "The postal code.\n " maxLength: 10 minLength: 0 addressTypeCode: type: string description: "The type of address.\nPlease note that this should be a char and not a string.\n " maxLength: 1 minLength: 1 PersonAliasType: type: integer description: "Defines the type of alternate name.\n \n\n0 = Alias\n1 = Variant" x-enumNames: - Alias - Variant enum: - 0 - 1 securitySchemes: JWT: type: http description: Paste your JWT token from the token endpoint. scheme: bearer bearerFormat: jwt x-generator: NSwag v14.6.3.0 (NJsonSchema v11.5.2.0 (Newtonsoft.Json v13.0.0.0))