{"x402Version":2,"name":"Agent Product Normalizer","description":"x402-paid microservices for autonomous agents: low-cost hashing, video context extraction, workflow utilities, safety helpers and commerce normalization.","network":"eip155:8453","asset":"USDC","payTo":"0x74eCCC9bEC502d9Eb390bF15198A234447Dc59F8","facilitator":"https://facilitator.payai.network","docs":"https://agent-product-normalizer.vercel.app/openapi.json","llms":"https://agent-product-normalizer.vercel.app/llms.txt","resources":[{"id":"hash","name":"Deterministic text hash","description":"Generate SHA-256, SHA-512, SHA-1 or MD5 digests for agent cache keys, checksums, deduplication and content fingerprints.","tags":["hash","fingerprint","checksum","cache","deduplication","deterministic"],"methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/hash","price":"$0.0008"},{"id":"normalize","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/normalize","price":"$0.01"},{"id":"extract-offer","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/extract-offer","price":"$0.01"},{"id":"validate","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/validate","price":"$0.02"},{"id":"compare","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/compare","price":"$0.05"},{"id":"clarify","name":"Agent Task Clarifier","description":"Turn a vague or messy request into an execution-ready goal, constraints, ambiguity signals and one focused question only when needed.","tags":["agents","intent","clarification","constraints","workflow"],"methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/clarify","price":"$0.005"},{"id":"task-gate","name":"Agent Task Gate","description":"Preflight an autonomous action and return PROCEED, CLARIFY, ASK_HUMAN or STOP with missing fields, risks and the next safe action.","tags":["agents","preflight","decision","autonomy","safety","workflow"],"methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/task-gate","price":"$0.004"},{"id":"context-freshness","name":"Agent Context Freshness Gate","description":"Classify context as fresh, near expiry or stale and return a minimal refresh plan so long-running agents avoid redundant fetches, tool calls and context tokens.","tags":["agents","context","freshness","ttl","cache","stale-context","tool-calls"],"methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/context-freshness","price":"$0.002"},{"id":"call-value-gate","name":"Agent Call Value Gate","description":"Decide whether the next model, tool or human call is worth its cost by comparing expected net value, success probability, latency cost, alternatives and remaining budget.","tags":["agents","expected-value","budget","pre-call","tool-call","model-routing","cost-control","roi"],"methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/call-value-gate","price":"$0.003"},{"id":"compress-context","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/compress-context","price":"$0.005"},{"id":"should-ask-human","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/should-ask-human","price":"$0.003"},{"id":"extract-constraints","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/extract-constraints","price":"$0.003"},{"id":"rank-results","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/rank-results","price":"$0.005"},{"id":"dedupe-facts","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/dedupe-facts","price":"$0.0015"},{"id":"detect-conflicts","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/detect-conflicts","price":"$0.002"},{"id":"extract-actions","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/extract-actions","price":"$0.002"},{"id":"make-search-query","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/make-search-query","price":"$0.0015"},{"id":"missing-fields","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/missing-fields","price":"$0.001"},{"id":"retry-decision","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/retry-decision","price":"$0.001"},{"id":"no-progress-gate","name":"Agent No-Progress Gate","description":"Detect repeated tool calls, unchanged results, repeated failures and exhausted budgets before an autonomous agent wastes another call.","tags":["agents","loop-breaker","tool-calls","cost-control","progress","deterministic"],"methods":["POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/no-progress-gate","price":"$0.003"},{"id":"prompt-injection-scan","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/prompt-injection-scan","price":"$0.002"},{"id":"redact-secrets","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/redact-secrets","price":"$0.002"},{"id":"handoff-diff","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/handoff-diff","price":"$0.002"},{"id":"choose-next-step","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/choose-next-step","price":"$0.002"},{"id":"video-transcript","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/video-transcript","price":"$0.015"},{"id":"video-brief","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/video-brief","price":"$0.006"},{"id":"video-key-points","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/video-key-points","price":"$0.004"},{"id":"video-answer-question","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/video-answer-question","price":"$0.006"},{"id":"video-chapters","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/video-chapters","price":"$0.004"},{"id":"video-claims","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/video-claims","price":"$0.004"},{"id":"video-action-items","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/video-action-items","price":"$0.003"},{"id":"video-analyze","methods":["GET","POST"],"resource":"https://agent-product-normalizer.vercel.app/api/v1/video-analyze","price":"$0.025"}],"free_samples":[{"id":"hash-sample","method":"GET","resource":"https://agent-product-normalizer.vercel.app/api/v1/hash/sample","payment_required":false,"description":"Fixed SHA-256 example to try the response format before using the paid hash endpoint."},{"id":"task-gate-sample","method":"GET","resource":"https://agent-product-normalizer.vercel.app/api/v1/task-gate/sample","payment_required":false,"description":"Fixed autonomous-action preflight example to inspect Task Gate output before using the paid endpoint."},{"id":"call-value-gate-sample","method":"GET","resource":"https://agent-product-normalizer.vercel.app/api/v1/call-value-gate/sample","payment_required":false,"description":"Fixed expected-value decision to inspect Call Value Gate output before using the paid endpoint."},{"id":"no-progress-gate-sample","method":"GET","resource":"https://agent-product-normalizer.vercel.app/api/v1/no-progress-gate/sample","payment_required":false,"description":"Fixed repeated-call trace to inspect No-Progress Gate output before using the paid endpoint."}]}