Contents

POST [/instances/$INSTANCE]/orders/$ORDER_ID/claim#

Wallet claims ownership (via nonce) over an order. By claiming an order, the wallet obtains the full contract terms, and thereby implicitly also the hash of the contract terms it needs for the other public APIs to authenticate itself as the wallet that is indeed eligible to inspect this particular order’s status.

Request:

The request must be a ClaimRequest.

Response:

200 OK:

The client has successfully claimed the order. The response contains the contract terms.

404 Not found:

The backend is unaware of the instance or order.

409 Conflict:

Someone else has already claimed the same order ID with a different nonce.

Details:

interface ClaimRequest {
  // Nonce to identify the wallet that claimed the order.
  nonce: EddsaPublicKey;

  // Token that authorizes the wallet to claim the order.
  // *Optional* as the merchant may not have required it
  // (create_token set to false in PostOrderRequest).
  token?: ClaimToken;
}
interface ClaimResponse {
  // Contract terms of the claimed order
  contract_terms: ContractTerms;

  // Signature by the merchant over the contract terms.
  sig: EddsaSignature;
}