{"tool":"reality-compare","title":"RealityGraph Compare","what":"Two entities side by side: for every core property the current values of each and whether they are the same, overlap, differ or exist on one side only; shared identifiers (a sign of a duplicate record); and properties neither side states (unsupported comparisons). Accepts ids or names.","endpoint":"https://yruz.one/api/reality/compare","methods":["GET with query parameters","POST with a JSON body (same fields)"],"price":{"model":"fixed","usdc":"0.015"},"params":[{"name":"a","required":true,"description":"first entity: Wikidata id or name","example":"Q312"},{"name":"b","required":true,"description":"second entity: Wikidata id or name","example":"Q2283"},{"name":"lang","required":false,"description":"language of labels, 2-3 letters (default en)","example":null}],"valid_request":{"get":"https://yruz.one/api/reality/compare?a=Q312&b=Q2283","post":{"url":"https://yruz.one/api/reality/compare","body":{"a":"Q312","b":"Q2283"}}},"how_to_pay":["1. Send the request without payment: the answer is HTTP 402 with the exact price (x402 v2 in the PAYMENT-REQUIRED header, x402 v1 in the JSON body).","2. Sign one offer of \"accepts\" with an x402 client (USDC on Base eip155:8453 or on Solana mainnet; the facilitator pays the network fee).","3. Resend the identical request (same method, parameters and body) with PAYMENT-SIGNATURE (v2) or X-PAYMENT (v1).","4. The answer carries the receipt in PAYMENT-RESPONSE. Any changed parameter needs a new 402."],"response_shape":{"product":"string","result":{"product":"string","task":"string","task_version":"number","api_version":"string","data":{"a":{"id":"string","label":"string","kind":"string"},"b":{"id":"string","label":"string","kind":"string"},"same_entity":"boolean","summary":{"overlap":"number","same":"number","different":"number","only_a":"number"},"properties":[{"property":"string","label":"string","relation":"string","a":["…"],"b":["…"]}],"shared_identifiers":[],"unsupported_comparisons":["string"],"note":"string"},"provenance":[{"source":"string","name":"string","source_url":"string","record_urls":["string"],"retrieved_at":"string","retrieved_until":"string","served_from_cache":"boolean","licence":"string","attribution":"string"}],"data_as_of":"string","freshness_status":"string","coverage":"null","partial":"boolean","warnings":[],"usage":{"units":"number","unit":"string","records":"number","upstream_requests":"number","retries":"number","cache_hits":"number","runtime_ms":"number"}},"payment":{"payment_id":"string","transaction":"string"}},"refusals":{"400":"invalid input: the message names the field and the expected format; nothing is charged","402":"payment required, or the payment was refused (reason in \"error\"); nothing is charged","403/404":"not your item, or the asked item does not exist; nothing is charged","409/422":"not allowed right now (state or destination safety); nothing is charged","503":"a source or the payment rail is unavailable; nothing is charged, retry after Retry-After"},"mcp":{"server":"https://yruz.one/mcp/x402","payment":"params._meta[\"x402/payment\"] = PaymentPayload"},"related":{"tools":[{"tool":"reality-resolve","url":"https://yruz.one/api/reality/resolve","why":"which entity is this","usd":"0.01","how":"https://yruz.one/api/instructions?tool=reality-resolve"},{"tool":"reality-evidence","url":"https://yruz.one/api/reality/evidence","why":"sourced facts with references","usd":"0.02","how":"https://yruz.one/api/instructions?tool=reality-evidence"},{"tool":"reality-conflicts","url":"https://yruz.one/api/reality/conflicts","why":"where sources disagree","usd":"0.02","how":"https://yruz.one/api/instructions?tool=reality-conflicts"}],"more_x402_apis":{"402index":"https://402index.io","x402scan":"https://www.x402scan.com","agent402":"https://agent402.tools","x402_protocol":"https://www.x402.org"},"all_yruz_tools":"https://yruz.one/api/instructions"}}