API, integrations and webhooks
Last updated: 9/20/2026
Sourced integrates with your ERP and your systems in three ways: the public API (with API keys), the managed connectors and the notification webhooks. Besides querying data, the public API lets you operate on purchase orders: for example, setting your ERP's PO number or updating its status. It also lets you cancel requisitions your ERP voided: what happens in each case is explained in ERP requisition triage.
Looking for how to call the API? The full technical reference (endpoints, parameters and examples) is in the API Documentation.
API keys
Create a credential with a descriptive name ("Production SAP integration"). The full key is shown only once, so copy it and store it in your secrets manager.
It is used as
Authorization: Bearer sk_live_…against the public API (see the API Documentation).The list shows the prefix, the status and the last use, which helps you spot dead integrations. Revoke any that are no longer in use; revocation is immediate.
API logs
An audit of every call: date, method, path, response code, latency and which key made it. Filter by path or by errors only (≥400) to diagnose integration problems.
Webhooks
Real-time outbound notifications to your systems when things happen in Sourced (PR created or approved, PO generated, etc.). The list shows the URL, the subscribed events and the status. Endpoints are configured together with Sourced; your endpoint must be HTTPS and respond quickly.
ERP connectors
The status of the managed connectors (SAP S/4HANA, SAP Business One, Oracle, JD Edwards, NetSuite, Sage…): last connection, last error and consecutive failures. The credentials and configuration are managed by Sourced. If you see sustained failures, report it to your support channel with the connector's name.
A connector brings more than requisitions. Depending on what is enabled, it can sync:
Requisitions and their lines, which feed the triage board, with automatic closing of lines that stop being open on the ERP side.
Attached documents from the ERP, which travel with the request for quotation to the supplier.
The material master, through an incremental sweep of what changed.
Approved purchase orders and their goods receipts, which feed delivery tracking.
The scope can be narrowed —for example, to specific purchasing groups— so that Sourced only sees the portion of the ERP that applies.
This section is aimed at your organization's technical or IT team. If you are a buyer, approver or have another operational role, you don't need to configure any of this: integrations are managed by the technical team together with Sourced.
Delivery tracking via API
If your organization has the delivery tracking module enabled, your system can create and manage delivery trackings directly through the public API: create or update lines from your purchase orders, check their statuses and supplier responses, and mark a line as delivered, pause it, resume it, mark it urgent, or cancel it.
These trackings coexist with the ones loaded via Excel/CSV in Data Upload and the ones that arrive through your ERP sync: each line is managed by exactly one source. Once your system creates or updates a line through the API, that line stops being touched by file uploads or by the ERP sync (and vice versa).
The full technical reference (endpoints, parameters and examples) is in the API Documentation: share it with your IT team.
Delivery webhook events
If you use the delivery tracking API, you can subscribe your webhooks to these four events (they're selected along with the others when creating or editing a webhook):
delivery_tracking.response_received: the supplier responded about a line.delivery_tracking.status_changed: a line's status changed (for example, from Sent to Confirmed).delivery_tracking.delivered: a line was marked as delivered.delivery_tracking.cancelled: a line was cancelled.
Like every other webhook, your endpoint must be HTTPS and respond quickly; the signature and payload reference for each event is in the API Documentation.