{"components":{"securitySchemes":{"ClientProof":{"description":"Reviewer-authentication proof for /v1/reviews only. It is not required for purchase, 402 discovery, result retrieval or recovery.","in":"header","name":"WHP-Client-Proof","type":"apiKey"}}},"info":{"description":"Verify whether signed JSON provenance preserves identity, authority, scope, jurisdiction, time, and operation through exact COPY or identity-preserving COMPOSE. One evaluation costs 1 native USDC on Base mainnet. Payment never guarantees a Mark.","title":"WHP Standing","version":"1.0.1"},"openapi":"3.1.0","paths":{"/.well-known/agent-card.json":{"get":{"operationId":"getStandingCarrierAgentCard","responses":{"200":{"description":"A2A v1 Agent Card for the transparent transport-only WHP Standing carrier."}}}},"/.well-known/api-catalog":{"get":{"operationId":"getApiCatalog","responses":{"200":{"description":"RFC 9727 API catalog."},"503":{"description":"Service/authority unavailable."}}}},"/.well-known/standing-capability.json":{"get":{"responses":{"200":{"description":"Fresh separately signed current capability resolution; DISCOVERY authority required."}},"summary":"Fresh separately signed current capability resolution; DISCOVERY authority required."}},"/.well-known/whp-standing.json":{"get":{"operationId":"discoverStanding","responses":{"200":{"description":"Durable signed result or requested public contract."},"503":{"description":"Service/authority/provider unavailable; no optimistic success."}}}},"/a2a":{"post":{"operationId":"sendMessageToStandingCarrier","requestBody":{"content":{"application/json":{"schema":{"type":"object"}}},"required":true},"responses":{"200":{"description":"A2A SendMessage response carrying exact Mark bytes and canonical routes."},"503":{"description":"The exact immutable Mark artifact was unavailable or failed its committed SHA-256 check."}}}},"/discovery/capability.json":{"get":{"responses":{"200":{"description":"Provider capability description, not epistemic standing."}},"summary":"Provider capability description, not epistemic standing."}},"/discovery/provider-index.json":{"get":{"responses":{"200":{"description":"Self-published capability index, not an external registration."}},"summary":"Self-published capability index, not an external registration."}},"/llms.txt":{"get":{"operationId":"getMachineDocumentation","responses":{"200":{"description":"Indexable capability, bounds, contract and payment documentation."},"503":{"description":"Service/authority unavailable."}}}},"/mcp":{"post":{"operationId":"callStandingMcp","requestBody":{"content":{"application/json":{"schema":{"properties":{"id":{},"jsonrpc":{"const":"2.0"},"method":{"type":"string"},"params":{"type":"object"}},"required":["jsonrpc","method"],"type":"object"}}},"required":true},"responses":{"200":{"description":"JSON-RPC response; 402 terms are carried by tool structuredContent.http_status."},"202":{"description":"Accepted notification."},"400":{"description":"Invalid message."},"403":{"description":"Invalid Origin."},"405":{"description":"Unsupported transport method."}},"summary":"Stateless Streamable HTTP MCP; no wallet credentials accepted."}},"/robots.txt":{"get":{"operationId":"getRobotsPolicy","responses":{"200":{"description":"Crawler policy."},"503":{"description":"Service/authority unavailable."}}}},"/server.json":{"get":{"operationId":"getMcpServerMetadata","responses":{"200":{"description":"Remote MCP metadata; not evidence of registry acceptance."},"503":{"description":"Service/authority unavailable."}}}},"/sitemap.xml":{"get":{"operationId":"getCanonicalSitemap","responses":{"200":{"description":"Canonical documentation URLs."},"503":{"description":"Service/authority unavailable."}}}},"/v1/contract":{"get":{"operationId":"getStandingPurchaseContract","responses":{"200":{"description":"Complete schema, authority, quote binding and independent buyer payment requirements; no WHP-specific buyer signature is required to reach 402."},"503":{"description":"Service/authority unavailable."}}}},"/v1/contracts/mark-v1.json":{"get":{"responses":{"200":{"description":"Immutable first-public historical contract manifest."}},"summary":"Immutable first-public historical contract manifest."}},"/v1/evaluations":{"post":{"operationId":"purchaseEvaluation","parameters":[{"description":"Base64 x402-v2 exact-EVM authorization with mandatory WHP quote-bound nonce.","in":"header","name":"PAYMENT-SIGNATURE","required":false,"schema":{"type":"string"}},{"description":"Existing owner-authorized wallet address. On the unpaid request, asks for a complete eth_signTypedData_v4 payment request in the same 402 response; no buyer client installation.","in":"header","name":"payment-payer","required":false,"schema":{"pattern":"^0x[0-9a-fA-F]{40}$","type":"string"}},{"description":"The wallet payment signature returned for that 402, with PAYMENT-PAYER. Resend the original submission unchanged. Alternative to the complete base64 PAYMENT-SIGNATURE envelope; never send both.","in":"header","name":"payment-wallet-signature","required":false,"schema":{"pattern":"^0x[0-9a-fA-F]{128}(?:00|01|1[bBcC])$","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"/schemas/submission.schema.json"}}},"required":true},"responses":{"200":{"description":"Durable signed result or requested public contract."},"202":{"description":"Still pending; use the same purchase recovery identity."},"400":{"description":"Malformed request or unsupported structure."},"402":{"description":"x402-v2 payment required or invalid authorization."},"409":{"description":"Identity conflict, expired quote or denied state transition."},"413":{"description":"Request capacity exceeded."},"415":{"description":"JSON content type required."},"503":{"description":"Service/authority/provider unavailable; no optimistic success."}},"summary":"Purchase one signed provenance evaluation for 1 USDC on Base"}},"/v1/immutable/{sha256}":{"get":{"parameters":[{"in":"path","name":"sha256","required":true,"schema":{"pattern":"^[0-9a-f]{64}$","type":"string"}}],"responses":{"200":{"description":"Immutable profile, schema or semantic contract by SHA-256."}},"summary":"Immutable profile, schema or semantic contract by SHA-256."}},"/v1/profile":{"get":{"operationId":"getProfile","responses":{"200":{"description":"Durable signed result or requested public contract."},"503":{"description":"Service/authority/provider unavailable; no optimistic success."}}}},"/v1/profiles":{"get":{"responses":{"200":{"description":"Current published profile index; historical Marks bind exact embedded content."}},"summary":"Current published profile index; historical Marks bind exact embedded content."}},"/v1/profiles/{profile_id}/{version}":{"get":{"operationId":"getStandingProfileVersion","parameters":[{"in":"path","name":"profile_id","required":true,"schema":{"type":"string"}},{"in":"path","name":"version","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Exact hash-addressed WHP Standing Profile and authorization."},"503":{"description":"Service/authority unavailable."}}}},"/v1/purchases/{purchase_id}/recover":{"post":{"operationId":"recoverOriginalPurchase","parameters":[{"in":"path","name":"purchase_id","required":true,"schema":{"pattern":"^[0-9a-f]{64}$","type":"string"}}],"responses":{"200":{"description":"Durable signed result or requested public contract."},"202":{"description":"Still pending; use the same purchase recovery identity."},"400":{"description":"Malformed request or unsupported structure."},"404":{"description":"No such resource."},"409":{"description":"Identity conflict, expired quote or denied state transition."},"503":{"description":"Service/authority/provider unavailable; no optimistic success."}}}},"/v1/purchases/{purchase_id}/result":{"get":{"operationId":"retrieveResult","parameters":[{"in":"path","name":"purchase_id","required":true,"schema":{"pattern":"^[0-9a-f]{64}$","type":"string"}}],"responses":{"200":{"description":"Durable signed result or requested public contract."},"202":{"description":"Still pending; use the same purchase recovery identity."},"404":{"description":"No such resource."},"503":{"description":"Service/authority/provider unavailable; no optimistic success."}}}},"/v1/registry/{purchase_id}":{"get":{"operationId":"readRegistry","parameters":[{"in":"path","name":"purchase_id","required":true,"schema":{"pattern":"^[0-9a-f]{64}$","type":"string"}}],"responses":{"200":{"description":"Durable signed result or requested public contract."},"404":{"description":"No such resource."},"503":{"description":"Service/authority/provider unavailable; no optimistic success."}}}},"/v1/reviews":{"post":{"description":"Signed reviewer request; durable receipt does not change standing. Fields: client_reference, reviewer_key, purchase_id, reason, evidence_hashes.","operationId":"submitReview","responses":{"201":{"description":"Signed durable review receipt, not an adjudication."},"400":{"description":"Malformed request or unsupported structure."},"401":{"description":"Buyer authentication failed."},"404":{"description":"No such resource."},"409":{"description":"Identity conflict, expired quote or denied state transition."},"503":{"description":"Service/authority/provider unavailable; no optimistic success."}},"security":[{"ClientProof":[]}]}},"/v1/verification":{"get":{"operationId":"getStandingVerification","responses":{"200":{"description":"Content-addressed independent verifier and invocation recipe."},"503":{"description":"Service/authority unavailable."}}}}},"servers":[{"url":"https://whp-standing-live-production.up.railway.app"}],"x-whp-purchase-contract":"/v1/contract","x-whp-verification":"/v1/verification"}
