{"audit":{"version":"1.3","generated_at":"2026-05-22T23:01:10.463498+00:00","generated_by":"Agenstry","report_url":"https://agenstry.com/agents/headlessoracle.com","methodology_url":"https://agenstry.com/methodology","verifier_jwks_url":"https://agenstry.com/.well-known/jwks.json","subject":{"domain":"headlessoracle.com","name":"Headless Oracle","url":"https://headlessoracle.com/.well-known/agent-card.json"}},"identity":{"provider":{"organization":"LembaGang","url":"https://headlessoracle.com"},"registry_verification":null,"signature":{"signed":false,"signature_valid":null}},"protocol":{"version":null,"supports_streaming":false,"supports_push_notifications":false},"operational":{"live_state":"wrong_response","live_responds":false,"last_status_code":200,"last_elapsed_ms":29,"last_error":null},"track_record":{"first_seen":"2026-05-18T15:14:13.744830+00:00","last_checked":"2026-05-22T13:06:39.921928+00:00","last_seen_ok":"2026-05-22T13:06:39.921928+00:00","checks_total":5,"checks_ok":5,"uptime_pct":100.0,"archived":false,"archived_reason":null},"conformance":{"score":50,"grade":"D","summary":"D-grade: significant issues — auth-gated, partially broken, or stale.","criteria":[{"key":"valid_card","label":"Valid AgentCard","points":10,"max_points":10,"status":"pass","detail":"Schema-validated A2A AgentCard returned by the well-known endpoint."},{"key":"live_responds","label":"Live JSON-RPC","points":5,"max_points":25,"status":"fail","detail":"Endpoint replies but body isn't a valid JSON-RPC 2.0 A2A response."},{"key":"protocol_version","label":"Protocol version","points":0,"max_points":10,"status":"fail","detail":"No protocolVersion in card."},{"key":"signature","label":"JWS signature","points":0,"max_points":10,"status":"info","detail":"Card is unsigned (most published agents are)."},{"key":"uptime","label":"Uptime track record","points":15,"max_points":15,"status":"pass","detail":"5/5 probes succeeded (100% uptime)."},{"key":"skills","label":"Skill declaration","points":10,"max_points":10,"status":"pass","detail":"Declares 5 skills with structured metadata."},{"key":"verified_identity","label":"Verified Identity","points":5,"max_points":10,"status":"partial","detail":"Provider declared: LembaGang (https://headlessoracle.com). Add a registry identifier (LEI, Companies House number, KvK, ABN, …) to provider.legalEntity for full verified-business credit."},{"key":"freshness","label":"Freshness + modern flags","points":5,"max_points":5,"status":"pass","detail":"declares 1 modern capability flag(s) (x402); seen in upstream source within 0d"},{"key":"security","label":"Security declaration","points":0,"max_points":5,"status":"info","detail":"No securitySchemes declared (common for open agents — not penalised)."}]},"skills":[{"id":"get_market_status","name":"Get Market Status","description":"Pre-trade verification gate: returns Ed25519-signed market-state receipt (OPEN/CLOSED/HALTED/UNKNOWN) for any of 28 global exchanges. Use before any financial execution, capital commitment, or market-dependent workflow. UNKNOWN and HALTED must be treated as CLOSED (fail-closed). Receipt includes attestation_ref (signature) for x402 payment flows and audit trails. 60-second TTL.","tags":["finance","market-data","safety","signed-receipt","fail-closed"],"examples":["Is NYSE open right now?","Verify XLON is trading before executing this payment"],"inputModes":["application/json"],"outputModes":["application/json"]},{"id":"get_market_schedule","name":"Get Market Schedule","description":"Returns holiday-aware trading session schedule: next open/close UTC times, market hours, trading hours, exchange operating hours, holiday calendar, lunch break windows (XJPX/XHKG/XSHG/XSHE), and session status across 28 exchanges.","tags":["finance","schedule","market-hours"],"examples":["When does Tokyo Stock Exchange open next?","What are XJPX trading hours?"],"inputModes":["application/json"],"outputModes":["application/json"]},{"id":"list_exchanges","name":"List Exchanges","description":"Returns directory of all 28 supported exchanges with MIC codes, names, IANA timezones, and exchange operating hours metadata. Use at agent startup to discover supported markets before calling get_market_status or get_market_schedule.","tags":["finance","exchange-directory"],"examples":["Which exchanges does this oracle cover?"],"inputModes":["application/json"],"outputModes":["application/json"]},{"id":"verify_receipt","name":"Verify Receipt Signature","description":"Verifies Ed25519 cryptographic proof on a Signed Market Attestation receipt — confirms genuine pre-trade verification attestation, receipt authenticity, and signature validity. REST endpoint for test harnesses and SDK authors; agents SHOULD prefer offline verification with the published public key.","tags":["finance","verification","cryptography","trust","rest-only"],"examples":[],"inputModes":[],"outputModes":[],"endpoint":"/v5/verify","method":"POST","auth":false},{"id":"get_sandbox_key","name":"Get Sandbox Key","description":"Provision a 7-day API key (200 calls). POST { \"email\": \"you@example.com\" } — email required, one per address.","tags":[],"examples":[],"inputModes":[],"outputModes":[],"endpoint":"/v5/sandbox","method":"POST","auth":false,"input":{"email":{"type":"string","required":true,"description":"Email address — key is sent to this address"}},"output":{"type":"object","properties":{"api_key":{"type":"string","description":"Sandbox API key (sb_ prefix)"},"tier":{"type":"string","enum":["sandbox"]},"expires_at":{"type":"string","format":"date-time"},"calls_remaining":{"type":"integer"}}}}],"provenance":[{"source":"manifests","first_seen":"2026-05-18T15:14:13.744830+00:00"},{"source":"recrawl_hot","first_seen":"2026-05-21T00:32:22.948999+00:00"}],"recent_probes":[{"fetched_at":"2026-05-22T13:06:39.921928+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":29,"live_responds":false},{"fetched_at":"2026-05-22T07:00:18.941718+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":23,"live_responds":false},{"fetched_at":"2026-05-21T00:32:22.948999+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":20,"live_responds":false},{"fetched_at":"2026-05-19T00:28:02.900079+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":65,"live_responds":false},{"fetched_at":"2026-05-18T15:14:13.744830+00:00","ok":true,"status_code":200,"error":null,"elapsed_ms":26,"live_responds":false}],"catalog_attestation":null,"verification_history":[]}