> ## Documentation Index
> Fetch the complete documentation index at: https://docs.trusset.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Revoke Claim

> Revoke a claim on the registry

Revokes one claim slot on the registry. It works on any slot, including the four filled from proofs.

For a proof-backed claim, prefer [Revoke Proof](/endpoints/customers/revoke-proof). It does the same revocation and also drops the ledger row recording which proof backed the slot, so [List Proofs](/endpoints/customers/list-proofs) does not keep reporting a proof behind an empty slot.

## Body Parameters

<ParamField body="walletAddress" type="string" required>The subject.</ParamField>

<ParamField body="claimType" type="string | integer" required>The slot to revoke, as a name or an index from 0 to 7.</ParamField>

<ParamField body="txHash" type="string">Send it to confirm. Omit it to receive the calldata.</ParamField>

## Response Fields

<ResponseField name="data" type="object">
  <Expandable>
    <ResponseField name="action" type="string">`SIGN_TRANSACTION`. Calldata leg only.</ResponseField>
    <ResponseField name="transaction" type="object">The unsigned registry call. Calldata leg only.</ResponseField>
    <ResponseField name="functionName" type="string">`revokeClaim`. Calldata leg only.</ResponseField>
    <ResponseField name="walletAddress" type="string">The subject, checksummed.</ResponseField>
    <ResponseField name="claimType" type="string">The slot, by name.</ResponseField>
    <ResponseField name="txHash" type="string">The confirmed transaction. Confirm leg only.</ResponseField>
    <ResponseField name="gasUsed" type="string">Gas used. Confirm leg only.</ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST "https://api.trusset.org/customers/api/identity/revoke-claim" \
    -H "X-API-Key: trusset_your_key_here" \
    -H "Content-Type: application/json" \
    -d '{"walletAddress": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01", "claimType": "AML"}'
  ```
</RequestExample>

<ResponseExample>
  ```json Confirmed Response theme={null}
  {
    "success": true,
    "data": {
      "walletAddress": "0xAbCdEf0123456789AbCdEf0123456789AbCdEf01",
      "claimType": "AML",
      "txHash": "0xd402612bae9f7c3018d5a64b0f9e28c7135ad60897e4b2f150c3a8e6d7b409f1",
      "gasUsed": "48119"
    }
  }
  ```
</ResponseExample>

## Error Codes

| Code                  | HTTP  | Cause                                                |
| --------------------- | ----- | ---------------------------------------------------- |
| `INVALID_ADDRESS`     | `400` | `walletAddress` is missing or malformed              |
| `INVALID_CLAIM_TYPE`  | `400` | `claimType` is not a slot between 0 and 7            |
| `TX_TARGET_MISMATCH`  | `400` | The confirmed transaction targets a different wallet |
| `REVOKE_CLAIM_FAILED` | `400` | The revocation could not be prepared or confirmed    |
