Skip to Content
DocumentationGetting Started

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_id must be a UUID v4, unique per generation event
  • generated_at must be an ISO 8601 timestamp (UTC recommended)
  • model should 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:00Z

Option 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.

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.

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.

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

Last updated on