openapi: 3.2.0 info: title: NewSkies-Digital-Api Contacts 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: contacts paths: /api/nsk/v1/contacts/searchByPhoneNumber: get: tags: - contacts summary: Gets the latest contact in a booking with a specific phone number. description: 'GraphQL endpoint: contactsByPhoneNumber' operationId: nsk_v1_contacts_searchByPhoneNumber_get parameters: - name: PhoneNumber in: query description: "The phone number.\n " schema: type: - string - 'null' maxLength: 20 minLength: 4 x-position: 1 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfContact' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' components: schemas: Exception: type: object additionalProperties: false properties: Message: type: string InnerException: $ref: '#/components/schemas/Exception' Source: type: - string - 'null' StackTrace: type: - string - 'null' Address: type: object description: "Defines a common address.\n " additionalProperties: false properties: 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 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 DistributionOption: type: integer description: "This enumeration specifies the distribution methods for sending notifications.\n \n\n0 = None\n1 = Mail\n2 = Email\n3 = Fax\n4 = MailFax\n5 = Airport\n6 = Hold\n7 = Print" x-enumNames: - None - Mail - Email - Fax - MailFax - Airport - Hold - Print enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 PhoneNumber: type: object description: "Defines a common phone number.\n " additionalProperties: false required: - number - type properties: number: type: string description: "The phone number without any formatting characters.\n " maxLength: 20 minLength: 0 type: description: "The phone number type.\n " $ref: '#/components/schemas/PhoneNumberType' Contact: type: object description: "Contact model describing a person contact information.\n " additionalProperties: false required: - contactTypeCode properties: phoneNumbers: type: - array - 'null' description: "The collection of phone numbers.\nSupported types: Home, Work, Fax, Other.\nThis collections can only contain one number for each supported type.\n " items: $ref: '#/components/schemas/PhoneNumber' cultureCode: type: - string - 'null' description: "The culture code.\n " maxLength: 17 minLength: 0 address: description: "The contact address.\n " $ref: '#/components/schemas/Address' emailAddress: type: - string - 'null' description: "The email address of the contact.\n " customerNumber: type: - string - 'null' description: "The customer number.\n " maxLength: 20 minLength: 0 sourceOrganization: type: - string - 'null' description: "Source organization.\n " maxLength: 10 minLength: 0 distributionOption: description: "The contact distribution option.\n " $ref: '#/components/schemas/DistributionOption' notificationPreference: description: "The notification preference of the contact.\n " $ref: '#/components/schemas/NotificationPreference' companyName: type: - string - 'null' description: "The company name.\n " maxLength: 64 minLength: 0 name: description: "The contact's name.\n " $ref: '#/components/schemas/Name' contactTypeCode: type: string description: "The contact type code. There can only be one contact of a specific type on the booking.\nTypically only one contact is used. Null values will be replaced by the primary contact type code.\nPlease note that this should be a char and not a string.\n " maxLength: 1 minLength: 1 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 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' IJsonResponseOfContact: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/Contact' 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' 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 " 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 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 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 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))