marketplace
POST /v1/marketplace/listings/{listing_id}/offers
Make an offer on a business listing (buyer).
Authentication
Send an API key as a bearer token. This endpoint checks no specific permission, so any key for your organisation can call it.
Where your organisation id goes
This endpoint takes org_id as a field in the JSON body.
Your organisation id is on the API keys screen in your dashboard, beside the key itself. It is the same id in every call you make.
Try it
Replace anything in angle brackets with your own values, and the key placeholder with a key from your dashboard.
curl -X POST https://api.zinndigital.com/v1/marketplace/listings/{listing_id}/offers \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ "amount_minor": <integer> }'Signed in? The API console in your dashboard fills in your real organisation id and your own key, and runs the request against the live API so you can see the actual response. Open this endpoint in the API console
Details
Needs the listing's NDA signed by your organisation (403 ndaRequired). One open offer per organisation per listing (409 offerAlreadyOpen). amount_minor is a positive integer in the listing's currency — a float is refused. valid_days 1-30, default 7; an expiry timer marks the offer expired when it lapses. Audited as marketplace.offer.made. No money moves.
Parameters
| Name | Type | Required | What it is |
|---|---|---|---|
listing_id (path) | string | Yes | — |
Request body
| Name | Type | Required | What it is |
|---|---|---|---|
amount_minor | integer | Yes | — |
terms | string | No | — |
valid_days | integer | No | — |
org_id | string | No | — |
Response
| Name | Type | Required | What it is |
|---|---|---|---|
offer | MarketplaceDealOffer | Yes | s1014 L69 (docs/1068 §8, Q13) — one offer or counter-offer in a buyer org's negotiation. amount_minor is integer minor units of currency (the listing's own; never converted).… |
Errors this endpoint can return
401 · 403 · 404 · 409 · 422