{"openapi":"3.1.0","info":{"title":"AgentiScript Commerce Core V1","version":"1.0.0","description":"XRPL Testnet only. Synthetic value only. No real product purchase. No investment or financial claim. No mainnet settlement address. No real customer revenue attribution."},"servers":[{"url":"https://agentiscript-x402-testnet-staging.portability.workers.dev"}],"paths":{"/v1/discovery":{"get":{"operationId":"commerceDiscovery","summary":"commerce discovery","x-access-boundary":"public_rate_limited","responses":{"200":{"description":"Request accepted or completed under the declared Testnet boundary."},"400":{"description":"Invalid request."},"404":{"description":"Resource not found."},"429":{"description":"Rate limited."},"503":{"description":"Dependency unavailable; commerce fails closed."}}}},"/v1/openapi.json":{"get":{"operationId":"commerceOpenApi","summary":"commerce open api","x-access-boundary":"public_rate_limited","responses":{"200":{"description":"Request accepted or completed under the declared Testnet boundary."},"400":{"description":"Invalid request."},"404":{"description":"Resource not found."},"429":{"description":"Rate limited."},"503":{"description":"Dependency unavailable; commerce fails closed."}}}},"/v1/examples":{"get":{"operationId":"commerceExamples","summary":"commerce examples","x-access-boundary":"public_rate_limited","responses":{"200":{"description":"Request accepted or completed under the declared Testnet boundary."},"400":{"description":"Invalid request."},"404":{"description":"Resource not found."},"429":{"description":"Rate limited."},"503":{"description":"Dependency unavailable; commerce fails closed."}}}},"/v1/sandbox":{"get":{"operationId":"commerceSandbox","summary":"commerce sandbox","x-access-boundary":"public_rate_limited","responses":{"200":{"description":"Request accepted or completed under the declared Testnet boundary."},"400":{"description":"Invalid request."},"404":{"description":"Resource not found."},"429":{"description":"Rate limited."},"503":{"description":"Dependency unavailable; commerce fails closed."}}}},"/v1/commercial":{"get":{"operationId":"commercialProfile","summary":"commercial profile","x-access-boundary":"public_rate_limited","responses":{"200":{"description":"Request accepted or completed under the declared Testnet boundary."},"400":{"description":"Invalid request."},"404":{"description":"Resource not found."},"429":{"description":"Rate limited."},"503":{"description":"Dependency unavailable; commerce fails closed."}}}},"/v1/adapters":{"get":{"operationId":"adapterAvailability","summary":"adapter availability","x-access-boundary":"public_rate_limited","responses":{"200":{"description":"Request accepted or completed under the declared Testnet boundary."},"400":{"description":"Invalid request."},"404":{"description":"Resource not found."},"429":{"description":"Rate limited."},"503":{"description":"Dependency unavailable; commerce fails closed."}}}},"/v1/catalog":{"get":{"operationId":"catalogSearch","summary":"catalog search","x-access-boundary":"public_rate_limited","responses":{"200":{"description":"Request accepted or completed under the declared Testnet boundary."},"400":{"description":"Invalid request."},"404":{"description":"Resource not found."},"429":{"description":"Rate limited."},"503":{"description":"Dependency unavailable; commerce fails closed."}}}},"/v1/products/{family}/{slug}":{"get":{"operationId":"productInspect","summary":"product inspect","x-access-boundary":"public_rate_limited","responses":{"200":{"description":"Request accepted or completed under the declared Testnet boundary."},"400":{"description":"Invalid request."},"404":{"description":"Resource not found."},"429":{"description":"Rate limited."},"503":{"description":"Dependency unavailable; commerce fails closed."}}}},"/v1/quotes":{"post":{"operationId":"quoteCreate","summary":"quote create","x-access-boundary":"public_strict_rate_limit","responses":{"200":{"description":"Request accepted or completed under the declared Testnet boundary."},"400":{"description":"Invalid request."},"404":{"description":"Resource not found."},"429":{"description":"Rate limited."},"503":{"description":"Dependency unavailable; commerce fails closed."}}}},"/v1/quotes/{quoteId}":{"get":{"operationId":"quoteInspect","summary":"quote inspect","x-access-boundary":"public_strict_rate_limit","responses":{"200":{"description":"Request accepted or completed under the declared Testnet boundary."},"400":{"description":"Invalid request."},"404":{"description":"Resource not found."},"429":{"description":"Rate limited."},"503":{"description":"Dependency unavailable; commerce fails closed."}}}},"/v1/purchases/{quoteId}":{"post":{"operationId":"purchaseVerify","summary":"purchase verify","x-access-boundary":"valid_quote_payment_binding","responses":{"200":{"description":"Request accepted or completed under the declared Testnet boundary."},"400":{"description":"Invalid request."},"404":{"description":"Resource not found."},"429":{"description":"Rate limited."},"503":{"description":"Dependency unavailable; commerce fails closed."}}}},"/v1/deliveries":{"get":{"operationId":"deliveryFetch","summary":"delivery fetch","x-access-boundary":"scoped_entitlement_token","responses":{"200":{"description":"Request accepted or completed under the declared Testnet boundary."},"400":{"description":"Invalid request."},"404":{"description":"Resource not found."},"429":{"description":"Rate limited."},"503":{"description":"Dependency unavailable; commerce fails closed."}}}},"/v1/health":{"get":{"operationId":"commerceHealth","summary":"commerce health","x-access-boundary":"public_rate_limited","responses":{"200":{"description":"Request accepted or completed under the declared Testnet boundary."},"400":{"description":"Invalid request."},"404":{"description":"Resource not found."},"429":{"description":"Rate limited."},"503":{"description":"Dependency unavailable; commerce fails closed."}}}}},"x-commerce-schema-version":"1.0.0","x-mcp-tools":[{"name":"commerce_catalog_search","description":"Search the bounded Testnet product-family catalog.","inputSchema":{"type":"object","properties":{"query":{"type":"string","maxLength":80}},"required":[],"additionalProperties":false},"annotations":{"readOnlyHint":true}},{"name":"commerce_product_inspect","description":"Inspect one evidence-qualified Testnet product without purchasing it.","inputSchema":{"type":"object","properties":{"family":{"type":"string","enum":["provenance-verification","concept-definition"]},"slug":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{0,78}[a-z0-9])?$"}},"required":["family","slug"],"additionalProperties":false},"annotations":{"readOnlyHint":true}},{"name":"commerce_quote_create","description":"Create a 15-minute synthetic 1,000-drop XRPL Testnet quote.","inputSchema":{"type":"object","properties":{"family":{"type":"string","enum":["provenance-verification","concept-definition"]},"slug":{"type":"string"},"idempotencyKey":{"type":"string","minLength":8,"maxLength":128}},"required":["family","slug","idempotencyKey"],"additionalProperties":false},"annotations":{"readOnlyHint":false}},{"name":"commerce_quote_inspect","description":"Inspect one quote and its current state.","inputSchema":{"type":"object","properties":{"quoteId":{"type":"string"}},"required":["quoteId"],"additionalProperties":false},"annotations":{"readOnlyHint":true}},{"name":"commerce_purchase_verify","description":"Submit an x402 payment signature for a valid quote.","inputSchema":{"type":"object","properties":{"quoteId":{"type":"string"},"paymentSignature":{"type":"string"},"idempotencyKey":{"type":"string","minLength":8,"maxLength":128}},"required":["quoteId","paymentSignature","idempotencyKey"],"additionalProperties":false},"annotations":{"readOnlyHint":false}},{"name":"commerce_delivery_fetch","description":"Fetch an exact quoted product using a scoped entitlement token.","inputSchema":{"type":"object","properties":{"entitlementToken":{"type":"string","minLength":32}},"required":["entitlementToken"],"additionalProperties":false},"annotations":{"readOnlyHint":false}}]}