Ap2 Negotiate Alias

Create a PENDING alias contract.

Does NOT cross-wire into AP2EnhancedHandler's intent/cart lifecycle; A2A CATALOG v1.0: terms use unit_price_usd and total_price_usd from the catalog. Unknown item_id (SKU) returns HTTP 404.

DIPLOMAT_v1.0 (MP #53): personalized pricing is layered after _terms_for_catalog_item via _compute_diplomat_terms(). FLAGGED buyers receive an HTTP 402 PoW challenge instead of terms; submit the solution via the X-PoW-Solution request header on a retry. The Diplomat layer is wrapped in try/except -- any failure leaves the negotiate handler in its pre-MP-#53 catalog-price behavior (Rule #7 ADDITIVE ONLY).

SENTINEL_v1.0 (MP #55, Task 2.3): the Sentinel screens every incoming request through the SemanticFirewall BEFORE catalog, Diplomat, and credit checks. Confirmed injection patterns return HTTP 403 sentinel_blocked; everything else (including Sentinel-internal errors per Rule #7) falls through to the pre-MP-#55 handler logic unchanged.

NEGOTIATE_GUARDS_v1.0 (MP #76): buyer DID format and self-purchase are rejected at the top of this function, before catalog lookup and before the credit gate, so a rejected request consumes no credit headroom and touches no catalog state. Historical invoices are not updated or deleted.

post/api/ap2/negotiate

Request

  • Base URL: https://api.merchant-0.com (the document declares no server; this is the origin it was published from)
  • URL: https://api.merchant-0.com/api/ap2/negotiate
  • Auth: none declared

Headers

X-PoW-Solutionstring nullable

Request body

buyer_didstring required
item_idstring required
quantityinteger

Response

Successful Response

unknown required

Changes

No recorded changes to this operation across all 1 revision of this API.