---
title: "overlane audit verify"
description: "Check the audit log's hash chain; exits 1 if a row was altered or removed"
---

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

# overlane audit verify

{/* Generated by apps/docs/scripts/generate.mjs (CLI pages from the command registry in packages/cli). Do not edit; run `pnpm --filter @overlane/docs gen`. */}

Re-computes the chain over the whole log on the service and reports how many rows were checked, the head hash and, when the chain is broken, where. A team-wide agent token or a person who manages members can do this. To check an exported file offline, use `overlane enterprise audit verify`.

## Usage

```sh
overlane audit verify [--service URL] [--team TENANT_ID]
```

## Flags

| Flag | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `--service` | string | no |  | The service address (default: OVERLANE_SERVICE_URL, then the project's binding, then the hosted service) |
| `--team` | string | no |  | The team (tenant) to act on (default: the one your token belongs to) |

## Examples

```sh
overlane audit verify
```

## Behavior

- Effect: `read` (changes nothing).
- Needs credentials: yes. Uses the network: yes.
- Supports `--dry-run`: no. Accepts `--force`: no.
- Machine-readable description: `overlane schema audit verify`.

## Result

With `--json` (the default when stdout is not a terminal) the command prints this JSON Schema's shape on stdout.

```json
{
  "type": "object",
  "properties": {
    "tenantId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "pattern": "^[A-Za-z0-9][A-Za-z0-9_.:-]*$",
      "description": "tenant identifier"
    },
    "ok": {
      "type": "boolean"
    },
    "checked": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "head": {
      "anyOf": [
        {
          "type": "string",
          "pattern": "^[0-9a-f]{64}$"
        },
        {
          "type": "null"
        }
      ]
    },
    "brokenAt": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "reason": {
      "type": "string",
      "enum": [
        "bad_hash",
        "bad_link",
        "bad_sequence",
        "wrong_tenant",
        "bad_category"
      ]
    }
  },
  "required": [
    "tenantId",
    "ok",
    "checked",
    "head"
  ],
  "additionalProperties": false
}
```

See [exit codes](/cli/#exit-codes) for the status the process returns.

Source: https://docs.overlane.app/cli/audit-verify/index.mdx
