- Print
SAP S/4 HANA Cloud Connector
Integrating with multiple APIs for SAP S/4 HANA Cloud
Introduction
SAP S/4HANA is an enterprise resource planning (ERP) system with built-in intelligent technologies, including AI, machine learning, and advanced analytics. The Goal of this connector is to use SAP S/4 HANA Cloud Api with Tulip using HTTP Connectors & provide our customers with an out of box connector that can be imported into their instance to leverage the features offered by SAP S/4 HANA Cloud.
Purpose
- We are going to highlight different HTTP connector functions that can be built by doing HTTP calls to SAP S/4 HANA API endpoints to interact with the various services that are offered by SAP S/4 Hana, Such as Material Stock, Planned Order, Production Order, Material planning and Inventory Lot.
API Doc
The Links below will serve as a guide for the APIs used within the connector. The return parameter definition and information about their part in the schema are also available in the links
- SAP S/4 Hana Demo Application
- Material Stock API
- Material Planning Data API
- Planned Order API
- Production Order API
- Inspection Lot API
Pre-Requisites
- Create a SAP Universal ID.
- Generate API Key for accessing the SAP S/4 HANA APIs
Tulip Connection Details
The following information would need to be configured on Tulip's connectors.
- Running On: Cloud Connector Host
- Host :sandbox.api.sap.com
- Port:443
- TLS:Yes
- Basic Authentication: API Key will be used for authenticating API Calls from connector
Connector Functions
Material Stock API
Material_Stock_API_Material_Stock
Purpose
The purpose of the connector is to fetch all the material and its UOM available in the system. The response will be an array of objects with each object storing material id and the UOM.
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_MATERIAL_STOCK_SRV/A_MaterialStock
Required Input
The following are the parameters that are sent as the Request Body
- $top - query parameter set from the connector, by default set to 25
Output Extractor
An array of Material Details
- Material - Id
- MaterialBaseUnit - UOM of the Material
Material_Stock_API_Material_Stock_in_Account_Model
Purpose
The purpose of the connector is to fetch material stocks in an account model for which a certain stock has been posted.
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_MATERIAL_STOCK_SRV/A_MatlStkInAcctMod
Required Input
The following are the parameters that are sent as query parameters
- $top - query parameter set from the connector, by default set to 50
Output Extractor
An array of Material Details with Stock
- __metadata.id
- __metadata.uri
- Material
- Plant
- StorageLocation
- Batch
- Supplier
- Customer
- WBSElementInternalID
Material_Stock_API_Material_Stock_in_Account_Model
Purpose
The purpose of the connector is to fetch all the stock details of the material identified by the supplied Id, the connector also returns the Material basic information .
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_MATERIAL_STOCK_SRV/A_MaterialStock(‘
Required Input
The following are the parameters that are sent as query parameters
- Material: Material Id
Output Extractor
- Material
- MaterialBaseUnit
An array of Material Stock Details
- __metadata.uriMaterial
- Plant
- StorageLocation
- Batch
- Supplier
- Customer
- WBSElementInternalID
- SDDocument
- SDDocumetnItem
- InventorySpecialStockType
- InventoryStockType
- MatlWrhsStkQTYInMatBaseUnit - Material warehouse Stock Quantity in Material Base Unit
Material Planning Data API
Material_Planning_Data_API_MRP_Material
Purpose
The purpose of the connector is to fetch all the details of the materials used in Material Requirement Planning, There are many response parameters that are returned in the connector, we have highlighted a few in the documentation.
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_MRP_MATERIALS_SRV_01/A_MRPMaterial
Required Input
The following are the parameters that are sent as query parameters
- $top default value set 25
Output Extractor
An array of Material Plant Details - Few of the parameters are highlighted below, There are many parameters returned by the connector which could be used based on a specific use case. Some of those parameters are
- Material
- MRPPlant
- MRPArea
- MaterialName
- MRPAreaText
- MRPAreaCategory
- MRPAreaCategoryName
- MaterialGroup
- CrossPlantStatus
- CrossPlantStatusName
- BaseUnit
- UnitOfMeasureName
- LowLevelCode
- PurchasingGroup
- PurchasingGroupName
Material_Planning_Data_API_Supply_And_Demand
Purpose
The purpose of the connector is to fetch all the details of supply and demand information for materials in Material Requirements Planning (MRP) over a certain time period. There are many response parameters that are returned in the connector, we have highlighted a few in the documentation.
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_MRP_MATERIALS_SRV_01/SupplyDemandItems
Required Input
The following are the parameters that are sent as query parameters
- $top default value set 25
- filterField : The Name of the Filter to be searched against
- FilterCondition: The allowed values are eq ( Equal) and ne (Not Equal)
- filterValue: Matching Value - You can filter by value in a specified column
Output Extractor
An array of supply and demand information for materials - The response parameters are highlighted below.
- Material
- MRPPlant
- MRPArea
- UnitOfMeasureName
- MRPController
- MRPPlanningSegmentType
- MaterialShortageProfile
- ReceiptCategoryGroup
- MaterialBaseUnit
- UnitOfMeasureText
- MaterialExternalID
- MRPAvailability
- MaterialSafetyStockQty
- MRPElementOpenQuantity
- MRPAvailableQuantity
- MRPElementCategory
- MRPElementCategoryShortName
- MRPElementCategoryName
- ProductionVersion
Planned Order API
Planned_Order_API_Planned_Order
Purpose
The purpose of the connector is to fetch information available on the header data of existing planned orders. There are many response parameters that are returned in the connector, we have highlighted parameters that could be used as inputs to other connectors like PlannedOrder. We could use the required parameters based on the use case.
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_PLANNED_ORDERS/A_PlannedOrder
Required Input
The following are the parameters that are sent as query parameters
- $top default value set 25
Output Extractor
An array of planned orders information - The response parameters are highlighted below.
- PlannedOrder
- PlannedOrderType
- PlannedOrderProfile
- Material
- MaterialName
- ProductionPlant
- MRPPlant
- MRPArea
- ProductionVersion
- MaterialProcurementCategory
- MaterialProcurementType
- PlndOrderPlannedStartDate
- PlndOrderPlannedStartTime
- PlndOrderPlannedEndDate
- PlndOrderPlannedEndTime
- PlannedOrderOpeningDate
- LastChangeDateTime
- ProductionStartDate
- ProductionEndDate
Planned_Order_API_Planned_Order_by_Id
Purpose
The purpose of the connector is to fetch information available on the header data of the existing planned order identified by the PlannedOrder. There are many response parameters that are available in the connector, we have highlighted a few of them in the documentation. We could use the required parameters based on a specific use case
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_PLANNED_ORDERS/A_PlannedOrder('
Required Input
The following parameters are sent as a query parameter(URL Parameter)
- $top default value set 25
- PlannedOrder
Output Extractor
An object of planned orders information - The response parameters are highlighted below.
- PlannedOrder
- PlannedOrderType
- PlannedOrderProfile
- Material
- MaterialName
- ProductionPlant
- MRPPlant
- MRPArea
- ProductionVersion
- MaterialProcurementCategory
- MaterialProcurementType
- PlndOrderPlannedStartDate
- PlndOrderPlannedStartTime
- PlndOrderPlannedEndDate
- PlndOrderPlannedEndTime
- PlannedOrderOpeningDate
- LastChangeDateTime
- ProductionStartDate
- ProductionEndDate
Planned_Order_API_Planned_Order_Capacity_By_Id
Purpose
The purpose of the connector is to fetch the information on the capacity data belonging to the order, specified using the planned order number. There are many response parameters that are available in the connector, we have highlighted a few of them in the documentation. We could use the required parameters based on the use case.
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_PLANNED_ORDERS/A_PlannedOrder('
Required Input
The following are the parameters that are sent as query parameters
- $top default value set to 25
- PlannedOrder
Output Extractor
An array of capacity information for planned Orders - The response parameters are highlighted below.
- CapacityRequirement
- CapacityRequirementItem
- CapacityRqmtItemCapacity
- PlannedOrder
- PlannedOrderType
- Sequence
- Operation
- SubOperation
- WorkCenter
- CapacityCategoryCode
- Capacity
- MRPController
- MRPPlant
Planned_Order_API_Planned_Order_Capacity_by_PlannedOrder_And_Filters
Purpose
The purpose of the connector is to fetch the capacity information for a single capacity item that you specify using the capacity requirement ID, the capacity requirement item, and the item capacity. We could use the required parameters based on the use case.
Endpoint
Required Input
The following are the parameters that are sent query parameter
- $top default value set 25
- PlannedOrder
- CapacityRequirement
- CapacityRequirementItem
- CapacityRqmtItemCapacity
Output Extractor
An array of capacity information for planned Order - The response parameters are highlighted below.
- CapacityRequirement
- CapacityRequirementItem
- CapacityRqmtItemCapacity
- PlannedOrder
- PlannedOrderType
- Sequence
- Operation
- SubOperation
- WorkCenter
- CapacityCategoryCode
- Capacity
- MRPController
- MRPPlant
Planned_Order_API_Planned_Order_Components_by_PlannedOrder_Id
Purpose
The purpose of the connector is to fetch information on the components belonging to the order, specified using the planned order number. There are many response parameters that are available in the connector, we have highlighted a few of them in the documentation. We could use the required parameters based on the use case.
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_PLANNED_ORDERS/A_PlannedOrder('{PlannedOrder}')/to_PlannedOrderComponent
Required Input
The following are the parameters that are sent as query parameters
- $top default value set 25
- PlannedOrder
Output Extractor
An array of components belonging to the order - The response parameters are highlighted below.
- Reservation
- ReservationItem
- PlannedOrder
- BOMItem
- BOMItemDescription
- BillOfMaterialCategory
- SortField
- BOMItemCategory
- Material
- MatlCompRequirementDate
- GoodsMovementEntryQty
- EntryUnit
- RequiredQuantity
- Base Unit
- WithdrawnQuantity
- MaterialComponentIsPhantomItem
- Plant
- Storage Location
- SupplyArea
Planned_Order_API_Planned_Order_Components_by_PlannedOrder_and_Filters
Purpose
The purpose of the connector is to fetch data for a single planned order component that you specify using the reservation number and the reservation item number. There are many response parameters that are available in the connector, we have highlighted all of them in the documentation. We could use the required parameters based on the use case.
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_PLANNED_ORDERS/A_PlannedOrder('{PlannedOrder}')/to_PlannedOrderComponent(Reservation='{Reservation}',ReservationItem='{ReservationItem}')
Required Input
The following are the parameters that are sent as query parameters
- $top default value set 25
- PlannedOrder
- Reservation
- ReservationItem
Output Extractor
An object of components belonging to the order - The response parameters are highlighted below.
- Reservation
- ReservationItem
- PlannedOrder
- BOMItem
- BOMItemDescription
- BillOfMaterialCategory
- SortField
- BOMItemCategory
- Material
- MatlCompRequirementDate
- GoodsMovementEntryQty
- EntryUnit
- RequiredQuantity
- Base Unit
- WithdrawnQuantity
- MaterialComponentIsPhantomItem
- Plant
- Storage Location
- SupplyArea
Production Order API
Production_Order_API_Production_Order
Purpose
The purpose of the connector is to fetch information available on the header data of existing production orders. There are many response parameters that are available in the connector, we have highlighted a few of them in the documentation. We could use the required parameters based on the use case.
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_PRODUCTION_ORDER_2_SRV/A_ProductionOrder_2
Required Input
The following are the parameters that are sent as query parameters
- $top default value set to 25
Output Extractor
An array of Production order parameters - The response parameters are highlighted below.
- ManufacturingOrder
- ManufacturingOrderCategory
- ManufacturingOrderType
- ManufacturingOrderImportance
- OrderIsCreated
- OrderIsReleased
- OrderIsPrinted
- OrderIsConfirmed
- OrderIsClosed
- OrderIsPartiallyDelivered
- OrderIsMarkedForDeletion
- MfgOrderCreationDate
- MfgOrderCreationTime
- LastChangeDateTime
- Plant
- MRPArea
- MRPController
- Production Supervisor
- ProductionVersion
- PlannedOrder
- MfgOrderPlannedStartDate
- MfgOrderPlannedStartTime
Production_Order_API_Production_Order_by_Manufacturing_Order
Purpose
The purpose of the connector is to fetch information for a specific production order that you specified using the production order number. There are many response parameters that are available in the connector, we have highlighted a few of them in the documentation. We could use the required parameters based on the use case.
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_PRODUCTION_ORDER_2_SRV/A_ProductionOrder_2('{ManufacturingOrder}')
Required Input
The following are the parameters that are sent as query parameters
- ManufacturingOrder
Output Extractor
An Object of Production order parameters - Some of the response parameters are highlighted below.
- ManufacturingOrder
- ManufacturingOrderCategory
- ManufacturingOrderType
- ManufacturingOrderImportance
- OrderIsCreated
- OrderIsReleased
- OrderIsPrinted
- OrderIsConfirmed
- OrderIsClosed
- OrderIsPartiallyDelivered
- OrderIsMarkedForDeletion
- MfgOrderCreationDate
- MfgOrderCreationTime
- LastChangeDateTime
- Material
- MfgOrderPlannedStartDate
- MfgOrderPlannedStartTime
- MfgOrderPlannedEndDate
- MfgOrderPlannedEndTime
Production_Order_API_Production_Order_by_Manufacturing_Order_Component
Purpose
The purpose of the connector is to fetch information on the components belonging to the order specified using the production order number. There are many response parameters that are available in the connector, we have highlighted all of them in the documentation. We could use the required parameters based on the use case.
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_PRODUCTION_ORDER_2_SRV/A_ProductionOrder_2('{ManufacturingOrder}')/to_ProductionOrderComponent
Required Input
The following are the parameters that are sent as the Request Body
- $top default value set to 25
- ManufacturingOrder
Output Extractor
An Array of component parameters of Production order - Some of the response parameters are highlighted below.
- Reservation
- ReservationItem
- MaterialGroup
- Material
- Plant
- ManufacturingOrderCategory
- ManufacturingOrderType
- ManufacturingOrder
- ManufacturingOrderSequence
- ManufacturingOrderOperation
- Production Plant
- OrderInternalBillOfOperations
- MatlCompRequirementDate
- MatlCompRequirementTime
- BillOfMaterialCategory
- BOMItem
- BOMItemCategory
- BillOfMaterialItemNumber
- BOMItemDescription
- Storage Location
Production_Order_API_Production_Order_by_Manufacturing_Order_Items
Purpose
The purpose of the connector is to fetch information on the items belonging to the order specified using the production order number. There are many response parameters that are available in the connector, we have highlighted a few of them in the documentation. We could use the required parameters based on the use case.
Endpoint
Required Input
The following are the parameters that are sent as query parameters
- $top default value set to 25
- ManufacturingOrder
Output Extractor
An Array of items parameter of Production order - Some of the response parameters are highlighted below.
- ManufacturingOrder
- ManufacturingOrderItem
- ManufacturingOrderCategory
- ManufacturingOrderType
- IsCompletelyDelivered
- Material
- Production Plant
- Plant
- MRPArea
- MfgOrderItemPlndDeliveryDate
- MfgOrderItemActualDeliveryDate
- Production Unit
- MfgOrderItemPlannedTotalQty
- MfgOrderItemPlannedScrapQty
- MfgOrderItemGoodsReceiptQty
- MfgOrderItemActualDeviationQty
Production_Prder_API_Production_Order_by_Manufacturing_Order_Operation
Purpose
The purpose of the connector is to fetch information on the operations belonging to the order specified using the production order number. There are many response parameters that are available in the connector, we have highlighted a few of them in the documentation. We could use the required parameters based on the use case.
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_PRODUCTION_ORDER_2_SRV/A_ProductionOrder_2('{ManufacturingOrder}')/to_ProductionOrderOperation
Required Input
The following are the parameters that are sent as query parameters
- $top default value set to 25
- ManufacturingOrder
Output Extractor
An array of Operation parameters for Production order - Some of the response parameters are highlighted below.
- OrderInternalBillOfOperations
- OrderIntBillOfOperationsItem
- ManufacturingOrder
- ManufacturingOrderSequence
- ManufacturingOrderOperation
- ManufacturingOrderSubOperation
- ManufacturingOrderCategory
- ManufacturingOrderType
- Production Plant
- WorkCenterInternalID
- WorkCenterTypeCode
- WorkCenter
Production_Order_API_Production_Order_by_Manufacturing_Order_Status
Purpose
The purpose of the connector is to fetch information on the status of the order specified using the production order number. There are many response parameters that are available in the connector, we have highlighted a few of them in the documentation. We could use the required parameters based on the use case.
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_PRODUCTION_ORDER_2_SRV/A_ProductionOrder_2('{ManufacturingOrder}')/to_ProductionOrderStatus
Required Input
The following are the parameters that are sent as query parameters
- $top default value set to 25
- ManufacturingOrder
Output Extractor
An array of the status of Production order - The response parameters are highlighted below.
- ManufacturingOrder
- StatusCode
- IsUserStatus
- StatusShortName
- StatusName
Inspection Data API
Inspection_Lot_API_Inspection_Lot_Data
Purpose
The purpose of the connector is to fetch information of inspection lots with data at the inspection lot header level. There are many response parameters that are available in the connector, we have highlighted a few of them in the documentation. We could use the required parameters based on the use case.
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_INSPECTIONLOT_SRV/A_InspectionLot
Required Input
The following are the parameters that are sent as query parameters
- $top default value set to 50
Output Extractor
An array of inspection lot information - The response parameters are highlighted below.
- InspectionLot
- Material
- Batch
- Plant
- InspectionLotOrigin
- OrderInternalBillOfOperations
- ManufacturingOrder
- InspectionLotText
- InspectionLotType
- InspectionLotQuantity
- InspectionLotActualQuantity
- InspectionLotDefectiveQuantity
- InspectionLotQuantityUnit
- InspLotCreatedOnLocalDate
- InspSubsetFieldCombination
- InspLotNmbrOpenLongTermCharc
- StatusObject
- StatusObjectCategory
- InspectionLotObjectText
- StatusProfile
Inspection_Lot_API_Inspection_Lot_Statuses
Purpose
The purpose of the connector is to fetch information of inspection lot status information, for example, whether results are confirmed or defects are recorded. There are many response parameters that are available in the connector, we have highlighted a few of them in the documentation. We could use the required parameters based on the use case.
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_INSPECTIONLOT_SRV/A_InspectionLotWithStatus
Required Input
The following are the parameters that are sent as query parameters
- $top default value set 50
Output Extractor
An array of inspection lot status information - The response parameters are highlighted below.
InspectionLot
- InspectionLotStatusCreated
- InspectionLotStatusReleased
- InspectionLotStatusSkip
- InspLotStatusRsltsConfirmed
- InspLotStsDefectsRecorded
- InspLotStsShrtTrmInspCmpltd
- InspLotStatusInspCompleted
- InspLotStatusCanceled
- InspLotStatusRepair
Inspection_Lot_API_Inspection_Lot_Statuses_by_Inspection Lot
Purpose
The purpose of the connector is to fetch information of the inspection lot status information of a specific inspection lot. There are many response parameters that are available in the connector, we have highlighted a few of them in the documentation. We could use the required parameters based on a specific use case.
Endpoint
HTTP GET call to the endpoint https://sandbox.api.sap.com/s4hanacloud/sap/opu/odata/sap/API_INSPECTIONLOT_SRV/A_InspectionLotWithStatus(‘{InspectionLot}’)
Required Input
The following are the parameters that are sent as query parameters
- $top default value set to 25
- Inspection Lot
Output Extractor
An object of inspection lot status information - The response parameters are highlighted below.