Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ regenerate-schemas: ## Download latest schemas and regenerate models
@echo "Fixing schema references..."
$(PYTHON) scripts/fix_schema_refs.py
@echo "Generating Pydantic models..."
$(PYTHON) scripts/generate_models_simple.py
$(PYTHON) scripts/generate_types.py
@echo "✓ Schemas regenerated successfully"

validate-generated: ## Validate generated code (syntax and imports)
Expand Down Expand Up @@ -99,7 +99,7 @@ check-schema-drift: ## Check if schemas are out of sync with upstream
@echo "Checking for schema drift..."
@$(PYTHON) scripts/sync_schemas.py
@$(PYTHON) scripts/fix_schema_refs.py
@$(PYTHON) scripts/generate_models_simple.py
@$(PYTHON) scripts/generate_types.py
@if git diff --exit-code src/adcp/types/generated.py schemas/cache/; then \
echo "✓ Schemas are up-to-date"; \
else \
Expand Down
306 changes: 153 additions & 153 deletions schemas/cache/.hashes.json

Large diffs are not rendered by default.

26 changes: 13 additions & 13 deletions schemas/cache/adagents.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,12 @@
"description": "Declaration of authorized sales agents for advertising inventory. Hosted at /.well-known/adagents.json on publisher domains. Can either contain the full structure inline or reference an authoritative URL.",
"examples": [
{
"$schema": "/schemas/latest/adagents.json",
"$schema": "/schemas/2.6.0/adagents.json",
"authoritative_location": "https://cdn.example.com/adagents/v2/adagents.json",
"last_updated": "2025-01-15T10:00:00Z"
},
{
"$schema": "/schemas/latest/adagents.json",
"$schema": "/schemas/2.6.0/adagents.json",
"authorized_agents": [
{
"authorization_type": "property_tags",
Expand Down Expand Up @@ -41,7 +41,7 @@
}
},
{
"$schema": "/schemas/latest/adagents.json",
"$schema": "/schemas/2.6.0/adagents.json",
"authorized_agents": [
{
"authorization_type": "property_tags",
Expand Down Expand Up @@ -135,7 +135,7 @@
}
},
{
"$schema": "/schemas/latest/adagents.json",
"$schema": "/schemas/2.6.0/adagents.json",
"authorized_agents": [
{
"authorization_type": "property_tags",
Expand Down Expand Up @@ -174,7 +174,7 @@
}
},
{
"$schema": "/schemas/latest/adagents.json",
"$schema": "/schemas/2.6.0/adagents.json",
"authorized_agents": [
{
"authorization_type": "publisher_properties",
Expand Down Expand Up @@ -222,7 +222,7 @@
],
"oneOf": [
{
"additionalProperties": false,
"additionalProperties": true,
"description": "URL reference variant - points to the authoritative location of the adagents.json file",
"properties": {
"$schema": {
Expand All @@ -247,7 +247,7 @@
"type": "object"
},
{
"additionalProperties": false,
"additionalProperties": true,
"description": "Inline structure variant - contains full agent authorization data",
"properties": {
"$schema": {
Expand All @@ -259,7 +259,7 @@
"items": {
"oneOf": [
{
"additionalProperties": false,
"additionalProperties": true,
"properties": {
"authorization_type": {
"const": "property_ids",
Expand Down Expand Up @@ -295,7 +295,7 @@
"type": "object"
},
{
"additionalProperties": false,
"additionalProperties": true,
"properties": {
"authorization_type": {
"const": "property_tags",
Expand Down Expand Up @@ -331,7 +331,7 @@
"type": "object"
},
{
"additionalProperties": false,
"additionalProperties": true,
"properties": {
"authorization_type": {
"const": "inline_properties",
Expand Down Expand Up @@ -367,7 +367,7 @@
"type": "object"
},
{
"additionalProperties": false,
"additionalProperties": true,
"properties": {
"authorization_type": {
"const": "publisher_properties",
Expand Down Expand Up @@ -408,7 +408,7 @@
"type": "array"
},
"contact": {
"additionalProperties": false,
"additionalProperties": true,
"description": "Contact information for the entity managing this adagents.json file (may be publisher or third-party operator)",
"properties": {
"domain": {
Expand Down Expand Up @@ -462,7 +462,7 @@
},
"tags": {
"additionalProperties": {
"additionalProperties": false,
"additionalProperties": true,
"properties": {
"description": {
"description": "Description of what this tag represents",
Expand Down
4 changes: 2 additions & 2 deletions schemas/cache/core/activation-key.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"description": "Universal identifier for using a signal on a destination platform. Can be either a segment ID or a key-value pair depending on the platform's targeting mechanism.",
"oneOf": [
{
"additionalProperties": false,
"additionalProperties": true,
"properties": {
"segment_id": {
"description": "The platform-specific segment identifier to use in campaign targeting",
Expand All @@ -21,7 +21,7 @@
]
},
{
"additionalProperties": false,
"additionalProperties": true,
"properties": {
"key": {
"description": "The targeting parameter key",
Expand Down
2 changes: 1 addition & 1 deletion schemas/cache/core/assets/audio-asset.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"additionalProperties": true,
"description": "Audio asset with URL and specifications",
"properties": {
"bitrate_kbps": {
Expand Down
2 changes: 1 addition & 1 deletion schemas/cache/core/assets/css-asset.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"additionalProperties": true,
"description": "CSS stylesheet asset",
"properties": {
"content": {
Expand Down
4 changes: 2 additions & 2 deletions schemas/cache/core/assets/daast-asset.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"description": "DAAST (Digital Audio Ad Serving Template) tag for third-party audio ad serving",
"oneOf": [
{
"additionalProperties": false,
"additionalProperties": true,
"properties": {
"companion_ads": {
"description": "Whether companion display ads are included",
Expand Down Expand Up @@ -43,7 +43,7 @@
"type": "object"
},
{
"additionalProperties": false,
"additionalProperties": true,
"properties": {
"companion_ads": {
"description": "Whether companion display ads are included",
Expand Down
2 changes: 1 addition & 1 deletion schemas/cache/core/assets/html-asset.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"additionalProperties": true,
"description": "HTML content asset",
"properties": {
"content": {
Expand Down
2 changes: 1 addition & 1 deletion schemas/cache/core/assets/image-asset.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"additionalProperties": true,
"description": "Image asset with URL and dimensions",
"properties": {
"alt_text": {
Expand Down
2 changes: 1 addition & 1 deletion schemas/cache/core/assets/javascript-asset.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"additionalProperties": true,
"description": "JavaScript code asset",
"properties": {
"content": {
Expand Down
2 changes: 1 addition & 1 deletion schemas/cache/core/assets/text-asset.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"additionalProperties": true,
"description": "Text content asset",
"properties": {
"content": {
Expand Down
2 changes: 1 addition & 1 deletion schemas/cache/core/assets/url-asset.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"additionalProperties": true,
"description": "URL reference asset",
"properties": {
"description": {
Expand Down
4 changes: 2 additions & 2 deletions schemas/cache/core/assets/vast-asset.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"description": "VAST (Video Ad Serving Template) tag for third-party video ad serving",
"oneOf": [
{
"additionalProperties": false,
"additionalProperties": true,
"properties": {
"delivery_type": {
"const": "url",
Expand Down Expand Up @@ -43,7 +43,7 @@
"type": "object"
},
{
"additionalProperties": false,
"additionalProperties": true,
"properties": {
"content": {
"description": "Inline VAST XML content",
Expand Down
2 changes: 1 addition & 1 deletion schemas/cache/core/assets/video-asset.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"additionalProperties": true,
"description": "Video asset with URL and specifications",
"properties": {
"bitrate_kbps": {
Expand Down
2 changes: 1 addition & 1 deletion schemas/cache/core/assets/webhook-asset.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"additionalProperties": true,
"description": "Webhook for server-side dynamic content rendering (DCO)",
"properties": {
"method": {
Expand Down
6 changes: 3 additions & 3 deletions schemas/cache/core/brand-manifest.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"additionalProperties": true,
"description": "Standardized brand information manifest for creative generation and media buying. Enables low-friction creative workflows by providing brand context that can be easily cached and shared across requests.",
"examples": [
{
Expand Down Expand Up @@ -117,7 +117,7 @@
"assets": {
"description": "Brand asset library with explicit assets and tags. Assets are referenced inline with URLs pointing to CDN-hosted files.",
"items": {
"additionalProperties": false,
"additionalProperties": true,
"properties": {
"asset_id": {
"description": "Unique identifier for this asset",
Expand Down Expand Up @@ -336,7 +336,7 @@
"type": "string"
},
"product_catalog": {
"additionalProperties": false,
"additionalProperties": true,
"description": "Product catalog information for e-commerce advertisers. Enables SKU-level creative generation and product selection.",
"properties": {
"categories": {
Expand Down
6 changes: 3 additions & 3 deletions schemas/cache/core/creative-asset.json
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"additionalProperties": true,
"description": "Creative asset for upload to library - supports static assets, generative formats, and third-party snippets",
"properties": {
"approved": {
"description": "For generative creatives: set to true to approve and finalize, false to request regeneration with updated assets/message. Omit for non-generative creatives.",
"type": "boolean"
},
"assets": {
"additionalProperties": false,
"additionalProperties": true,
"description": "Assets required by the format, keyed by asset_role",
"patternProperties": {
"^[a-zA-Z0-9_-]+$": {
Expand Down Expand Up @@ -62,7 +62,7 @@
"inputs": {
"description": "Preview contexts for generative formats - defines what scenarios to generate previews for",
"items": {
"additionalProperties": false,
"additionalProperties": true,
"properties": {
"context_description": {
"description": "Natural language description of the context for AI-generated content",
Expand Down
2 changes: 1 addition & 1 deletion schemas/cache/core/creative-assignment.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"additionalProperties": true,
"description": "Assignment of a creative asset to a package with optional placement targeting. Used in create_media_buy and update_media_buy requests. Note: sync_creatives does not support placement_ids - use create/update_media_buy for placement-level targeting.",
"properties": {
"creative_id": {
Expand Down
2 changes: 1 addition & 1 deletion schemas/cache/core/creative-filters.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"additionalProperties": true,
"description": "Filter criteria for querying creative assets from the centralized library",
"properties": {
"assigned_to_package": {
Expand Down
4 changes: 2 additions & 2 deletions schemas/cache/core/creative-manifest.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"additionalProperties": true,
"description": "Complete specification of a creative with all assets needed for rendering in a specific format. Each asset is typed according to its asset_role from the format specification and contains the actual content/URL that fulfills the format requirements.",
"properties": {
"assets": {
"additionalProperties": false,
"additionalProperties": true,
"description": "Map of asset IDs to actual asset content. Each key MUST match an asset_id from the format's assets_required array (e.g., 'banner_image', 'clickthrough_url', 'video_file', 'vast_tag'). The asset_id is the technical identifier used to match assets to format requirements.\n\nIMPORTANT: Creative manifest validation MUST be performed in the context of the format specification. The format defines what type each asset_id should be, which eliminates any validation ambiguity.",
"patternProperties": {
"^[a-z0-9_]+$": {
Expand Down
2 changes: 1 addition & 1 deletion schemas/cache/core/creative-policy.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"additionalProperties": true,
"description": "Creative requirements and restrictions for a product",
"properties": {
"co_branding": {
Expand Down
4 changes: 2 additions & 2 deletions schemas/cache/core/delivery-metrics.json
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
"type": "number"
},
"dooh_metrics": {
"additionalProperties": false,
"additionalProperties": true,
"description": "DOOH-specific metrics (only included for DOOH campaigns)",
"properties": {
"calculation_notes": {
Expand Down Expand Up @@ -62,7 +62,7 @@
"venue_breakdown": {
"description": "Per-venue performance breakdown",
"items": {
"additionalProperties": false,
"additionalProperties": true,
"properties": {
"impressions": {
"description": "Impressions delivered at this venue",
Expand Down
4 changes: 2 additions & 2 deletions schemas/cache/core/deployment.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"description": "A signal deployment to a specific deployment target with activation status and key",
"oneOf": [
{
"additionalProperties": false,
"additionalProperties": true,
"properties": {
"account": {
"description": "Account identifier if applicable",
Expand Down Expand Up @@ -45,7 +45,7 @@
"type": "object"
},
{
"additionalProperties": false,
"additionalProperties": true,
"properties": {
"account": {
"description": "Account identifier if applicable",
Expand Down
Loading