Getting Started
This guide walks you through implementing the AI Provenance Protocol in your application.
Prerequisites
- Familiarity with JSON and REST APIs
- An application that generates content using AI models
Step 1: Generate APP metadata
Every time your application generates content using an AI model, create an APP metadata object:
{
"app_version": "1.0.0",
"ai_generated": true,
"generator": {
"platform": "your-platform-name",
"model": "provider/model-name"
},
"generated_at": "2026-03-06T14:22:00Z",
"generation_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}Key requirements:
generation_idmust be a UUID v4, unique per generation eventgenerated_atmust be an ISO 8601 timestamp (UTC recommended)modelshould follow the"provider/model-name"format
Step 2: Choose an embedding mode
Option A: Inline embedding (JSON APIs)
Add the metadata as an _ai_provenance key in your JSON response:
{
"product_title": "Premium Leather Wallet",
"product_description": "Handcrafted from full-grain leather...",
"_ai_provenance": {
"app_version": "1.0.0",
"ai_generated": true,
"generator": {
"platform": "your-platform",
"model": "anthropic/claude-sonnet-4"
},
"generated_at": "2026-03-06T14:22:00Z",
"generation_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
}Option B: HTTP headers (non-JSON responses)
HTTP/1.1 200 OK
Content-Type: text/html
X-APP-Version: 1.0.0
X-APP-AI-Generated: true
X-APP-Generation-Id: a1b2c3d4-e5f6-7890-abcd-ef1234567890
X-APP-Generator-Platform: your-platform
X-APP-Generator-Model: anthropic/claude-sonnet-4
X-APP-Generated-At: 2026-03-06T14:22:00ZOption C: Linked metadata (any content type)
Link: <https://your-platform.com/v1/metadata/a1b2c3d4-...>; rel="ai-provenance"; type="application/app+json"See Embedding Modes for detailed guidance on each approach.
Step 3: Record human review (recommended)
When a human reviews AI-generated content, update the metadata:
{
"review": {
"human_reviewed": true,
"reviewer_role": "editor",
"reviewed_at": "2026-03-06T15:30:00Z",
"review_type": "approved_without_changes"
}
}This is critical for EU AI Act compliance — Article 50(4) provides a disclosure exemption for human-reviewed content.
Step 4: Add a content hash (recommended)
For integrity verification, compute a SHA-256 hash of the generated content:
{
"content_hash": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
}For JSON content, hash the canonical representation: keys sorted, no whitespace, UTF-8, excluding the _ai_provenance key.
Step 5: Implement verification (recommended)
Expose a public endpoint where third parties can verify generation claims:
GET https://your-platform.com/v1/verify/{generation_id}{
"found": true,
"ai_generated": true,
"generator": {
"platform": "your-platform",
"model": "anthropic/claude-sonnet-4"
},
"generated_at": "2026-03-06T14:22:00Z"
}No authentication required. See the Verification Protocol for the full specification.
Step 6: Validate your metadata
Validate your APP metadata against the JSON Schema to ensure conformance.
Next steps
- Read about embedding modes in detail
- Understand the verification protocol
- See how APP maps to regulations
- Learn about MCP integration