Basware ExportedPurchaseOrders API

The ExportedPurchaseOrders API from Basware — 3 operation(s) for exportedpurchaseorders.

OpenAPI Specification

basware-exportedpurchaseorders-api-openapi.yml Raw ↑
openapi: 3.0.2
info:
  title: Basware OAUTH2 authentication APIs AccountingDocuments ExportedPurchaseOrders API
  description: "**Using OAUTH2.0 authentication:**\n\nGet API access token from api.basware.com/tokens\n1. Using client id and client secret, which you can obtain from Basware. \n2. Specify which APIs can be accessed by using the token e.g. Read only access to vendors API only (these are called scopes). Available scopes are listed at <https://developer.basware.com/api/p2p/manual#AccessRights>. \n3. Each token has an expiration time, until which it can be used to call APIs.\n\nWhen using OAUTH2 authentication, you need to pass the OAUTH2 authentication token when calling Basware API endpoints. Available Basware API operations are documented at <https://api.basware.com/swagger>. \n\nSee the Basware API developer site at <https://developer.basware.com/api/p2p/manual#Authentication> for more details on API authentication."
  version: 1.0.0
  x-logo:
    url: https://fastapi.tiangolo.com/img/logo-margin/logo-teal.png
tags:
- name: ExportedPurchaseOrders
paths:
  /v1/exportedPurchaseOrders:
    get:
      tags:
      - ExportedPurchaseOrders
      summary: Returns purchase orders exported from Basware P2P.
      description: "Notes: \r\n1) This API supports sending webhook based  [push notifications](https://developer.basware.com/api/p2p/manual#PushNotifications) when new data is available to be exported. \r\n2) This GET operation returns a HTTP redirect, which the API client needs to follow. \r\n * 'Authorization' header must not be included in the redirected request (the second request after receiving a redirect). \r\n * 'Host' header needs to be included.\r\n\r\nPlease see section \"[Usage scenario 4: Import and export procurement data](https://developer.basware.com/api/p2p/manual#usage4)\" for details on implementing this API."
      parameters:
      - name: orderStatus
        in: query
        description: Document status filter. Returns items by order document status.
        schema:
          enum:
          - WaitingForExport
          - Exported
          type: string
      - name: pageSize
        in: query
        description: A limit for the number of items to be returned for one request. Limit can range between 1 and 100 items.
        schema:
          type: integer
          format: int32
          default: 100
      - name: companyCode
        in: query
        description: Company filter. Returns items for specific company.
        schema:
          type: string
          default: ''
      - name: lastUpdated
        in: query
        description: Date filter. Returns items that have been updated after specified date.
        schema:
          type: string
          format: date-time
      - name: x-amz-meta-continuationtoken
        in: header
        description: Used to get next page of results when item count indicated by 'pageSize' is exceeded. A token is returned in header (not body) parameter 'X-amz-meta-continuationToken' of the response whenever there are more records to fetch. Post the received value here in a new HEADER parameter on the next GET request to receive the next page of results. When getting the next page of results, you must include the same query parameters that were used when getting the first page.
        schema:
          type: string
        example: f0054d6b-f6d9-42ec-8391-7f94738dad4d
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ExportedPurchaseOrdersResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/ExportedPurchaseOrdersResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ExportedPurchaseOrdersResponse'
        '401':
          description: Unauthorized
        '404':
          description: Not Found
        '500':
          description: Unexpected error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseEntityList'
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseEntityList'
            text/json:
              schema:
                $ref: '#/components/schemas/ResponseEntityList'
    delete:
      tags:
      - ExportedPurchaseOrders
      summary: Deletes data from Basware API. For manual one-time operations.
      description: "For manual one-time operations only, such as a manual clean-up to remove test data generated during API integration development. Only removes records from API layer. \r\nDeletion in target systems needs to be done separately using the data deletion mechanisms available in each of the target system in addition to deleting the data in Basware API."
      requestBody:
        description: "Contains the body of the request.\r\n            Either externalCode or lastUpdated -field is required. If both values are provided, externalCode will have the priority."
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/DeleteRequest'
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/DeleteRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/DeleteRequest'
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/DeleteResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/DeleteResponse'
        '202':
          description: RequestAccepted
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/DeleteResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/DeleteResponse'
        '400':
          description: BadRequest
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseEntityList'
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseEntityList'
            text/json:
              schema:
                $ref: '#/components/schemas/ResponseEntityList'
        '401':
          description: Unauthorized
        '500':
          description: Unexpected error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseEntityList'
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseEntityList'
            text/json:
              schema:
                $ref: '#/components/schemas/ResponseEntityList'
  /v1/exportedPurchaseOrders/{externalCode}:
    get:
      tags:
      - ExportedPurchaseOrders
      summary: Returns single exported order by externalCode - identifier.
      description: "Note: This GET operation returns a HTTP redirect, which the API client needs to follow. \r\n* 'Authorization' header must not be included in the redirected request (the second request after receiving a redirect). \r\n* 'Host' header needs to be included.\r\n\r\nPlease see section \"[Usage scenario 4: Import and export procurement data](https://developer.basware.com/api/p2p/manual#usage4)\" for details on implementing this API."
      parameters:
      - name: externalCode
        in: path
        description: ExternalCode of the order to be retrieved.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ExportedPurchaseOrdersResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/ExportedPurchaseOrdersResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/ExportedPurchaseOrdersResponse'
        '401':
          description: Unauthorized
        '404':
          description: Not found. Request was successful and no records were found.
        '500':
          description: Unexpected error
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/ResponseEntityList'
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseEntityList'
            text/json:
              schema:
                $ref: '#/components/schemas/ResponseEntityList'
  /v1/exportedPurchaseOrders/{externalCode}/acknowledge:
    post:
      tags:
      - ExportedPurchaseOrders
      summary: Acknowledged orders are no longer returned for next GET operation.
      description: "Notes:\r\n1. Updates 'processingStatus' -field on the document to allow filtering out the document on the next GET operation\r\n2. For a document which is already acknowledged (processingStatus: 'Exported'), API will return 405 'Method not allowed' if acknowledge is attempted again on the document.\r\n\r\nPlease see section \"[Usage scenario 4: Import and export procurement data](https://developer.basware.com/api/p2p/manual#usage4)\" for details on implementing this API."
      parameters:
      - name: externalCode
        in: path
        description: 'ExternalCode of the order to be acknowledged. Note: For an order which is already acknowledged, API will return 405 ''Method not allowed''.'
        required: true
        schema:
          type: string
      - name: Content-Type
        in: header
        description: Specifies the media type of the resource. Value application/json is supported.
        schema:
          type: string
        example: application/json
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                type: string
            application/json:
              schema:
                type: string
            text/json:
              schema:
                type: string
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '404':
          description: Not found. Record to acknowledge not found.
        '405':
          description: Method not allowed. This generally happens when trying to acknowledge an exportedPurchaseOrder that is already acknowledged.
        '500':
          description: Unexpected error
components:
  schemas:
    ExportedPurchaseOrderLineCodingRowEntity:
      required:
      - externalCode
      - rowIndex
      - splitPercent
      type: object
      properties:
        externalCode:
          maxLength: 100
          minLength: 1
          type: string
          description: Unique external identifier that is used as a key in API.
          example: 060cb8ea-5464-11ea-a38b-2e728ce88122
        rowIndex:
          type: integer
          description: Purchase internal coding row number.
          format: int32
          example: 1
        splitPercent:
          type: number
          description: Percentage of order line's cost which this coding row covers (cost can be split between coding lines).
          format: double
          example: 100
        accountCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Account  code.
          nullable: true
          example: '765232'
        accountName:
          maxLength: 2000
          minLength: 0
          type: string
          description: Account name.
          nullable: true
          example: IT costs
        costCenterCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Cost center code.
          nullable: true
          example: '213441'
        costCenterName:
          maxLength: 2000
          minLength: 0
          type: string
          description: Cost center name.
          nullable: true
          example: Sao Paolo
        projectCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Project code.
          nullable: true
          example: ''
        projectName:
          maxLength: 255
          minLength: 0
          type: string
          description: Project name.
          nullable: true
          example: ''
        fixedAssetCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Fixed asset code.
          nullable: true
          example: ''
        fixedAssetName:
          maxLength: 250
          minLength: 0
          type: string
          description: Fixed asset name.
          nullable: true
          example: ''
        fixedAssetSubCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Fixed asset sub code.
          nullable: true
          example: ''
        fixedAssetSubName:
          maxLength: 250
          minLength: 0
          type: string
          description: Fixed assets sub name.
          nullable: true
          example: ''
        internalOrderCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Internal order code.
          nullable: true
          example: ''
        internalOrderName:
          maxLength: 250
          minLength: 0
          type: string
          description: Internal order name.
          nullable: true
          example: ''
        profitCenterCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Profit center code.
          nullable: true
          example: ''
        profitCenterName:
          maxLength: 250
          minLength: 0
          type: string
          description: Profit center name.
          nullable: true
          example: ''
        businessUnitCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Business unit code.
          nullable: true
          example: ''
        businessUnitName:
          maxLength: 250
          minLength: 0
          type: string
          description: Business unit name.
          nullable: true
          example: ''
        projectSubCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Project sub code.
          nullable: true
          example: ''
        projectSubName:
          maxLength: 250
          minLength: 0
          type: string
          description: Project sub name.
          nullable: true
          example: ''
        employeeCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Employee code.
          nullable: true
          example: ''
        employeeName:
          maxLength: 250
          minLength: 0
          type: string
          description: Employee name.
          nullable: true
          example: ''
        vehicleNumber:
          maxLength: 25
          minLength: 0
          type: string
          description: Vehicle number.
          nullable: true
          example: ''
        vehicleName:
          maxLength: 250
          minLength: 0
          type: string
          description: Vehicle name.
          nullable: true
          example: ''
        salesOrderCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Sales order code.
          nullable: true
          example: ''
        salesOrderName:
          maxLength: 250
          minLength: 0
          type: string
          description: Sales order name.
          nullable: true
          example: ''
        salesOrderSubCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Sales order sub code.
          nullable: true
          example: ''
        salesOrderSubName:
          maxLength: 250
          minLength: 0
          type: string
          description: Sales order sub name.
          nullable: true
          example: ''
        customerCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Customer code.
          nullable: true
          example: ''
        customerName:
          maxLength: 250
          minLength: 0
          type: string
          description: Customer name.
          nullable: true
          example: ''
        accAssignmentCategoryCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Account assignment category code.
          nullable: true
          example: ''
        accAssignmentCategoryName:
          maxLength: 250
          minLength: 0
          type: string
          description: Account assignment category name.
          nullable: true
          example: ''
        budgetCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Budget code.
          nullable: true
          example: ''
        budgetName:
          maxLength: 250
          minLength: 0
          type: string
          description: Budget name.
          nullable: true
          example: ''
        serviceCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Service code.
          nullable: true
          example: ''
        serviceName:
          maxLength: 250
          minLength: 0
          type: string
          description: Service name.
          nullable: true
          example: ''
        businessAreaCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Business area code.
          nullable: true
          example: ''
        businessAreaName:
          maxLength: 250
          minLength: 0
          type: string
          description: Business area name.
          nullable: true
          example: ''
        workOrderCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Work order code.
          nullable: true
          example: ''
        workOrderName:
          maxLength: 250
          minLength: 0
          type: string
          description: Work order name.
          nullable: true
          example: ''
        workOrderSubCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Work order sub code.
          nullable: true
          example: ''
        workOrderSubName:
          maxLength: 250
          minLength: 0
          type: string
          description: Work order sub name.
          nullable: true
          example: ''
        distributionCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Distribution code.
          nullable: true
          example: ''
        distributionMode:
          maxLength: 250
          minLength: 0
          type: string
          description: Distribution mode.
          nullable: true
          example: ''
        dimCode1:
          maxLength: 25
          minLength: 0
          type: string
          description: 'DimCode 1-10: Code fields for Customer-specific coding dimensions.'
          nullable: true
          example: ''
        dimCode2:
          maxLength: 25
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimCode3:
          maxLength: 25
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimCode4:
          maxLength: 25
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimCode5:
          maxLength: 25
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimCode6:
          maxLength: 25
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimCode7:
          maxLength: 25
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimCode8:
          maxLength: 25
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimCode9:
          maxLength: 25
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimCode10:
          maxLength: 25
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimName1:
          maxLength: 250
          minLength: 0
          type: string
          description: Distribution mode.
          nullable: true
          example: ''
        dimName2:
          maxLength: 250
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimName3:
          maxLength: 250
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimName4:
          maxLength: 250
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimName5:
          maxLength: 250
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimName6:
          maxLength: 250
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimName7:
          maxLength: 250
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimName8:
          maxLength: 250
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimName9:
          maxLength: 250
          minLength: 0
          type: string
          nullable: true
          example: ''
        dimName10:
          maxLength: 250
          minLength: 0
          type: string
          nullable: true
          example: ''
        num1:
          type: number
          description: 'LineInvoicingNum1-5: Can be used for for customer-specific date fields.'
          format: double
          nullable: true
        num2:
          type: number
          format: double
          nullable: true
        num3:
          type: number
          format: double
          nullable: true
        num4:
          type: number
          format: double
          nullable: true
        num5:
          type: number
          format: double
          nullable: true
        text1:
          maxLength: 250
          minLength: 0
          type: string
          description: 'LineInvoicingText1-5: Can be used for for customer-specific date fields.'
          nullable: true
          example: ''
        text2:
          maxLength: 250
          minLength: 0
          type: string
          nullable: true
          example: ''
        text3:
          maxLength: 250
          minLength: 0
          type: string
          nullable: true
          example: ''
        text4:
          maxLength: 250
          minLength: 0
          type: string
          nullable: true
          example: ''
        text5:
          maxLength: 250
          minLength: 0
          type: string
          nullable: true
          example: ''
        date1:
          type: string
          description: 'LineInvoicingDate1-5: Can be used for for customer-specific date fields.'
          format: date-time
          nullable: true
          example: ''
        date2:
          type: string
          format: date-time
          nullable: true
          example: ''
        date3:
          type: string
          format: date-time
          nullable: true
          example: ''
        date4:
          type: string
          format: date-time
          nullable: true
          example: ''
        date5:
          type: string
          format: date-time
          nullable: true
          example: ''
      additionalProperties: false
    DeleteRequest:
      type: object
      properties:
        lastUpdated:
          type: string
          description: 'To delete records updated after specific time, use lastUpdated -field. This will delete all items that have been updated after the specified date. In response, user will get the taskStatus api link where the task status can be checked. Note: ''0001-01-01'' can be used to delete all records.'
          format: date-time
          nullable: true
        externalCode:
          maxLength: 36
          minLength: 0
          type: string
          description: Single item can be deleted using externalCode and final status is returned immediately.
          nullable: true
      additionalProperties: false
    DeleteResponse:
      type: object
      properties:
        statusApiLink:
          type: string
          nullable: true
        taskName:
          type: string
          nullable: true
        taskStatus:
          type: string
          nullable: true
      additionalProperties: false
    ExportedPurchaseOrderEntity:
      required:
      - creator
      - deliveryAddress
      - documentSource
      - externalCode
      - hidePricesFromSupplier
      - orderCreationTime
      - orderExportTimestamp
      - orderNumber
      - owner
      - processingStatus
      - releaseOrdersRequired
      - requisitionCreationTime
      - requisitionNumber
      - sendingMethod
      type: object
      properties:
        externalCode:
          maxLength: 100
          minLength: 1
          type: string
          description: External identifier that is used as a key in API.
          example: 4847-31231212-212121-1212
        orderNumber:
          maxLength: 32
          minLength: 1
          type: string
          description: Order number in Basware P2P.
          example: P2P-PO-2123682
        extOrderNumber:
          maxLength: 100
          minLength: 0
          type: string
          description: Order number in external system (for imported orders).
          nullable: true
          example: SAP-PO-213451
        parentOrderNumber:
          maxLength: 32
          minLength: 0
          type: string
          description: Used only if the order type is release to specify what is the order number of the parent blanket order in P2P Purchase.
          nullable: true
          example: P2P-PO-2123682
        parentOrderExternalCode:
          maxLength: 100
          minLength: 0
          type: string
          description: Used only if the order type is release to specify what is Basware API external code of the parent blanket order.
          nullable: true
          example: 4847-31231212-212121-1212
        parentOrderExtOrderNumber:
          maxLength: 100
          minLength: 0
          type: string
          description: Used only if the order type is release to specify what is order number of the parent blanket order in the external system.
          nullable: true
          example: SAP-PO-213451
        processingStatus:
          enum:
          - WaitingForExport
          - Exported
          type: string
          description: Processing status of the order in Basware API. Can be used for retrieving order updates which have not been acknowledged by customer. 'WaitingForExport' = Has not been acknowledged. 'Exported' = Has been acknowledged.
          example: WaitingForExport
        orderStatus:
          enum:
          - Confirmed
          - ReadyForOrder
          - Ordered
          - SupplierRejected
          - SupplierConfirmed
          - ModifiedBySupplier
          - PartiallyReceived
          - Received
          - Canceled
          - OrderCreated
          - Closed
          type: string
          description: Order status in Basware P2P Purchase.
          example: Ordered
        reasonForPendingAction:
          enum:
          - None
          - SendingFailed
          - ModifiedBySupplier
          - ModifiedByBuyer
          type: string
          description: Specifies reason for action pending for user in P2P.
          example: None
        requisitionNumber:
          maxLength: 32
          minLength: 1
          type: string
          description: Requisition number of related requisition in Basware P2P.
          example: Alusta-PR-321424
        extRequisitionNumber:
          maxLength: 100
          minLength: 0
          type: string
          description: Requisition number of related requisition in external system (for imported requisitions).
          nullable: true
          example: SAP-PR-12321
        organizationUnitCode:
          maxLength: 25
          minLength: 0
          type: string
          description: P2P company  code for buyer organisation unit.
          nullable: true
          example: BE100
        organizationUnitName:
          maxLength: 250
          minLength: 0
          type: string
          description: P2P company name for buyer organisation unit.
          nullable: true
          example: BuyerLtd
        purchasingGroupCode:
          maxLength: 25
          minLength: 0
          type: string
          description: Purchasing group code.
          nullable: true
          example: PG201
        purchasingGroupName:
          maxLength: 250
          minLength: 0
          type: string
          description: Purchasing group name.
          nullable: true
          example: Office equipment
        purpose:
          maxLength: 2000
          minLength: 0
          type: string
          description: Reason why order is placed.
          nullable: true
          example: Goods for Project A
        validityPeriodStartDate:
          type: string
          description: 'Used only if the order type is blanket to specify the start date for blanket purchase order validity period (date format: yyyy-MM-dd).'
          format: date-time
          nullable: true
          example: ''
        validityPeriodEndDate:
          type: string
          description: 'Used only if the order type is blanket to specify the end date for blanket purchase order validity period (date format: yyyy-MM-dd).'
          format: date-time
          nullable: true
          example: ''
        desiredDeliveryDate:
          type: string
          description: Delivery date requested by buyer.
          format: date-time
          nullable: true
          example: '2020-10-24T00:00:00'
        desiredDeliveryEndDate:
          type: string
          description: Buyer requested latest delivery date.
          format: date-time
          nullable: true
          example: '2020-10-24T00:00:00'
        promisedDeliveryDate:
          type: string
          description: Delivery date provided by supplier.
          format: date-time
          nullable: true
          example: '2020-10-24T00:00:00'
        promisedDeliveryEndDate:
          type: string
          description: Supplier confirmed deliverytime.
          format: date-time
          nullable: true
          example: '2020-10-24T00:00:00'
        classification:
          maxLength: 250
          minLength: 0
          type: string
          description: Order classification code. Values are specified by customer. Often used to group orders and assign groups for handling by different persons.
          nullable: true
          example: Project A
        cancellationNote:
          maxLength: 250
          minLength: 0
          type: string
          description: Reason for cancelling order (if order is cancelled).
          nullable: true
          example: ''
        requisitionCreationTime:
          type: string
          description: Creation time of related purchase requisition in P2P.
          format: date-time
          example: '2020-10-24T00:00:00'
        orderCreationTime:
          type: string
          description: Creation time of order in P2P.
          format: date-time
          example: '2020-10-24T00:00:00'
        orderExportTimestamp:
          type: string
          description: Export time of order to Basware API.
          format: date-time
          example: '2020-10-24T00:00:00'
        documentSource:
          enum:
          - P2P
          - ImportedAsRequisition
          - ImportedAsOrder
          type: string
          description: Specifies where the order was created (imported or created manually in P2P).
          example: P2P
        sendingMethod:
          enum:
          - BaswareNetwork
          - Email
          - SmartOrder
          type: string
       

# --- truncated at 32 KB (83 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/basware/refs/heads/main/openapi/basware-exportedpurchaseorders-api-openapi.yml