# network.attested.verify

> Published by [johnandersen777.bsky.social](https://lexicon.garden/identity/did:plc:5svqtrhheairglgiiyvutzik)

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:5svqtrhheairglgiiyvutzik/network.attested.verify)
- [Documentation](https://lexicon.garden/lexicon/did:plc:5svqtrhheairglgiiyvutzik/network.attested.verify/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:5svqtrhheairglgiiyvutzik/network.attested.verify/examples)

## Definitions

### `network.attested.verify`

**Type**: `query`

Verify the attestations on a record. Resolves the record at `uri`, recomputes the canonical attestation CID, and checks each entry in its signatures array: inline network.attested.signature entries are verified by ECDSA against `key`; remote strongRefs are resolved to network.attested.proof records whose `cid` must match the subject's canonical CID. Any network.attested.* speaker can call this to verify without re-deriving the CID machinery.

#### Parameters

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `uri` | `string` (at-uri) | Yes | AT-URI of the record to verify. |

#### Output

**Encoding**: `application/json`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `cid` | `string` (cid) | No | The canonical attestation CID computed for the resolved record. |
| `uri` | `string` (at-uri) | Yes |  |
| `valid` | `boolean` | Yes | True if at least one attestation verified against the resolved record. |
| `workflow` | `string` | No | Optional workflow identifier the caller can use to require a specific set of attestation roles. |
| `signatures` | `ref` → `network.attested.signature#signatures` | Yes | The verified signature entries (inline and/or remote strongRefs). |

## Raw Schema

```json
{
  "id": "network.attested.verify",
  "defs": {
    "main": {
      "type": "query",
      "output": {
        "schema": {
          "type": "object",
          "required": [
            "uri",
            "valid",
            "signatures"
          ],
          "properties": {
            "cid": {
              "type": "string",
              "format": "cid",
              "description": "The canonical attestation CID computed for the resolved record."
            },
            "uri": {
              "type": "string",
              "format": "at-uri"
            },
            "valid": {
              "type": "boolean",
              "description": "True if at least one attestation verified against the resolved record."
            },
            "workflow": {
              "type": "string",
              "description": "Optional workflow identifier the caller can use to require a specific set of attestation roles."
            },
            "signatures": {
              "ref": "network.attested.signature#signatures",
              "type": "ref",
              "description": "The verified signature entries (inline and/or remote strongRefs)."
            }
          }
        },
        "encoding": "application/json"
      },
      "parameters": {
        "type": "params",
        "required": [
          "uri"
        ],
        "properties": {
          "uri": {
            "type": "string",
            "format": "at-uri",
            "description": "AT-URI of the record to verify."
          }
        }
      },
      "description": "Verify the attestations on a record. Resolves the record at `uri`, recomputes the canonical attestation CID, and checks each entry in its signatures array: inline network.attested.signature entries are verified by ECDSA against `key`; remote strongRefs are resolved to network.attested.proof records whose `cid` must match the subject's canonical CID. Any network.attested.* speaker can call this to verify without re-deriving the CID machinery."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}
```
