--- swagger: "2.0" info: x-ibm-name: dbe-core-complete-api title: DBE Core Complete API version: 1.0.0 description: Complete DBE Core API with all the defined API operations. Different API operations are also provided based on DBE Core roles as separate APIs. contact: name: Kari Korpela email: kari.korpela@lut.fi url: https://dbecore.com schemes: - https basePath: /dbecore/v1 consumes: - application/json produces: - application/json securityDefinitions: clientIdHeader: type: apiKey in: header name: X-IBM-Client-Id security: - clientIdHeader: [] x-ibm-configuration: testable: true enforced: true phase: realized paths: /responses/order_response: post: responses: 200: description: 200 OK summary: This API operation is used to receive an order response from a supplier. DBE Core Buyer needs to provide this API operation in oder to receive order response from supplier. parameters: - name: OrderResponse required: true in: body schema: $ref: '#/definitions/OrderResponse' description: OrderResponse data as JSON object tags: - order - buyer - mandatory /reponses/quotation: post: responses: 200: description: 200 OK parameters: - name: Quotation required: true in: body schema: $ref: '#/definitions/Quotation' summary: Used to receive a quotation from supplier. DBE Core Buyer needs to provide this API operation in oder to receive quotations from DBE Core Supplier. tags: - quotation - buyer - mandatory /requests/quotations: post: responses: 200: description: 200 OK parameters: - name: QuotationRequest required: true in: body schema: $ref: '#/definitions/RequestForQuation' summary: Used to receive quotations from buyers. DBE Core Supplier needs to provide this API operation in order to receive requests for quotation from DBE Core Buyers. tags: - quotation - supplier - mandatory /orders/{ID}: get: responses: 200: description: 200 OK schema: $ref: '#/definitions/Order' 401: description: 401 Unauthorized schema: type: string tags: - order - supplier - optional summary: Can be used to query specific order information by order ID. Optional. Offered by DBE Core Supplier. description: Returns Order object (JSON) parameters: - name: ID type: string required: true in: path description: Order ID delete: responses: 200: description: 200 OK 404: description: 404 Not found tags: - order - supplier - optional summary: Deletes an existing order by order id. Optional. Offered by DBE Core Supplier. parameters: - name: ID type: string required: true in: path description: OrderID description: Used to delete put: responses: 200: description: 200 OK 404: description: 404 Not found schema: type: string tags: - order - supplier - optional summary: Can be used to update an existing order by order ID. Optional. Offered by DBE Core Supplier. parameters: - name: ID type: string required: true in: path description: OrderID - name: OrderChange required: true in: body schema: $ref: '#/definitions/OrderChange' description: Order change /orders: post: responses: 200: description: 200 OK tags: - order - supplier - mandatory summary: Used to submit a new order to supplier. DBE Core Supplier needs to implement this API operation to receive orders from DBE Core Buyer. description: Create new order, body contains actual order object (JSON) parameters: - name: Order required: true in: body schema: $ref: '#/definitions/Order' description: DBE Core Order JSON object get: responses: 200: description: 200 OK schema: type: object tags: - order - supplier - optional summary: Can be used to get all order IDs of the requestor. Optional. Offered by DBE Core supplier. description: Returns all order IDs for the requestor. definitions: Item: properties: Description: type: string AdditionalItemIdentification: type: string ItemSpecificationDocumentReference: $ref: '#/definitions/Attachement' additionalProperties: false Attachement: properties: uri: type: string description: Web link additionalProperties: false Quotation: properties: CustomizationID: type: string ID: type: string IssueDate: type: string format: date IssueTime: type: string format: date-time NoteType: type: string BuyerCustomerParty: $ref: '#/definitions/BuyerCustomerParty' SellerSupplierParty: $ref: '#/definitions/SellerSupplierParty' Delivery: $ref: '#/definitions/Delivery' OrderLine: $ref: '#/definitions/OrderLine' ValidityPeriod: type: string additionalProperties: false RequestForQuation: properties: CustomizationID: type: string ID: type: string IssueDate: type: string format: date IssueTime: type: string format: date-time NoteType: type: string BuyerCustomerParty: $ref: '#/definitions/BuyerCustomerParty' SellerSupplierParty: $ref: '#/definitions/SellerSupplierParty' Delivery: $ref: '#/definitions/Delivery' OrderLine: $ref: '#/definitions/OrderLine' SubmissionDueDate: type: string format: date RequestedValidityPeriod: type: string additionalProperties: false RequestedDeliveryPeriod: properties: StartDate: type: string format: date EndDate: type: string format: date additionalProperties: false OrderChange: properties: CustomizationID: type: string ID: type: string IssueDate: type: string format: date IssueTime: type: string format: date-time NoteType: type: string BuyerCustomerParty: $ref: '#/definitions/BuyerCustomerParty' SellerSupplierParty: $ref: '#/definitions/SellerSupplierParty' Delivery: $ref: '#/definitions/Delivery' OrderLine: $ref: '#/definitions/OrderLine' SalesOrderID: type: string OrderReference: type: string SequenceNumberID: type: string additionalProperties: false description: Change order message OrderResponse: properties: CustomizationID: type: string ID: type: string IssueDate: type: string format: date IssueTime: type: string format: date-time NoteType: type: string BuyerCustomerParty: $ref: '#/definitions/BuyerCustomerParty' SellerSupplierParty: $ref: '#/definitions/SellerSupplierParty' Delivery: $ref: '#/definitions/Delivery' OrderLine: $ref: '#/definitions/OrderLine' SalesOrderID: type: string OrderReference: type: string additionalProperties: false description: Response to order query SellerSupplierParty: properties: Party: $ref: '#/definitions/Party' additionalProperties: false Delivery: type: object properties: RequestedDeliveryPeriod: $ref: '#/definitions/RequestedDeliveryPeriod' DeliveryAddress: $ref: '#/definitions/DeliveryAddress' Order: properties: CustomizationID: type: string ID: type: string IssueDate: type: string format: date IssueTime: type: string format: date-time NoteType: type: string BuyerCustomerParty: $ref: '#/definitions/BuyerCustomerParty' SellerSupplierParty: $ref: '#/definitions/SellerSupplierParty' Delivery: $ref: '#/definitions/Delivery' OrderLine: $ref: '#/definitions/OrderLine' additionalProperties: false description: DBE Core Order Data OrderLine: type: array items: $ref: '#/definitions/LineItem' LineItem: properties: ID: type: string Quantity: type: integer format: int64 TaxAmount: type: string Price: type: string Item: $ref: '#/definitions/Item' additionalProperties: false description: LineItem DeliveryAddress: properties: Postbox: type: string example: PL 12 StreetName: type: string example: Teollisuuskatu 1 CityName: type: string example: Kaupunki PostalZone: type: string example: "12340" CountrySubEntity: type: string example: PIRKANMAA Country: $ref: '#/definitions/Country' additionalProperties: false description: Delivery address info BuyerCustomerParty: properties: Party: $ref: '#/definitions/Party' Country: $ref: '#/definitions/Country' Contact: $ref: '#/definitions/Contact' additionalProperties: false description: An association to the buyer Contact: properties: Name: type: string example: Mr. Ville Vallaton Telephone: type: string example: "+35840033221" ElectronicMail: type: string example: ville.vallaton@ibm.com additionalProperties: false description: Contact information Country: properties: IndentificationCode: type: string example: FI description: Country code additionalProperties: false description: Country information Party: properties: PartyIdentification: type: string example: PartyID123 PartyName: type: string example: Ostaja/Myyja Oy PartyLegalEntity: type: string example: Corporate Contact: $ref: '#/definitions/Contact' additionalProperties: false description: Party information tags: - name: mandatory description: Marks a mandatory APIs that needs to be implemented to enable digitalized communication between DBE Core Parties - name: optional description: Marks an optional API that is optional to implement - name: order description: Related to DBE Core Order - name: buyer description: DBE Core Buyer responsibility to implement - name: supplier description: DBE Core Supplier responsibility to implement x-ibm-endpoints: - endpointUrl: https://api.eu-gb.apiconnect.appdomain.cloud/dbe-core-api-development-api-hack-1/test description: Base Gateway API Endpoint type: - production - development ...