openapi: 3.2.0 info: title: NewSkies-Digital-Api Voucher Issuance 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: voucherIssuance paths: /api/nsk/v1/voucherIssuance: post: tags: - voucherIssuance summary: Creates vouchers based upon data in the request. description: 'This endpoint requires agent permissions. Note that creating high volume voucher issuance results in a batch job which may not process immediately. GraphQL endpoint: voucherIssuanceAdd' operationId: nsk_v1_voucherIssuance_post requestBody: x-name: request description: The voucher issuance request. content: application/json: schema: $ref: '#/components/schemas/VoucherIssuanceRequest' 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: Agent not allowed to issue voucher: description: Example response when issuing vouchers using an agent that is not allowed to issue vouchers. value: errors: - id: null code: nsk:VoucherIssuanceResponse:VoucherIssuanceFailed message: nsk:VoucherIssuanceResponse:VoucherIssuanceFailed type: Validation details: voucherConfigurationCode: VOUCH1 voucherWarningMessage: Agent is not authorized to create any vouchers. rawMessage: The request to issue vouchers has failed. Check user permissions or see voucher configuration 'VOUCH1' to verify the voucher issuance requirements. 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 Voucher configuration restricted for the agent: description: Example response when an agent issues vouchers under a restricted voucher configuration. value: errors: - id: null code: nsk:VoucherIssuanceResponse:VoucherIssuanceFailed message: nsk:VoucherIssuanceResponse:VoucherIssuanceFailed type: Validation details: voucherConfigurationCode: VOUCH2 voucherWarningMessage: Agent is not authorized to create vouchers with voucher basis code VOUCH2. rawMessage: The request to issue vouchers has failed. Check user permissions or see voucher configuration 'VOUCH2' to verify the voucher issuance requirements. 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 Voucher configuration is disabled: description: Example response when an agent issues vouchers under a disabled voucher configuration. value: errors: - id: null code: nsk:VoucherIssuanceResponse:VoucherIssuanceFailed message: nsk:VoucherIssuanceResponse:VoucherIssuanceFailed type: Validation details: voucherConfigurationCode: VOUCH3 voucherWarningMessage: Cannot create vouchers for disabled voucher basis (VOUCH3). rawMessage: The request to issue vouchers has failed. Check user permissions or see voucher configuration 'VOUCH3' to verify the voucher issuance requirements. 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 With null request: description: Example response when attempting to call the endpoint with null request value: errors: - id: null code: core:Validation:NullRequest message: core:Validation:NullRequest type: Error details: null rawMessage: The request is null or couldn't be converted to the expected data type. 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 deprecated: true /api/nsk/v2/voucherIssuance: post: tags: - voucherIssuance summary: Creates vouchers based upon data in the request. description: 'This endpoint requires agent permissions. Note that creating high volume voucher issuance results in a batch job which may not process immediately. GraphQL endpoint: voucherIssuanceAdd' operationId: nsk_v2_voucherIssuance_post requestBody: x-name: request description: The voucher issuance request. content: application/json: schema: $ref: '#/components/schemas/VoucherIssuanceRequest' examples: Issue Voucher: description: Example request for issuing a voucher. value: recordLocator: PNRPNR firstName: John lastName: Doe personKey: MUNzPRfx quantity: 1 customerNumber: '10000000000000000001' sendFiles: true ssrCode: WCHR configurationCode: APIMKT issuanceReasonCode: VRA note: Voucher Issuance market: destination: BOS origin: SLC departureDate: '2026-07-09T05:55:14.5590145Z' identifier: '5600' carrierCode: NV opSuffix: null expiration: '2027-07-09T05:55:14.5590644Z' currencyCode: USD amount: 1.0 required: true x-position: 1 responses: '201': description: The item was created successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfReducedVoucherResponse' examples: Create Voucher Successful: description: Example when voucher is created successfully value: data: references: - '10000000000000000' issuanceKey: Nzgz0TQhQ1JH '400': description: There was a problem with the request and it could not be completed. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' examples: Agent not allowed to issue voucher: description: Example response when issuing vouchers using an agent that is not allowed to issue vouchers. value: errors: - id: null code: nsk:VoucherIssuanceResponse:VoucherIssuanceFailed message: nsk:VoucherIssuanceResponse:VoucherIssuanceFailed type: Validation details: voucherConfigurationCode: VOUCH1 voucherWarningMessage: Agent is not authorized to create any vouchers. rawMessage: The request to issue vouchers has failed. Check user permissions or see voucher configuration 'VOUCH1' to verify the voucher issuance requirements. 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 Voucher configuration restricted for the agent: description: Example response when an agent issues vouchers under a restricted voucher configuration. value: errors: - id: null code: nsk:VoucherIssuanceResponse:VoucherIssuanceFailed message: nsk:VoucherIssuanceResponse:VoucherIssuanceFailed type: Validation details: voucherConfigurationCode: VOUCH2 voucherWarningMessage: Agent is not authorized to create vouchers with voucher basis code VOUCH2. rawMessage: The request to issue vouchers has failed. Check user permissions or see voucher configuration 'VOUCH2' to verify the voucher issuance requirements. 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 Voucher configuration is disabled: description: Example response when an agent issues vouchers under a disabled voucher configuration. value: errors: - id: null code: nsk:VoucherIssuanceResponse:VoucherIssuanceFailed message: nsk:VoucherIssuanceResponse:VoucherIssuanceFailed type: Validation details: voucherConfigurationCode: VOUCH3 voucherWarningMessage: Cannot create vouchers for disabled voucher basis (VOUCH3). rawMessage: The request to issue vouchers has failed. Check user permissions or see voucher configuration 'VOUCH3' to verify the voucher issuance requirements. 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 With null request: description: Example response when attempting to call the endpoint with null request value: errors: - id: null code: core:Validation:NullRequest message: core:Validation:NullRequest type: Error details: null rawMessage: The request is null or couldn't be converted to the expected data type. 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/voucherIssuance/{voucherIssuanceKey}: get: tags: - voucherIssuance summary: Gets a voucher issuance based upon the voucher issuance key. description: 'This endpoint requires agent permissions. GraphQL endpoint: voucherIssuance' operationId: nsk_v1_voucherIssuance_voucherIssuanceKey_get parameters: - name: voucherIssuanceKey in: path required: true description: The voucher issuance key. schema: type: string x-position: 1 responses: '200': description: OK. Request completed successfully. content: application/json: schema: $ref: '#/components/schemas/IJsonResponseOfVoucherIssuance' '404': description: The item was not found. content: application/json: schema: $ref: '#/components/schemas/IJsonResponse' components: schemas: VoucherIssuanceRequest: type: object description: "The voucher issuance request model.\n " additionalProperties: false required: - configurationCode - issuanceReasonCode properties: configurationCode: type: string description: "The voucher configuration code.\n " maxLength: 6 minLength: 0 issuanceReasonCode: type: string description: "The voucher issuance reason code.\n " maxLength: 4 minLength: 0 note: type: - string - 'null' description: "The voucher issuance note.\n " maxLength: 256 minLength: 0 market: description: "Market details associated with the voucher issuance.\n " $ref: '#/components/schemas/VoucherMarketInformation' expiration: type: - string - 'null' description: "The voucher expiration date.\n " format: date-time currencyCode: type: - string - 'null' description: "The currency code.\n " maxLength: 3 minLength: 0 amount: type: number description: "The amount of currency.\n " format: decimal recordLocator: type: - string - 'null' description: "The record locator.\n " maxLength: 12 minLength: 0 firstName: type: - string - 'null' description: "The passenger's first name.\n " maxLength: 64 minLength: 0 lastName: type: - string - 'null' description: "The passenger's last name.\n " maxLength: 64 minLength: 0 personKey: type: - string - 'null' description: "The person key.\n " quantity: type: integer description: "The number of vouchers to issue.\n " format: int32 maximum: 2147483647.0 minimum: 1.0 customerNumber: type: - string - 'null' description: "The customer number.\n " maxLength: 20 minLength: 0 sendFiles: type: boolean description: "Decides whether to send reference files over ftp for a HighVolumeBatch of vouchers.\n " ssrCode: type: - string - 'null' description: "The SSR filter value in this object.\n " maxLength: 4 minLength: 0 Exception: type: object additionalProperties: false properties: Message: type: string InnerException: $ref: '#/components/schemas/Exception' Source: type: - string - 'null' StackTrace: type: - string - 'null' IJsonResponseOfVoucherIssuance: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/VoucherIssuance' 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' 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 ReducedVoucherResponse: type: object description: "The reduced voucher response.\n " additionalProperties: false properties: references: type: - array - 'null' description: "The voucher reference numbers.\n " items: type: string issuanceKey: type: - string - 'null' description: "The voucher issuance keys.\n " VoucherIssuance: type: object description: "The voucher issuance model.\n " additionalProperties: false required: - configurationCode - issuanceReasonCode properties: configurationCode: type: string description: "The voucher configuration code.\n " maxLength: 6 minLength: 0 issuanceReasonCode: type: string description: "The voucher issuance reason code.\n " maxLength: 4 minLength: 0 note: type: - string - 'null' description: "The voucher issuance note.\n " maxLength: 256 minLength: 0 market: description: "Market details associated with the voucher issuance.\n " $ref: '#/components/schemas/VoucherMarketInformation' expiration: type: - string - 'null' description: "The voucher expiration date.\n " format: date-time currencyCode: type: - string - 'null' description: "The currency code.\n " maxLength: 3 minLength: 0 amount: type: number description: "The amount of currency.\n " format: decimal voucherIssuanceKey: type: - string - 'null' description: "The voucher issuance key.\n " 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' VoucherMarketInformation: type: object description: "The voucher market request model.\n " additionalProperties: false required: - destination - origin - departureDate - identifier - carrierCode properties: destination: type: string description: "Gets or sets the leg arrival station.\n " maxLength: 3 minLength: 0 origin: type: string description: "Gets or sets the leg departure station.\n " maxLength: 3 minLength: 0 departureDate: type: string description: "The departure date.\n " format: date-time minLength: 1 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 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 IJsonResponseOfReducedVoucherResponse: type: object description: "Defines the JSON response contract.\n " additionalProperties: false properties: data: description: "The payload data.\n " $ref: '#/components/schemas/ReducedVoucherResponse' 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' 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))