Skip to main content
Activating a listing creates an order. ZAM validates your input, signs the request with HMAC, calls the seller’s endpoint, and returns the result.

Prerequisites

  • A ZAM API key with order:create scope
  • The ID of a published listing

Activate

zam activate LISTING_ID --request-body '{"city": "San Francisco"}'
The CLI creates the order and polls automatically until it completes or the timeout expires (default: 10 seconds).To change the timeout:
zam activate LISTING_ID --timeout 30 --request-body '{"city": "San Francisco"}'

What happens during activation

  1. ZAM validates your requestBody against the listing’s inputSchema (if defined). Invalid input returns 400.
  2. ZAM creates an order in pending state.
  3. ZAM signs the request with HMAC-SHA256 (if the seller has a signing secret) and calls the seller’s endpoint with a 30-second timeout.
  4. On success, the order moves to completed and stores the response. On failure, it moves to failed and stores the error.
As a buyer, you don’t need to worry about HMAC signing — ZAM handles it automatically. The signing ensures the seller can trust the request came from ZAM.

Error cases

HTTP statusCause
400Request body fails input schema validation
401Missing or invalid API key
403API key lacks order:create scope
404Listing not found
422Listing exists but has no run contract
429Seller’s service has reached its invocation limit