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

# Integration prompt

> One prompt that has an AI coding agent integrate ProofAge into your app end to end.

Connect the [ProofAge MCP server](/integration/mcp/overview) to your coding agent (Claude Code, Cursor, Codex or any MCP client), open your project, and paste the prompt below. Edit the first paragraph to describe what you want.

```text theme={null}
Integrate ProofAge into this project.

What I want: <e.g. an age check (18+) before checkout; or identity verification (KYC) for new sellers>.
Where the person starts it: <e.g. the "Verify age" button on /checkout>.
What a result should change: <e.g. set users.age_verified_at on approval; block the order on decline>.

Use the ProofAge MCP server and follow its onboarding order:
1. Create a TEST workspace with the right check (create-workspace, mode "test").
2. Call get-integration-guide for that workspace, and read the proofage://docs/... resources
   (quick start, browser SDK, webhooks, API authentication, testing) and proofage://docs/openapi.json.
   Prefer the official server SDK for this project's language.
3. Write the integration:
   - the backend creates the verification with a SIGNED request, with external_id = our user ID
     and callback_url = a page of ours;
   - the frontend opens it with the Browser SDK (or redirects to its url);
   - a webhook endpoint verifies the signature and timestamp, handles approved, declined,
     resubmission_requested, review, abandoned and expired, is idempotent on the delivery ID,
     and updates our data;
   - the page the person returns to never assumes the outcome.
   Keep the keys in environment variables; never commit them.
4. Create a verification (create-verification) and give me its URL: I will complete it with my camera.
5. When it is in review, set the outcome with set-test-verification-outcome and confirm our webhook
   handler processed it (list-webhook-deliveries; replay with get-webhook-delivery-request if our
   endpoint is local).
6. Show me the diff and tell me what to set in production. Do not create a live workspace.
```

## Before going live

Review what the agent wrote against the [Go-live checklist](/integration/go-live), then create the live workspace yourself and swap its keys into production.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.