{"openapi":"3.1.0","info":{"title":"Ardaro x402 payment screening","version":"1.0.0","description":"USE THIS BEFORE PAYING any x402 service. Send the address you are about to pay and, ideally, the one entry from its 402 payment request (accepts list) you intend to pay: network, asset, amount and payTo. Ardaro compares it with its reviewed Agent Observatory record for that address and returns result.level stop, caution or no_issues_found with plain-language signals. stop means the wallet in the request is not the wallet on record: do not pay until the operator confirms the change through a channel you already trust. caution covers a higher price, an unrecorded network, a short or stale history, an address that left its public catalog, or an address with no record. Without payment details only the history can be checked, not the wallet. Free; accepts no payment metadata; the request is not stored and the quoted wallet is never echoed. Advisory only: records are reviewed snapshots (see record_age_days), not live tests; it does not verify who runs a service or what it intends, and it never authorizes a payment. An address with no record is caution, not proof of harm."},"servers":[{"url":"https://agents.getardaro.com"}],"paths":{"/v1/observatory/screen":{"post":{"operationId":"screenX402Payment","summary":"Screen an x402 service before paying","description":"Free. No authentication or payment. Limited to 30 requests per minute per caller.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["resource"],"properties":{"resource":{"type":"string","minLength":9,"maxLength":2048,"pattern":"^https://","description":"Full https:// address of the x402 service you are about to pay, without a query string. Use the resource URL from the 402 response when it has one."},"method":{"type":"string","enum":["DELETE","GET","PATCH","POST","PUT"],"description":"HTTP method you will call it with. Omit to see every record for the address."},"payment":{"type":"object","additionalProperties":false,"required":["network","asset","amount","payTo"],"description":"Optional but strongly recommended: copy one entry of the service's 402 accepts list. Use amount, or maxAmountRequired from x402 v1 responses, as a base-unit string.","properties":{"scheme":{"type":"string","enum":["batch-settlement","exact","upto"],"default":"exact"},"network":{"type":"string","minLength":1,"maxLength":128,"description":"CAIP-2 network, for example eip155:8453 for Base."},"asset":{"type":"string","minLength":1,"maxLength":128,"description":"Token address or mint, for example Base USDC."},"amount":{"type":"string","pattern":"^[0-9]{1,78}$","description":"Price in base units, for example 50000 for 0.05 USDC."},"payTo":{"type":"string","minLength":1,"maxLength":128,"description":"Wallet the request asks you to pay. Compared by fingerprint; never echoed."}}}}},"examples":{"before_paying":{"value":{"resource":"https://api.example.com/v1/tool","method":"GET","payment":{"network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount":"50000","payTo":"0x2222222222222222222222222222222222222222"}}},"history_only":{"value":{"resource":"https://api.example.com/v1/tool"}}}}}},"responses":{"200":{"description":"Screening report","content":{"application/json":{"schema":{"type":"object","required":["contract_version","screened_at","record_as_of","record_age_days","request","result","matched_records","quote_check","signals","authority","limitations"],"properties":{"contract_version":{"const":"ardaro.agent-observatory.screen.v1"},"screened_at":{"type":"string"},"record_as_of":{"type":"string"},"record_age_days":{"type":"integer","minimum":0},"request":{"type":"object","required":["resource_url","method","payment_supplied"],"properties":{"resource_url":{"type":"string"},"method":{"type":["string","null"]},"payment_supplied":{"type":"boolean"}}},"result":{"type":"object","required":["level","summary"],"properties":{"level":{"enum":["no_issues_found","caution","stop"]},"summary":{"type":"string"}}},"matched_records":{"type":"array","items":{"type":"object","required":["service_id","method","evidence_class","sources","still_in_catalog","first_observed","last_observed","observation_days","change_counters","detail_url","verify_url"],"properties":{"service_id":{"type":"string"},"method":{"type":["string","null"]},"evidence_class":{"type":["string","null"]},"sources":{"type":"array","items":{"type":"string"}},"still_in_catalog":{"type":"boolean"},"first_observed":{"type":["string","null"]},"last_observed":{"type":["string","null"]},"observation_days":{"type":["integer","null"]},"change_counters":{"type":["object","null"]},"detail_url":{"type":"string"},"verify_url":{"type":["string","null"]}}}},"quote_check":{"type":"object","required":["status","recorded_prices","quoted"],"properties":{"status":{"enum":["not_supplied","not_comparable","network_not_recorded","payee_mismatch","price_higher","price_lower","matches_record"]},"recorded_prices":{"type":"array","items":{"type":"object","required":["network","asset","amount_atomic","display_price"],"properties":{"network":{"type":["string","null"]},"asset":{"type":["string","null"]},"amount_atomic":{"type":["string","null"]},"display_price":{"type":["string","null"]}}}},"quoted":{"anyOf":[{"type":"object","required":["network","asset","amount_atomic","display_price"],"properties":{"network":{"type":["string","null"]},"asset":{"type":["string","null"]},"amount_atomic":{"type":["string","null"]},"display_price":{"type":["string","null"]}}},{"type":"null"}]}}},"signals":{"type":"array","items":{"type":"object","required":["code","level","message"],"properties":{"code":{"type":"string"},"level":{"enum":["info","caution","stop"]},"message":{"type":"string"}}}},"authority":{"type":"object","required":["advisory_evidence_only","financial_authority","identity_verification","intent_verification","purchase_instruction"],"properties":{"advisory_evidence_only":{"const":true},"purchase_instruction":{"const":false},"financial_authority":{"const":false},"identity_verification":{"const":false},"intent_verification":{"const":false}}},"limitations":{"type":"array","items":{"type":"string"}}}}}}},"400":{"description":"The request could not be read; see error.message.","content":{"application/json":{"schema":{"type":"object","required":["contract_version","status","error"],"properties":{"contract_version":{"const":"ardaro.agent-observatory.screen.v1"},"status":{"const":"error"},"error":{"type":"object","required":["code","message","retryable"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}}}}}}}},"408":{"description":"The request body took too long to arrive.","content":{"application/json":{"schema":{"type":"object","required":["contract_version","status","error"],"properties":{"contract_version":{"const":"ardaro.agent-observatory.screen.v1"},"status":{"const":"error"},"error":{"type":"object","required":["code","message","retryable"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}}}}}}}},"413":{"description":"The request is larger than 4096 bytes.","content":{"application/json":{"schema":{"type":"object","required":["contract_version","status","error"],"properties":{"contract_version":{"const":"ardaro.agent-observatory.screen.v1"},"status":{"const":"error"},"error":{"type":"object","required":["code","message","retryable"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}}}}}}}},"415":{"description":"Send the request as application/json.","content":{"application/json":{"schema":{"type":"object","required":["contract_version","status","error"],"properties":{"contract_version":{"const":"ardaro.agent-observatory.screen.v1"},"status":{"const":"error"},"error":{"type":"object","required":["code","message","retryable"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}}}}}}}},"429":{"description":"Too many requests from this caller; wait a minute.","content":{"application/json":{"schema":{"type":"object","required":["contract_version","status","error"],"properties":{"contract_version":{"const":"ardaro.agent-observatory.screen.v1"},"status":{"const":"error"},"error":{"type":"object","required":["code","message","retryable"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"}}}}}}}}}}}},"x-ardaro":{"price":"free","advisory_only":true,"mcp_endpoint":"https://agents.getardaro.com/mcp/observatory","mcp_tool":"screen_x402_payment","agent_skill_url":"https://agents.getardaro.com/observatory/SKILL.md","page_url":"https://agents.getardaro.com/observatory#screen"}}