# Verify a proof with no account and no key `GET /verify/{txHash}` **Auth:** none. This endpoint is keyless. Public keyless verification of an immut transaction hash. Returns the public proof record, fileHash/commitment and hashScheme. immut confirms only what it can check: a hash that exists on the XRP Ledger but carries no immut record is reported as not an immut proof, never as verified. Separate from verifyUrl on create responses. transactionHash, network, explorerUrl, verified, onLedger, isImmutProof, reason, ledgerIndex, ledgerCloseTime, memo. verified is true ONLY when the transaction exists on the ledger AND is an immut proof. onLedger and isImmutProof are reported separately because they are different facts: a transaction between two strangers is onLedger true and isImmutProof false, and immut says so rather than confirming it. reason carries a plain-English explanation whenever verified is false, and is null when it is true. ## Parameters | Name | In | Required | Description | |---|---|---|---| | `txHash` | path | yes | | ## Responses | Status | Meaning | |---|---| | `200` | Ledger record | | `404` | Not found on this network | ## Example ```bash curl -X GET "https://backend.immut.io/api/v1/verify/" \ -H "Authorization: Bearer $IMMUT_API_KEY" ``` ## OpenAPI fragment ```json { "/verify/{txHash}": { "get": { "operationId": "publicVerify", "summary": "Verify a proof with no account and no key", "description": "Public keyless verification of an immut transaction hash. Returns the public proof record, fileHash/commitment and hashScheme. immut confirms only what it can check: a hash that exists on the XRP Ledger but carries no immut record is reported as not an immut proof, never as verified. Separate from verifyUrl on create responses.\n\ntransactionHash, network, explorerUrl, verified, onLedger, isImmutProof, reason, ledgerIndex, ledgerCloseTime, memo. verified is true ONLY when the transaction exists on the ledger AND is an immut proof. onLedger and isImmutProof are reported separately because they are different facts: a transaction between two strangers is onLedger true and isImmutProof false, and immut says so rather than confirming it. reason carries a plain-English explanation whenever verified is false, and is null when it is true.", "servers": [ { "url": "https://backend.immut.io/api/public" } ], "tags": [ "Verify" ], "security": [], "parameters": [ { "name": "txHash", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Ledger record" }, "404": { "description": "Not found on this network" } } } } } ```