FileRelay
Documentation
Try for Free

Common S/4HANA OData Services

Reference list of released S/4HANA OData APIs for document and invoice processing — API_SUPPLIERINVOICE_PROCESS_SRV, API_CV_ATTACHMENT_SRV, API_BILLING_DOCUMENT_SRV and more, with $metadata tips.

Common S/4HANA OData Services

S/4HANA (Cloud and on-premise) exposes released OData APIs per business object. If your goal is getting documents and attachments out of SAP, these are the services you'll meet most often. FileRelay consumes them as a client — no ABAP, no BTP DMS required. Setup guide: SAP OData Setup.

The services

Service Business object Typical documents
API_CV_ATTACHMENT_SRV Cross-application attachments Any file attached to a business object via GOS / DMS — the workhorse for document extraction
API_SUPPLIERINVOICE_PROCESS_SRV Supplier invoice Incoming invoices and their attachments
API_PURCHASEORDER_PROCESS_SRV Purchase order POs, PO attachments
API_SALES_ORDER_SRV Sales order Sales orders and references
API_BILLING_DOCUMENT_SRV Billing document Customer invoices — including rendered PDFs
API_OUTBOUND_DELIVERY_SRV Outbound delivery Delivery notes
API_MATERIAL_DOCUMENT_SRV Material document Goods movements

All of them live under the same root pattern:

https://<host>/sap/opu/odata/sap/<SERVICE_NAME>/

Inspecting a service with $metadata

Every OData service describes itself. Fetch the EDMX document to see entity sets, key fields, and navigation properties:

GET /sap/opu/odata/sap/API_SUPPLIERINVOICE_PROCESS_SRV/$metadata
Authorization: Basic … (or Bearer, depending on your setup)

Notes that save time:

  • $metadata requires the same authentication as the service itself — a 401 here means your user or communication arrangement isn't set up, not that the service is missing.
  • A 403 with valid credentials usually means the service isn't activated (on-premise: /IWFND/MAINT_SERVICE; Cloud: the API's communication scenario isn't in your Communication Arrangement).
  • Entity sets ending in …AttachmentSet or exposing a $value stream are where the actual file bytes live.

The attachment pattern

Most document extraction follows the same two-step shape regardless of service:

GET …/AttachmentContentSet?$filter=…        # 1. list attachment metadata
GET …/AttachmentContentSet(…)/$value        # 2. fetch the binary

FileRelay runs this loop for you on a poll interval (or triggered by an Event Mesh webhook), then routes each fetched document through your connections to SharePoint, S3, or any other destination.

Which service should I use?

  • You want files attached to business objectsAPI_CV_ATTACHMENT_SRV covers most cases in one service.
  • You want the business documents themselves (e.g. rendered customer invoices) → use the object-specific service, like API_BILLING_DOCUMENT_SRV.
  • You're on S/4HANA Cloud Public and the content lives in DMS → consider the CMIS source instead.
  • Not sure which protocol fits at all?Protocol comparison or the interactive picker.