# Check a request

See how Delegrity reads a request before your agent sends it. Nothing is stored or run.

The Contract Inspector shows how Delegrity reads a request, without acting on it. Use
it while you build, from the console or through the API. It needs permission to read
authority data.

## Three checks

| Check                 | Send it to                               | It tells you                                                                                |
| --------------------- | ---------------------------------------- | ------------------------------------------------------------------------------------------- |
| A whole agent request | `POST /v1/developer/request-inspections` | Whether the form is valid, what it maps to, the likely mode and what the bridge would check |
| One action            | `POST /v1/developer/normalize`           | Its fingerprint, whether the fields fit, and how each field is classified                   |
| Two versions          | `POST /v1/developer/diff`                | Which changes would cancel an approval, need a new policy check or need a person            |

The fingerprint from `normalize` is the one intake records for the same action, so you
can compare the two.

## What to expect

- **An action nobody registered** is reported with every parameter unknown, and unknown
  counts as material.
- **Field problems** stop at the first one, as they do at intake. Fix it and check again.
- **A request inspection** uses placeholders for token fields, so its fingerprint is
  illustrative.

## What it doesn't do

Nothing is stored or run. A request inspection doesn't ask your policy engine either, so
a clean check doesn't mean the action would be allowed. Only a real proposal gets a
decision. See [Wait for a result](/developers/results).
