openapi: 3.0.3 info: title: SAP Business ByDesign OData Analytics Supply Chain API description: OData v2 REST API for SAP Business ByDesign — a cloud ERP solution for midmarket companies. Provides access to business objects and analytics across financials, CRM, procurement, supply chain, project management, and HR. Supports CRUD operations and custom OData services via the /sap/byd/odata/cust/v1/ namespace, plus pre-built analytics services via /sap/byd/odata/{service_name}.svc/. version: 1.0.0 contact: name: SAP Support url: https://support.sap.com externalDocs: description: SAP Business ByDesign OData API Examples url: https://community.sap.com/t5/enterprise-resource-planning-blog-posts-by-sap/sap-business-bydesign-odata-api-examples/ba-p/13400614 license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0 servers: - url: https://{tenant}.bydesign.cloud.sap description: SAP Business ByDesign tenant variables: tenant: default: my-tenant description: Your SAP Business ByDesign tenant hostname security: - basicAuth: [] - oAuth2: [] tags: - name: Supply Chain description: Manage inbound and outbound deliveries, goods receipts, goods issues, and production orders. paths: /sap/byd/odata/cust/v1/khoutbounddelivery/OutboundDeliveryCollection: get: summary: Query outbound deliveries description: Query outbound delivery records. operationId: queryOutboundDeliveries tags: - Supply Chain parameters: - $ref: '#/components/parameters/FilterParam' - $ref: '#/components/parameters/SelectParam' - $ref: '#/components/parameters/ExpandParam' - $ref: '#/components/parameters/TopParam' - $ref: '#/components/parameters/SkipParam' - $ref: '#/components/parameters/FormatParam' responses: '200': description: Collection of outbound delivery records. content: application/json: schema: type: object properties: d: type: object properties: results: type: array items: $ref: '#/components/schemas/OutboundDelivery' '401': $ref: '#/components/responses/Unauthorized' /sap/byd/odata/cust/v1/khoutbounddelivery/Release: post: summary: Release outbound delivery description: Releases an outbound delivery for picking and goods issue processing. operationId: releaseOutboundDelivery tags: - Supply Chain parameters: - $ref: '#/components/parameters/XCSRFTokenHeader' - name: ObjectID in: query required: true schema: type: string responses: '200': description: Outbound delivery released. '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' /sap/byd/odata/cust/v1/khoutbounddeliveryrequest/ItemPostGoodsIssue: post: summary: Post goods issue description: Posts a goods issue for an outbound delivery request item, reducing inventory and triggering logistics and financial postings. operationId: postGoodsIssue tags: - Supply Chain parameters: - $ref: '#/components/parameters/XCSRFTokenHeader' - name: ObjectID in: query required: true schema: type: string responses: '200': description: Goods issue posted. '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' /sap/byd/odata/cust/v1/khinbounddelivery/InboundDeliveryCollection: get: summary: Query inbound deliveries description: Query inbound delivery and customer return notification records. operationId: queryInboundDeliveries tags: - Supply Chain parameters: - $ref: '#/components/parameters/FilterParam' - $ref: '#/components/parameters/SelectParam' - $ref: '#/components/parameters/TopParam' - $ref: '#/components/parameters/SkipParam' - $ref: '#/components/parameters/FormatParam' responses: '200': description: Collection of inbound delivery records. content: application/json: schema: type: object properties: d: type: object properties: results: type: array items: $ref: '#/components/schemas/InboundDelivery' '401': $ref: '#/components/responses/Unauthorized' post: summary: Create inbound delivery / customer return notification description: Creates a new inbound delivery or customer return notification record. operationId: createInboundDelivery tags: - Supply Chain parameters: - $ref: '#/components/parameters/XCSRFTokenHeader' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/InboundDeliveryCreate' responses: '201': description: Inbound delivery created. '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' /sap/byd/odata/cust/v1/khinbounddelivery/PostGoodsReceipt: post: summary: Post goods receipt description: Posts a goods receipt for an inbound delivery, increasing inventory and triggering financial postings. operationId: postGoodsReceipt tags: - Supply Chain parameters: - $ref: '#/components/parameters/XCSRFTokenHeader' - name: ObjectID in: query required: true schema: type: string responses: '200': description: Goods receipt posted. '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' components: schemas: OutboundDelivery: type: object description: SAP Business ByDesign outbound delivery. properties: ObjectID: type: string ID: type: string ShipToPartyID: type: string StatusCode: type: string PlannedShippingDate: type: string format: date InboundDeliveryCreate: type: object properties: SupplierID: type: string PlannedDeliveryDate: type: string format: date ODataError: type: object properties: error: type: object properties: code: type: string message: type: object properties: lang: type: string value: type: string InboundDelivery: type: object description: SAP Business ByDesign inbound delivery or customer return notification. properties: ObjectID: type: string ID: type: string SupplierID: type: string StatusCode: type: string PlannedDeliveryDate: type: string format: date parameters: XCSRFTokenHeader: name: x-csrf-token in: header required: true description: 'CSRF token obtained from a prior GET request with x-csrf-token: Fetch.' schema: type: string FormatParam: name: $format in: query required: false description: Response format. Use 'json' for JSON output. schema: type: string enum: - json - xml default: json SelectParam: name: $select in: query required: false description: Comma-separated list of properties to include in the response. schema: type: string TopParam: name: $top in: query required: false description: Maximum number of records to return. schema: type: integer minimum: 1 maximum: 1000 default: 20 ExpandParam: name: $expand in: query required: false description: Comma-separated navigation properties to expand inline. schema: type: string FilterParam: name: $filter in: query required: false description: OData filter expression (e.g., Status eq 'Released' and PostingDate ge datetime'2024-01-01T00:00:00'). schema: type: string SkipParam: name: $skip in: query required: false description: Number of records to skip for pagination. schema: type: integer minimum: 0 default: 0 responses: Unauthorized: description: Unauthorized — invalid or missing credentials. content: application/json: schema: $ref: '#/components/schemas/ODataError' BadRequest: description: Bad request — invalid OData query parameters or request body. content: application/json: schema: $ref: '#/components/schemas/ODataError' securitySchemes: basicAuth: type: http scheme: basic description: HTTP Basic Authentication using SAP Business ByDesign user credentials. oAuth2: type: oauth2 description: OAuth 2.0 authentication for SAP Business ByDesign. flows: clientCredentials: tokenUrl: https://{tenant}.bydesign.cloud.sap/sap/bc/sec/oauth2/token scopes: {}