Supplier API
Suppliers push procurement prices, stock and lead times for SourceParts EU catalogue SKUs over a small REST API. Access is granted by hand — request a key below.
REST · v1 Auth: Bearer key Format: JSON Rate limit: 120/min openapi.json ↗
On this page
How it works
- Request access with the form below — tell us what you supply.
- We review and issue you an API key (
spk_live_…) by e-mail. - Your system pushes offers to the API whenever prices or stock change.
- We buy from the best offer per SKU. Keys are personal, revocable, and can expire.
Base URL & authentication
All endpoints live under this base URL:
https://shop.sourceparts.eu/api/supplier/v1
Send your key as a bearer token on every request:
Authorization: Bearer spk_live_your_key_here
data;
errors under error with a code and message.
The API is rate-limited to 120 requests per minute per key.
Endpoints
| Method | Path | Purpose |
|---|---|---|
| GET | /ping | Verify your key |
| GET | /products | Catalogue SKUs you can quote |
| GET | /offers | Read back your offers |
| POST | /offers | Bulk create/update (upsert) |
| PUT | /offers/{sku} | Create/update one offer |
| DEL | /offers/{sku} | Withdraw an offer |
GET /ping
Verify your key and see how we identify you.
curl -s https://shop.sourceparts.eu/api/supplier/v1/ping \
-H "Authorization: Bearer spk_live_…"
GET /products
The catalogue SKUs you can quote against, with names. Map these to your own order codes.
curl -s https://shop.sourceparts.eu/api/supplier/v1/products \
-H "Authorization: Bearer spk_live_…"
POST /offers
Bulk create/update. Idempotent — we upsert one offer per SKU, so you can send your full feed any time. Up to 1000 offers per call.
curl -s -X POST https://shop.sourceparts.eu/api/supplier/v1/offers \
-H "Authorization: Bearer spk_live_…" \
-H "Content-Type: application/json" \
-d '{
"offers": [
{
"sku": "SP-B866-4E4P1",
"supplier_sku": "HW-B866-4E4P1",
"procure_price": 142.50,
"currency": "EUR",
"stock": 240,
"lead_time_days": 3,
"moq": 1,
"valid_until": "2026-12-31"
}
]
}'
GET /offers
Read back the offers we currently hold from you.
curl -s https://shop.sourceparts.eu/api/supplier/v1/offers \
-H "Authorization: Bearer spk_live_…"
PUT /offers/{sku}
Create or update a single offer.
curl -s -X PUT https://shop.sourceparts.eu/api/supplier/v1/offers/SP-B866-4E4P1 \
-H "Authorization: Bearer spk_live_…" \
-H "Content-Type: application/json" \
-d '{ "procure_price": 139.00, "stock": 180, "lead_time_days": 2 }'
DELETE /offers/{sku}
Withdraw an offer (e.g. end-of-life).
curl -s -X DELETE https://shop.sourceparts.eu/api/supplier/v1/offers/SP-B866-4E4P1 \
-H "Authorization: Bearer spk_live_…"
The offer object
| Field | Type | Required | Description |
|---|---|---|---|
sku | string | yes | Our catalogue SKU (see /products) |
procure_price | number | yes | Unit purchase price, excl. VAT |
supplier_sku | string | no | Your own order code |
currency | string(3) | no | Defaults to EUR |
stock | integer | no | Units available |
lead_time_days | integer | no | Days to deliver |
moq | integer | no | Minimum order quantity |
valid_until | date | no | Price validity (YYYY-MM-DD) |
meta | object | no | Any extra fields; stored as-is |
Errors
Errors always return JSON with an error object — never an HTML page.
{ "error": { "code": "unauthorized", "message": "Invalid, expired or revoked API key." } }
| Status | Meaning |
|---|---|
401 | Missing / invalid / revoked / expired key |
422 | Validation error (see errors per field) |
404 | No such offer |
429 | Rate limit exceeded |
Request access
Tell us who you are and what you supply. We review every request by hand.
No API yet? We build it for you
Many of the best suppliers still send stock and prices by FTP, spreadsheet or by hand. We build you a clean, automated connection — at a low fixed price — so your catalogue sells itself. It works from whatever you have today: FTP, an ERP, a flat file, or nothing yet.
What it gets you
- Win more orders, automatically. Your live stock and prices reach the buyer the moment they change — and we buy from the best offer per SKU, so you're always in the running.
- Zero manual work. No more e-mailing spreadsheets or updating portals by hand. Push once; stay live.
- Never oversell or quote stale prices. Stock and pricing stay in sync automatically.
- Works with what you have. FTP, ERP, a flat file, or a fresh build — we bridge it.
- Low fixed price, fast build — and it's yours. One clean API you can also point at other buyers and marketplaces.