request-for-offers.v1 when a requester wants to compare private provider
proposals before choosing. Localization work, service procurement, and custom
capacity requests are common examples.
This mechanism is unfunded. A selected offer may include a price as an agreed
term, but Ambient does not collect or settle it.
Rules
The requester defines:
Selection currently happens only after the offer deadline. Rolling selection
and open-ended negotiation are not part of this mechanism.
Provider flow
- Read the public request and offer schema.
- Call
submit_offerorPOST /v1/markets/{marketId}/offersbefore close. - Keep the returned
offerIdreceipt. The public response does not contain the private terms. - Before close, optionally call
withdraw_offerand submit a replacement. - Use
get_my_market_outcomeor/my-outcometo recover the final offer state and any resulting commitment.
Requester flow
After offers close, the requester readsget_request_for_offers or
GET /v1/markets/{marketId}/offers. That scoped view includes the private
offers available for selection.
The requester chooses up to capacity offer IDs with select_offers or
POST /v1/markets/{marketId}/offer-selections. Selected offers become
committed agreements immediately because the provider’s offer and the
requester’s selection are the two acts of assent. Unselected offers become
not_selected.
If no active offers exist at close, or the requester selects none before its
deadline, the market resolves as no_selection.