openapi: 3.2.0 info: title: Kuehne Nagel Download API x-api-guideline-version: 1.11.7 x-refined-note: - x-api-id differs across the merged source definitions and was not carried - x-api-version differs across the merged source definitions and was not carried version: '1.0' description: 'Operations tagged Download across 2 of this provider''s published API definitions: kuehne-nagel-shipment-document-management-v2-openapi.json, kuehne-nagel-shipment-document-management-v3-openapi.json. Each path carries the servers of the definition it was published in.' servers: - url: https://gateway.api.kuehne-nagel.com/transport/execution/documentation/shipment/v2 - url: https://gateway.api.kuehne-nagel.com/transport/execution/documentation/shipment/v3 tags: - name: Download description: Operations to download shipment documents. paths: /documents: get: tags: - Download summary: Download requested documents description: 'Returns all documents matching the parameters passed as request input payload. ' operationId: getDocumentsWithGet parameters: - name: referenceType in: query description: 'One of the references to search for. Supported reference types: * TRACKING_NUMBER * SHIPMENT_ID ' required: true style: form explode: true schema: maxLength: 15 type: string x-extensible-enum: - TRACKING_NUMBER - SHIPMENT_ID example: TRACKING_NUMBER - name: referenceValue in: query description: Value of reference required: true style: form explode: true schema: maxLength: 255 type: string example: '3254325' - name: documentCode in: query description: Code of a document type according to the Kuehne+Nagel specific classification. required: false style: form explode: true schema: $ref: '#/components/schemas/DocumentTypeCode' example: X91 responses: '200': description: Return pdf if only one document found, zip otherwise. content: application/pdf: schema: type: string format: binary application/zip: schema: type: string format: binary default: $ref: '#/components/responses/default' security: - default: [] x-auth-type: Application & Application User x-throttling-tier: 10KPerMin servers: - url: https://gateway.api.kuehne-nagel.com/transport/execution/documentation/shipment/v2 /shipments/{uniqueShipmentReference}/documents/{documentId}/contents: get: tags: - Download description: 'Download the binary content of a specific shipment document. This endpoint always returns exactly one content item (singleton collection, cardinality 1). ' operationId: downloadDocumentContent parameters: - $ref: '#/components/parameters/uniqueShipmentReferenceParameter' - $ref: '#/components/parameters/documentIdParameter' responses: '200': description: Binary content of the document. headers: Content-Disposition: description: Indicates the file should be downloaded as an attachment. style: simple explode: false schema: type: string example: attachment; filename="document.pdf" content: application/octet-stream: schema: type: string format: binary default: $ref: '#/components/responses/default' security: - default: [] - api_key: [] x-auth-type: Application & Application User x-throttling-tier: 10KPerMin servers: - url: https://gateway.api.kuehne-nagel.com/transport/execution/documentation/shipment/v3 components: schemas: Problem: required: - detail - title type: object properties: detail: maxLength: 256 type: string description: 'A human readable explanation specific to this occurrence of the problem that is helpful to locate the problem and give advice on how to proceed. Written in English and readable for engineers, usually not suited for non technical stakeholders and not localized. ' example: Connection to database timed out instance: type: string description: 'A URI reference that identifies the specific occurrence of the problem, e.g. by adding a fragment identifier or sub-path to the problem type. May be used to locate the root of this problem in the source code. ' format: uri-reference example: /problem/connection-error#token-info-read-timed-out status: minimum: 100 type: integer description: 'The HTTP status code generated by the origin server for this occurrence of the problem. ' format: int32 example: 503 exclusiveMaximum: 600 title: maxLength: 128 type: string description: 'A short summary of the problem type. Written in English and readable for engineers, usually not suited for non technical stakeholders and not localized. ' example: Service Unavailable type: type: string description: 'A URI reference that uniquely identifies the problem type only in the context of the provided API. Opposed to the specification in RFC-7807, it is neither recommended to be dereferencable and point to a human-readable documentation nor globally unique for the problem type. ' format: uri-reference example: /problem/connection-error default: about:blank description: A problem details object as defined by RFC 7807, used to carry error information in HTTP API responses. DocumentTypeCode: maxLength: 3 minLength: 3 type: string description: 'Code of a document type according to the Kuehne+Nagel specific classification. The document types allowed for uploading a document can be retrieved via the operation `/shipments/{uniqueShipmentReference}/uploadable-document-types`. Often uploaded document types: * 380 (Commercial Invoice) * 271 (Packing List) * 944 (Customs Documents) * 833 (Export Declaration) ' example: '380' DocumentId: maxLength: 255 minLength: 1 type: string description: Unique identifier of a shipment document. example: Q1234S56 responses: default: description: An error occurred - please see the HTTP status code and the problem object for more information. content: application/problem+json: schema: $ref: '#/components/schemas/Problem' parameters: uniqueShipmentReferenceParameter: name: uniqueShipmentReference in: path description: "By default this is the shipment __tracking number__ e.g. `N4242`. \n\nIn case a tracking number is not available a limited set of alternative references can be used.\nPlease use the track and trace API to first search for shipment details (e.g. by a customer specific reference)\nif none of the supported references are available .\n \nSupported references:\n* __tracking number__\n * `{trackingNumber}` or `tracking-number:{trackingNumber}`\n * e.g. `N4242` or `tracking-number:N4242`\n* __booking number__\n * `booking-number:{bookingNumber}`\n * e.g. `booking-number:B1`\n* __shipment id__\n * `shipment-id:{shipmentId}` \n * e.g. `shipment-id:S1`\n" required: true style: simple explode: false schema: maxLength: 255 pattern: ^(tracking-number:|booking-number:|shipment-id:)?[A-Za-z0-9]+$ type: string example: N4242 documentIdParameter: name: documentId in: path description: Unique identifier of a document required: true style: simple explode: false schema: $ref: '#/components/schemas/DocumentId' securitySchemes: default: type: oauth2 flows: implicit: authorizationUrl: https://gateway.api.kuehne-nagel.com/authorize scopes: {} api_key: type: apiKey name: apikey in: header x-refined-from: - kuehne-nagel-shipment-document-management-v2-openapi.json - kuehne-nagel-shipment-document-management-v3-openapi.json x-wso2-api-key-header: ApiKey