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

# Verification presets

> Run one check, several checks, or a ready-made bundle straight from a Hosted Verify URL.

Hosted Verify accepts the checks you want directly in the URL. There are three ways, simplest first.

## One check

Use `?verifiers=<id>`, or `?preset=<id>` for the same result with one check. Account and hosted checks fit most products:

```text theme={"dark"}
https://proofable.me/verify?verifiers=ownership-social&returnUrl=https://app.example.com/callback
```

Other useful single checks are `ownership-org-oauth` for work accounts, `proof-of-human`, `ownership-dns-txt`, and `agent-identity`. Wallet-bound checks such as `ownership-basic`, `nft-ownership`, `token-holding`, and `wallet-risk` stay available when your listing needs them. The full list is in the [verifier catalog](/verification/verifiers).

## Several checks

Separate check IDs with a comma. This is the recommended way to run more than one:

```text theme={"dark"}
https://proofable.me/verify?verifiers=ownership-social,proof-of-human
```

Agent setup:

```text theme={"dark"}
https://proofable.me/verify?verifiers=agent-identity,agent-delegation
```

## Ready-made bundles

A few named bundles resolve for convenience and older links:

| Bundle           | Checks                                                                 |
| ---------------- | ---------------------------------------------------------------------- |
| `agent-pack`     | `agent-identity`, `agent-delegation`, `wallet-risk`                    |
| `workspace-pack` | `ownership-social`, `ownership-basic`, `agent-identity`, `wallet-link` |
| `project-pack`   | `contract-ownership`, `ownership-dns-txt`                              |
| `creator-pack`   | `ownership-basic`, `ai-content-moderation`                             |

```text theme={"dark"}
https://proofable.me/verify?preset=agent-pack&returnUrl=https://app.example.com/callback
```

For any other combination, use `?verifiers=` with the IDs you need.

Add `returnUrl`, `mode=popup`, or `origin` as needed. Do not combine a preset with `gateId`, because a published gate owns its own checks.

## SDK

```javascript theme={"dark"}
import { getHostedCheckoutUrl } from '@proofable/sdk';

// Account checks for typical apps
getHostedCheckoutUrl({ verifiers: ['ownership-social'], returnUrl: 'https://app.example.com/callback' });

// Agent permissions
getHostedCheckoutUrl({ verifiers: ['agent-identity', 'agent-delegation'], returnUrl: 'https://app.example.com/callback' });

// Named bundle
getHostedCheckoutUrl({ preset: 'agent-pack', returnUrl: 'https://app.example.com/callback' });
```

## Next

<CardGroup cols={2}>
  <Card title="Hosted verification" icon="key" href="/verification/hosted">
    Parameters, popups, and callbacks.
  </Card>

  <Card title="Verifier catalog" icon="list-tree" href="/verification/verifiers">
    Every check you can run.
  </Card>
</CardGroup>
