Push API
Send offer batches directly with merchant-scoped credentials.
When to use it
A practical fit for your existing workflow.
Commerce applications that need controlled on-demand updates and machine-readable import diagnostics.
Input contract
Fields and structure
Use stable field names and meanings across every refresh. Legend normalizes the values, but the source contract should not drift silently.
Required or expected
Bearer merchant tokenoffers arrayskutitlepricecurrencyproduct_url
Recommended fields
formatgtinlwinstockdelivery_timevisibilitydeactivate_missing
Supported variations
- Up to 1,000 offers per request
- Dry-run validation endpoint
- Import status polling
- Unmatched-row review workflow
Copyable example
Push request
Replace the demonstration values with your own catalogue data. No customer, order, or payment data belongs in an inventory feed.
BASH
curl -X POST https://ppclqrs.dev/api/v1/feed \
-H 'Authorization: Bearer <merchant-token>' \
-H 'Content-Type: application/json' \
-d '{
"format": "lqrs",
"offers": [{
"sku": "DEMO-001",
"title": "Legend Demo Single Malt",
"gtin": "5010327000142",
"price": "39.50",
"currency": "GBP",
"product_url": "https://merchant.example/products/demo-001"
}]
}'
From source to live offer
Connection workflow
Every route uses the same quality gates before an offer becomes public.
Create a scoped token in Business Manager.
POST representative data to the validation endpoint.
Push accepted batches and store the returned import ID.
Poll import diagnostics and resolve unmatched rows.
Before publication
Validation checklist
These checks keep bad prices, stale stock, and uncertain product matches out of the public marketplace.
- Inactive or invalid merchant tokens are rejected.
- A request contains offers or a feed URL, never an empty import.
- Batches are limited to 1,000 offers.
- Validation uses the same parser and matcher as publication.
Other connection paths