@adcp/sdk 8.1.0-beta.1 → 8.1.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
- package/dist/lib/testing/storyboard/request-builder.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/request-builder.js +4 -1
- package/dist/lib/testing/storyboard/request-builder.js.map +1 -1
- package/dist/lib/types/core.generated.d.ts +268 -186
- package/dist/lib/types/core.generated.d.ts.map +1 -1
- package/dist/lib/types/core.generated.js +1 -1
- package/dist/lib/types/schemas.generated.d.ts +94694 -79054
- package/dist/lib/types/schemas.generated.d.ts.map +1 -1
- package/dist/lib/types/schemas.generated.js +215 -175
- package/dist/lib/types/schemas.generated.js.map +1 -1
- package/dist/lib/types/tools.generated.d.ts +236 -188
- package/dist/lib/types/tools.generated.d.ts.map +1 -1
- package/dist/lib/utils/response-unwrapper.d.ts.map +1 -1
- package/dist/lib/utils/response-unwrapper.js +10 -1
- package/dist/lib/utils/response-unwrapper.js.map +1 -1
- package/dist/lib/utils/union-errors.d.ts +13 -6
- package/dist/lib/utils/union-errors.d.ts.map +1 -1
- package/dist/lib/utils/union-errors.js +34 -7
- package/dist/lib/utils/union-errors.js.map +1 -1
- package/dist/lib/validation/schema-loader.d.ts.map +1 -1
- package/dist/lib/validation/schema-loader.js +46 -1
- package/dist/lib/validation/schema-loader.js.map +1 -1
- package/dist/lib/version.d.ts +3 -3
- package/dist/lib/version.js +3 -3
- package/package.json +1 -1
|
@@ -5936,133 +5936,7 @@ export type CreativeAsset = {
|
|
|
5936
5936
|
*/
|
|
5937
5937
|
industry_identifiers?: IndustryIdentifier[];
|
|
5938
5938
|
provenance?: Provenance;
|
|
5939
|
-
} & (
|
|
5940
|
-
/**
|
|
5941
|
-
* Unique identifier for the creative. Stable across v1 and v2 paths — a creative registered against v1 `format_id` retains the same `creative_id` when later viewed via v2 flatten.
|
|
5942
|
-
*/
|
|
5943
|
-
creative_id: string;
|
|
5944
|
-
/**
|
|
5945
|
-
* Human-readable creative name
|
|
5946
|
-
*/
|
|
5947
|
-
name: string;
|
|
5948
|
-
format_id: FormatReferenceStructuredObject;
|
|
5949
|
-
/**
|
|
5950
|
-
* v2 path, optional. Stable identifier matching one of the seller's product `format_options[i].capability_id` values. REQUIRED only when the target product has multiple `format_options` entries sharing the same `format_kind`.
|
|
5951
|
-
*/
|
|
5952
|
-
capability_id?: string;
|
|
5953
|
-
/**
|
|
5954
|
-
* Assets required by the format, keyed by asset_id. Each slot value is either a single asset object or an array of asset objects (for slots with `min`/`max > 1` like carousel `cards` or responsive_creative `headlines`). Each asset value carries an `asset_type` discriminator that selects the matching asset schema.
|
|
5955
|
-
*/
|
|
5956
|
-
assets: {
|
|
5957
|
-
/**
|
|
5958
|
-
* This interface was referenced by `undefined`'s JSON-Schema definition
|
|
5959
|
-
* via the `patternProperty` "^[a-z0-9_]+$".
|
|
5960
|
-
*/
|
|
5961
|
-
[k: string]: AssetVariant | AssetVariant[];
|
|
5962
|
-
};
|
|
5963
|
-
/**
|
|
5964
|
-
* Preview contexts for generative formats - defines what scenarios to generate previews for
|
|
5965
|
-
*/
|
|
5966
|
-
inputs?: {
|
|
5967
|
-
/**
|
|
5968
|
-
* Human-readable name for this preview variant
|
|
5969
|
-
*/
|
|
5970
|
-
name: string;
|
|
5971
|
-
/**
|
|
5972
|
-
* Macro values to apply for this preview
|
|
5973
|
-
*/
|
|
5974
|
-
macros?: {
|
|
5975
|
-
[k: string]: string | undefined;
|
|
5976
|
-
};
|
|
5977
|
-
/**
|
|
5978
|
-
* Natural language description of the context for AI-generated content
|
|
5979
|
-
*/
|
|
5980
|
-
context_description?: string;
|
|
5981
|
-
}[];
|
|
5982
|
-
/**
|
|
5983
|
-
* User-defined tags for organization and searchability
|
|
5984
|
-
*/
|
|
5985
|
-
tags?: string[];
|
|
5986
|
-
status?: CreativeStatus;
|
|
5987
|
-
/**
|
|
5988
|
-
* Optional delivery weight for creative rotation when uploading via create_media_buy or update_media_buy (0-100). If omitted, platform determines rotation. Only used during upload to media buy - not stored in creative library.
|
|
5989
|
-
* @minimum 0
|
|
5990
|
-
* @maximum 100
|
|
5991
|
-
*/
|
|
5992
|
-
weight?: number;
|
|
5993
|
-
/**
|
|
5994
|
-
* Optional array of placement IDs where this creative should run when uploading via create_media_buy or update_media_buy. References placement_id values from the product's placements array. If omitted, creative runs on all placements. Only used during upload to media buy - not stored in creative library.
|
|
5995
|
-
*/
|
|
5996
|
-
placement_ids?: string[];
|
|
5997
|
-
/**
|
|
5998
|
-
* Industry-standard identifiers for this creative (e.g., Ad-ID, ISCI, Clearcast clock number). In broadcast buying, these identifiers tie the creative to rotation instructions and traffic systems. A creative may have multiple identifiers when different systems reference the same asset.
|
|
5999
|
-
*/
|
|
6000
|
-
industry_identifiers?: IndustryIdentifier[];
|
|
6001
|
-
provenance?: Provenance;
|
|
6002
|
-
} | {
|
|
6003
|
-
/**
|
|
6004
|
-
* Unique identifier for the creative. Stable across v1 and v2 paths — a creative registered against v1 `format_id` retains the same `creative_id` when later viewed via v2 flatten.
|
|
6005
|
-
*/
|
|
6006
|
-
creative_id: string;
|
|
6007
|
-
/**
|
|
6008
|
-
* Human-readable creative name
|
|
6009
|
-
*/
|
|
6010
|
-
name: string;
|
|
6011
|
-
format_kind: CanonicalFormatKind;
|
|
6012
|
-
/**
|
|
6013
|
-
* v2 path, optional. Stable identifier matching one of the seller's product `format_options[i].capability_id` values. REQUIRED only when the target product has multiple `format_options` entries sharing the same `format_kind`.
|
|
6014
|
-
*/
|
|
6015
|
-
capability_id?: string;
|
|
6016
|
-
/**
|
|
6017
|
-
* Assets required by the format, keyed by asset_id. Each slot value is either a single asset object or an array of asset objects (for slots with `min`/`max > 1` like carousel `cards` or responsive_creative `headlines`). Each asset value carries an `asset_type` discriminator that selects the matching asset schema.
|
|
6018
|
-
*/
|
|
6019
|
-
assets: {
|
|
6020
|
-
/**
|
|
6021
|
-
* This interface was referenced by `undefined`'s JSON-Schema definition
|
|
6022
|
-
* via the `patternProperty` "^[a-z0-9_]+$".
|
|
6023
|
-
*/
|
|
6024
|
-
[k: string]: AssetVariant | AssetVariant[];
|
|
6025
|
-
};
|
|
6026
|
-
/**
|
|
6027
|
-
* Preview contexts for generative formats - defines what scenarios to generate previews for
|
|
6028
|
-
*/
|
|
6029
|
-
inputs?: {
|
|
6030
|
-
/**
|
|
6031
|
-
* Human-readable name for this preview variant
|
|
6032
|
-
*/
|
|
6033
|
-
name: string;
|
|
6034
|
-
/**
|
|
6035
|
-
* Macro values to apply for this preview
|
|
6036
|
-
*/
|
|
6037
|
-
macros?: {
|
|
6038
|
-
[k: string]: string | undefined;
|
|
6039
|
-
};
|
|
6040
|
-
/**
|
|
6041
|
-
* Natural language description of the context for AI-generated content
|
|
6042
|
-
*/
|
|
6043
|
-
context_description?: string;
|
|
6044
|
-
}[];
|
|
6045
|
-
/**
|
|
6046
|
-
* User-defined tags for organization and searchability
|
|
6047
|
-
*/
|
|
6048
|
-
tags?: string[];
|
|
6049
|
-
status?: CreativeStatus;
|
|
6050
|
-
/**
|
|
6051
|
-
* Optional delivery weight for creative rotation when uploading via create_media_buy or update_media_buy (0-100). If omitted, platform determines rotation. Only used during upload to media buy - not stored in creative library.
|
|
6052
|
-
* @minimum 0
|
|
6053
|
-
* @maximum 100
|
|
6054
|
-
*/
|
|
6055
|
-
weight?: number;
|
|
6056
|
-
/**
|
|
6057
|
-
* Optional array of placement IDs where this creative should run when uploading via create_media_buy or update_media_buy. References placement_id values from the product's placements array. If omitted, creative runs on all placements. Only used during upload to media buy - not stored in creative library.
|
|
6058
|
-
*/
|
|
6059
|
-
placement_ids?: string[];
|
|
6060
|
-
/**
|
|
6061
|
-
* Industry-standard identifiers for this creative (e.g., Ad-ID, ISCI, Clearcast clock number). In broadcast buying, these identifiers tie the creative to rotation instructions and traffic systems. A creative may have multiple identifiers when different systems reference the same asset.
|
|
6062
|
-
*/
|
|
6063
|
-
industry_identifiers?: IndustryIdentifier[];
|
|
6064
|
-
provenance?: Provenance;
|
|
6065
|
-
});
|
|
5939
|
+
} & (V1CreativeNamedFormatReference | V2CreativeCanonicalFormatKind);
|
|
6066
5940
|
/**
|
|
6067
5941
|
* Canonical union of all asset variant schemas. Referenced from creative-asset.json and creative-manifest.json to ensure a single named type is emitted by schema-to-TypeScript tooling. Add new asset types here and to the creative/asset-types registry.
|
|
6068
5942
|
*/
|
|
@@ -7367,6 +7241,140 @@ export interface IndustryIdentifier {
|
|
|
7367
7241
|
*/
|
|
7368
7242
|
value: string;
|
|
7369
7243
|
}
|
|
7244
|
+
/**
|
|
7245
|
+
* Creative references a named format via the structured `format_id` object. The v1 path; remains supported through 4.x.
|
|
7246
|
+
*/
|
|
7247
|
+
export interface V1CreativeNamedFormatReference {
|
|
7248
|
+
/**
|
|
7249
|
+
* Unique identifier for the creative. Stable across v1 and v2 paths — a creative registered against v1 `format_id` retains the same `creative_id` when later viewed via v2 flatten.
|
|
7250
|
+
*/
|
|
7251
|
+
creative_id: string;
|
|
7252
|
+
/**
|
|
7253
|
+
* Human-readable creative name
|
|
7254
|
+
*/
|
|
7255
|
+
name: string;
|
|
7256
|
+
format_id: FormatReferenceStructuredObject;
|
|
7257
|
+
/**
|
|
7258
|
+
* v2 path, optional. Stable identifier matching one of the seller's product `format_options[i].capability_id` values. REQUIRED only when the target product has multiple `format_options` entries sharing the same `format_kind`.
|
|
7259
|
+
*/
|
|
7260
|
+
capability_id?: string;
|
|
7261
|
+
/**
|
|
7262
|
+
* Assets required by the format, keyed by asset_id. Each slot value is either a single asset object or an array of asset objects (for slots with `min`/`max > 1` like carousel `cards` or responsive_creative `headlines`). Each asset value carries an `asset_type` discriminator that selects the matching asset schema.
|
|
7263
|
+
*/
|
|
7264
|
+
assets: {
|
|
7265
|
+
/**
|
|
7266
|
+
* This interface was referenced by `undefined`'s JSON-Schema definition
|
|
7267
|
+
* via the `patternProperty` "^[a-z0-9_]+$".
|
|
7268
|
+
*/
|
|
7269
|
+
[k: string]: AssetVariant | AssetVariant[];
|
|
7270
|
+
};
|
|
7271
|
+
/**
|
|
7272
|
+
* Preview contexts for generative formats - defines what scenarios to generate previews for
|
|
7273
|
+
*/
|
|
7274
|
+
inputs?: {
|
|
7275
|
+
/**
|
|
7276
|
+
* Human-readable name for this preview variant
|
|
7277
|
+
*/
|
|
7278
|
+
name: string;
|
|
7279
|
+
/**
|
|
7280
|
+
* Macro values to apply for this preview
|
|
7281
|
+
*/
|
|
7282
|
+
macros?: {
|
|
7283
|
+
[k: string]: string | undefined;
|
|
7284
|
+
};
|
|
7285
|
+
/**
|
|
7286
|
+
* Natural language description of the context for AI-generated content
|
|
7287
|
+
*/
|
|
7288
|
+
context_description?: string;
|
|
7289
|
+
}[];
|
|
7290
|
+
/**
|
|
7291
|
+
* User-defined tags for organization and searchability
|
|
7292
|
+
*/
|
|
7293
|
+
tags?: string[];
|
|
7294
|
+
status?: CreativeStatus;
|
|
7295
|
+
/**
|
|
7296
|
+
* Optional delivery weight for creative rotation when uploading via create_media_buy or update_media_buy (0-100). If omitted, platform determines rotation. Only used during upload to media buy - not stored in creative library.
|
|
7297
|
+
* @minimum 0
|
|
7298
|
+
* @maximum 100
|
|
7299
|
+
*/
|
|
7300
|
+
weight?: number;
|
|
7301
|
+
/**
|
|
7302
|
+
* Optional array of placement IDs where this creative should run when uploading via create_media_buy or update_media_buy. References placement_id values from the product's placements array. If omitted, creative runs on all placements. Only used during upload to media buy - not stored in creative library.
|
|
7303
|
+
*/
|
|
7304
|
+
placement_ids?: string[];
|
|
7305
|
+
/**
|
|
7306
|
+
* Industry-standard identifiers for this creative (e.g., Ad-ID, ISCI, Clearcast clock number). In broadcast buying, these identifiers tie the creative to rotation instructions and traffic systems. A creative may have multiple identifiers when different systems reference the same asset.
|
|
7307
|
+
*/
|
|
7308
|
+
industry_identifiers?: IndustryIdentifier[];
|
|
7309
|
+
provenance?: Provenance;
|
|
7310
|
+
}
|
|
7311
|
+
/**
|
|
7312
|
+
* Creative declares which canonical format it targets via `format_kind` (e.g., `image`). The v2 path introduced by RFC #3305.
|
|
7313
|
+
*/
|
|
7314
|
+
export interface V2CreativeCanonicalFormatKind {
|
|
7315
|
+
/**
|
|
7316
|
+
* Unique identifier for the creative. Stable across v1 and v2 paths — a creative registered against v1 `format_id` retains the same `creative_id` when later viewed via v2 flatten.
|
|
7317
|
+
*/
|
|
7318
|
+
creative_id: string;
|
|
7319
|
+
/**
|
|
7320
|
+
* Human-readable creative name
|
|
7321
|
+
*/
|
|
7322
|
+
name: string;
|
|
7323
|
+
format_kind: CanonicalFormatKind;
|
|
7324
|
+
/**
|
|
7325
|
+
* v2 path, optional. Stable identifier matching one of the seller's product `format_options[i].capability_id` values. REQUIRED only when the target product has multiple `format_options` entries sharing the same `format_kind`.
|
|
7326
|
+
*/
|
|
7327
|
+
capability_id?: string;
|
|
7328
|
+
/**
|
|
7329
|
+
* Assets required by the format, keyed by asset_id. Each slot value is either a single asset object or an array of asset objects (for slots with `min`/`max > 1` like carousel `cards` or responsive_creative `headlines`). Each asset value carries an `asset_type` discriminator that selects the matching asset schema.
|
|
7330
|
+
*/
|
|
7331
|
+
assets: {
|
|
7332
|
+
/**
|
|
7333
|
+
* This interface was referenced by `undefined`'s JSON-Schema definition
|
|
7334
|
+
* via the `patternProperty` "^[a-z0-9_]+$".
|
|
7335
|
+
*/
|
|
7336
|
+
[k: string]: AssetVariant | AssetVariant[];
|
|
7337
|
+
};
|
|
7338
|
+
/**
|
|
7339
|
+
* Preview contexts for generative formats - defines what scenarios to generate previews for
|
|
7340
|
+
*/
|
|
7341
|
+
inputs?: {
|
|
7342
|
+
/**
|
|
7343
|
+
* Human-readable name for this preview variant
|
|
7344
|
+
*/
|
|
7345
|
+
name: string;
|
|
7346
|
+
/**
|
|
7347
|
+
* Macro values to apply for this preview
|
|
7348
|
+
*/
|
|
7349
|
+
macros?: {
|
|
7350
|
+
[k: string]: string | undefined;
|
|
7351
|
+
};
|
|
7352
|
+
/**
|
|
7353
|
+
* Natural language description of the context for AI-generated content
|
|
7354
|
+
*/
|
|
7355
|
+
context_description?: string;
|
|
7356
|
+
}[];
|
|
7357
|
+
/**
|
|
7358
|
+
* User-defined tags for organization and searchability
|
|
7359
|
+
*/
|
|
7360
|
+
tags?: string[];
|
|
7361
|
+
status?: CreativeStatus;
|
|
7362
|
+
/**
|
|
7363
|
+
* Optional delivery weight for creative rotation when uploading via create_media_buy or update_media_buy (0-100). If omitted, platform determines rotation. Only used during upload to media buy - not stored in creative library.
|
|
7364
|
+
* @minimum 0
|
|
7365
|
+
* @maximum 100
|
|
7366
|
+
*/
|
|
7367
|
+
weight?: number;
|
|
7368
|
+
/**
|
|
7369
|
+
* Optional array of placement IDs where this creative should run when uploading via create_media_buy or update_media_buy. References placement_id values from the product's placements array. If omitted, creative runs on all placements. Only used during upload to media buy - not stored in creative library.
|
|
7370
|
+
*/
|
|
7371
|
+
placement_ids?: string[];
|
|
7372
|
+
/**
|
|
7373
|
+
* Industry-standard identifiers for this creative (e.g., Ad-ID, ISCI, Clearcast clock number). In broadcast buying, these identifiers tie the creative to rotation instructions and traffic systems. A creative may have multiple identifiers when different systems reference the same asset.
|
|
7374
|
+
*/
|
|
7375
|
+
industry_identifiers?: IndustryIdentifier[];
|
|
7376
|
+
provenance?: Provenance;
|
|
7377
|
+
}
|
|
7370
7378
|
/**
|
|
7371
7379
|
* Override the account's default billing entity for this specific buy. When provided, the seller invoices this entity instead. The seller MUST validate the invoice recipient is authorized for this account. When governance_agents are configured, the seller MUST include invoice_recipient in the check_governance request.
|
|
7372
7380
|
*/
|
|
@@ -11249,65 +11257,7 @@ export type CreativeManifest = {
|
|
|
11249
11257
|
industry_identifiers?: IndustryIdentifier[];
|
|
11250
11258
|
provenance?: Provenance;
|
|
11251
11259
|
ext?: ExtensionObject;
|
|
11252
|
-
} & (
|
|
11253
|
-
format_id: FormatReferenceStructuredObject;
|
|
11254
|
-
/**
|
|
11255
|
-
* v2 path, optional. Stable identifier matching one of the seller's product `format_options[i].capability_id` values. REQUIRED when the target product carries multiple `format_options` entries sharing the same `format_kind` (the buyer must disambiguate which option this manifest matches). When the product's `format_options` has a single entry — or multiple entries with distinct `format_kind` values — `capability_id` is OPTIONAL because `format_kind` alone routes the manifest to the right declaration.
|
|
11256
|
-
*/
|
|
11257
|
-
capability_id?: string;
|
|
11258
|
-
/**
|
|
11259
|
-
* Map of slot keys to actual asset content. v1 path: each key matches an `asset_id` from the format's `assets` array (e.g., 'banner_image', 'clickthrough_url', 'video_file', 'vast_tag'). v2 path: each key matches an `asset_group_id` from the format's `slots` declaration drawn from the canonical vocabulary registry (e.g., 'images_landscape', 'video', 'landing_page_url', 'vast_tag', 'script', 'creative_brief'). Either path produces the same envelope shape; only the slot-key vocabulary differs.
|
|
11260
|
-
*
|
|
11261
|
-
* Each slot value is **either** a single asset object (most slots — image, video, vast_tag, landing_page_url, etc.) **or** an array of asset objects (slots with `min`/`max` counts on the format declaration — `cards` on `image_carousel`, `headlines` / `descriptions` / `images_landscape` on `responsive_creative`, etc.). Single-vs-array shape is governed by the format's `slots[].min` and `slots[].max` parameters: when `max > 1` (or when the slot is conceptually a pool), the value MUST be an array; when the slot is single-valued, the value MUST be a single object. Each asset value (single or array element) carries an `asset_type` discriminator (image, video, audio, vast, daast, text, markdown, url, html, css, webhook, javascript, brief, catalog, zip, card) that selects the matching asset schema. Validators with OpenAPI-style discriminator support use `asset_type` to report errors against only the selected branch instead of all branches.
|
|
11262
|
-
*/
|
|
11263
|
-
assets: {
|
|
11264
|
-
/**
|
|
11265
|
-
* This interface was referenced by `undefined`'s JSON-Schema definition
|
|
11266
|
-
* via the `patternProperty` "^[a-z0-9_]+$".
|
|
11267
|
-
*/
|
|
11268
|
-
[k: string]: AssetVariant | AssetVariant[];
|
|
11269
|
-
};
|
|
11270
|
-
brand?: BrandReference;
|
|
11271
|
-
/**
|
|
11272
|
-
* Rights constraints attached to this creative. Each entry represents constraints from a single rights holder. A creative may combine multiple rights constraints (e.g., talent likeness + music license). For v1, rights constraints are informational metadata — the buyer/orchestrator manages creative lifecycle against these terms.
|
|
11273
|
-
*/
|
|
11274
|
-
rights?: RightsConstraint[];
|
|
11275
|
-
/**
|
|
11276
|
-
* Industry-standard identifiers for this specific manifest (e.g., Ad-ID, ISCI, Clearcast clock number). When present, overrides creative-level identifiers. Use when different format versions of the same source creative have distinct Ad-IDs (e.g., the :15 and :30 cuts).
|
|
11277
|
-
*/
|
|
11278
|
-
industry_identifiers?: IndustryIdentifier[];
|
|
11279
|
-
provenance?: Provenance;
|
|
11280
|
-
ext?: ExtensionObject;
|
|
11281
|
-
} | {
|
|
11282
|
-
format_kind: CanonicalFormatKind;
|
|
11283
|
-
/**
|
|
11284
|
-
* v2 path, optional. Stable identifier matching one of the seller's product `format_options[i].capability_id` values. REQUIRED when the target product carries multiple `format_options` entries sharing the same `format_kind` (the buyer must disambiguate which option this manifest matches). When the product's `format_options` has a single entry — or multiple entries with distinct `format_kind` values — `capability_id` is OPTIONAL because `format_kind` alone routes the manifest to the right declaration.
|
|
11285
|
-
*/
|
|
11286
|
-
capability_id?: string;
|
|
11287
|
-
/**
|
|
11288
|
-
* Map of slot keys to actual asset content. v1 path: each key matches an `asset_id` from the format's `assets` array (e.g., 'banner_image', 'clickthrough_url', 'video_file', 'vast_tag'). v2 path: each key matches an `asset_group_id` from the format's `slots` declaration drawn from the canonical vocabulary registry (e.g., 'images_landscape', 'video', 'landing_page_url', 'vast_tag', 'script', 'creative_brief'). Either path produces the same envelope shape; only the slot-key vocabulary differs.
|
|
11289
|
-
*
|
|
11290
|
-
* Each slot value is **either** a single asset object (most slots — image, video, vast_tag, landing_page_url, etc.) **or** an array of asset objects (slots with `min`/`max` counts on the format declaration — `cards` on `image_carousel`, `headlines` / `descriptions` / `images_landscape` on `responsive_creative`, etc.). Single-vs-array shape is governed by the format's `slots[].min` and `slots[].max` parameters: when `max > 1` (or when the slot is conceptually a pool), the value MUST be an array; when the slot is single-valued, the value MUST be a single object. Each asset value (single or array element) carries an `asset_type` discriminator (image, video, audio, vast, daast, text, markdown, url, html, css, webhook, javascript, brief, catalog, zip, card) that selects the matching asset schema. Validators with OpenAPI-style discriminator support use `asset_type` to report errors against only the selected branch instead of all branches.
|
|
11291
|
-
*/
|
|
11292
|
-
assets: {
|
|
11293
|
-
/**
|
|
11294
|
-
* This interface was referenced by `undefined`'s JSON-Schema definition
|
|
11295
|
-
* via the `patternProperty` "^[a-z0-9_]+$".
|
|
11296
|
-
*/
|
|
11297
|
-
[k: string]: AssetVariant | AssetVariant[];
|
|
11298
|
-
};
|
|
11299
|
-
brand?: BrandReference;
|
|
11300
|
-
/**
|
|
11301
|
-
* Rights constraints attached to this creative. Each entry represents constraints from a single rights holder. A creative may combine multiple rights constraints (e.g., talent likeness + music license). For v1, rights constraints are informational metadata — the buyer/orchestrator manages creative lifecycle against these terms.
|
|
11302
|
-
*/
|
|
11303
|
-
rights?: RightsConstraint[];
|
|
11304
|
-
/**
|
|
11305
|
-
* Industry-standard identifiers for this specific manifest (e.g., Ad-ID, ISCI, Clearcast clock number). When present, overrides creative-level identifiers. Use when different format versions of the same source creative have distinct Ad-IDs (e.g., the :15 and :30 cuts).
|
|
11306
|
-
*/
|
|
11307
|
-
industry_identifiers?: IndustryIdentifier[];
|
|
11308
|
-
provenance?: Provenance;
|
|
11309
|
-
ext?: ExtensionObject;
|
|
11310
|
-
});
|
|
11260
|
+
} & (V1ManifestNamedFormatReference | V2ManifestCanonicalFormatKind);
|
|
11311
11261
|
/**
|
|
11312
11262
|
* Types of rights usage that can be licensed through the brand protocol. Aligned with DDEX UseType direction for interoperability with music and media rights systems.
|
|
11313
11263
|
*/
|
|
@@ -11470,6 +11420,72 @@ export interface RightsConstraint {
|
|
|
11470
11420
|
verification_url?: string;
|
|
11471
11421
|
ext?: ExtensionObject;
|
|
11472
11422
|
}
|
|
11423
|
+
/**
|
|
11424
|
+
* Manifest references a named format via the structured `format_id` object. The v1 path; remains supported through 4.x.
|
|
11425
|
+
*/
|
|
11426
|
+
export interface V1ManifestNamedFormatReference {
|
|
11427
|
+
format_id: FormatReferenceStructuredObject;
|
|
11428
|
+
/**
|
|
11429
|
+
* v2 path, optional. Stable identifier matching one of the seller's product `format_options[i].capability_id` values. REQUIRED when the target product carries multiple `format_options` entries sharing the same `format_kind` (the buyer must disambiguate which option this manifest matches). When the product's `format_options` has a single entry — or multiple entries with distinct `format_kind` values — `capability_id` is OPTIONAL because `format_kind` alone routes the manifest to the right declaration.
|
|
11430
|
+
*/
|
|
11431
|
+
capability_id?: string;
|
|
11432
|
+
/**
|
|
11433
|
+
* Map of slot keys to actual asset content. v1 path: each key matches an `asset_id` from the format's `assets` array (e.g., 'banner_image', 'clickthrough_url', 'video_file', 'vast_tag'). v2 path: each key matches an `asset_group_id` from the format's `slots` declaration drawn from the canonical vocabulary registry (e.g., 'images_landscape', 'video', 'landing_page_url', 'vast_tag', 'script', 'creative_brief'). Either path produces the same envelope shape; only the slot-key vocabulary differs.
|
|
11434
|
+
*
|
|
11435
|
+
* Each slot value is **either** a single asset object (most slots — image, video, vast_tag, landing_page_url, etc.) **or** an array of asset objects (slots with `min`/`max` counts on the format declaration — `cards` on `image_carousel`, `headlines` / `descriptions` / `images_landscape` on `responsive_creative`, etc.). Single-vs-array shape is governed by the format's `slots[].min` and `slots[].max` parameters: when `max > 1` (or when the slot is conceptually a pool), the value MUST be an array; when the slot is single-valued, the value MUST be a single object. Each asset value (single or array element) carries an `asset_type` discriminator (image, video, audio, vast, daast, text, markdown, url, html, css, webhook, javascript, brief, catalog, zip, card) that selects the matching asset schema. Validators with OpenAPI-style discriminator support use `asset_type` to report errors against only the selected branch instead of all branches.
|
|
11436
|
+
*/
|
|
11437
|
+
assets: {
|
|
11438
|
+
/**
|
|
11439
|
+
* This interface was referenced by `undefined`'s JSON-Schema definition
|
|
11440
|
+
* via the `patternProperty` "^[a-z0-9_]+$".
|
|
11441
|
+
*/
|
|
11442
|
+
[k: string]: AssetVariant | AssetVariant[];
|
|
11443
|
+
};
|
|
11444
|
+
brand?: BrandReference;
|
|
11445
|
+
/**
|
|
11446
|
+
* Rights constraints attached to this creative. Each entry represents constraints from a single rights holder. A creative may combine multiple rights constraints (e.g., talent likeness + music license). For v1, rights constraints are informational metadata — the buyer/orchestrator manages creative lifecycle against these terms.
|
|
11447
|
+
*/
|
|
11448
|
+
rights?: RightsConstraint[];
|
|
11449
|
+
/**
|
|
11450
|
+
* Industry-standard identifiers for this specific manifest (e.g., Ad-ID, ISCI, Clearcast clock number). When present, overrides creative-level identifiers. Use when different format versions of the same source creative have distinct Ad-IDs (e.g., the :15 and :30 cuts).
|
|
11451
|
+
*/
|
|
11452
|
+
industry_identifiers?: IndustryIdentifier[];
|
|
11453
|
+
provenance?: Provenance;
|
|
11454
|
+
ext?: ExtensionObject;
|
|
11455
|
+
}
|
|
11456
|
+
/**
|
|
11457
|
+
* Manifest declares which canonical format it targets via `format_kind` (e.g., `image`). The v2 path introduced by RFC #3305.
|
|
11458
|
+
*/
|
|
11459
|
+
export interface V2ManifestCanonicalFormatKind {
|
|
11460
|
+
format_kind: CanonicalFormatKind;
|
|
11461
|
+
/**
|
|
11462
|
+
* v2 path, optional. Stable identifier matching one of the seller's product `format_options[i].capability_id` values. REQUIRED when the target product carries multiple `format_options` entries sharing the same `format_kind` (the buyer must disambiguate which option this manifest matches). When the product's `format_options` has a single entry — or multiple entries with distinct `format_kind` values — `capability_id` is OPTIONAL because `format_kind` alone routes the manifest to the right declaration.
|
|
11463
|
+
*/
|
|
11464
|
+
capability_id?: string;
|
|
11465
|
+
/**
|
|
11466
|
+
* Map of slot keys to actual asset content. v1 path: each key matches an `asset_id` from the format's `assets` array (e.g., 'banner_image', 'clickthrough_url', 'video_file', 'vast_tag'). v2 path: each key matches an `asset_group_id` from the format's `slots` declaration drawn from the canonical vocabulary registry (e.g., 'images_landscape', 'video', 'landing_page_url', 'vast_tag', 'script', 'creative_brief'). Either path produces the same envelope shape; only the slot-key vocabulary differs.
|
|
11467
|
+
*
|
|
11468
|
+
* Each slot value is **either** a single asset object (most slots — image, video, vast_tag, landing_page_url, etc.) **or** an array of asset objects (slots with `min`/`max` counts on the format declaration — `cards` on `image_carousel`, `headlines` / `descriptions` / `images_landscape` on `responsive_creative`, etc.). Single-vs-array shape is governed by the format's `slots[].min` and `slots[].max` parameters: when `max > 1` (or when the slot is conceptually a pool), the value MUST be an array; when the slot is single-valued, the value MUST be a single object. Each asset value (single or array element) carries an `asset_type` discriminator (image, video, audio, vast, daast, text, markdown, url, html, css, webhook, javascript, brief, catalog, zip, card) that selects the matching asset schema. Validators with OpenAPI-style discriminator support use `asset_type` to report errors against only the selected branch instead of all branches.
|
|
11469
|
+
*/
|
|
11470
|
+
assets: {
|
|
11471
|
+
/**
|
|
11472
|
+
* This interface was referenced by `undefined`'s JSON-Schema definition
|
|
11473
|
+
* via the `patternProperty` "^[a-z0-9_]+$".
|
|
11474
|
+
*/
|
|
11475
|
+
[k: string]: AssetVariant | AssetVariant[];
|
|
11476
|
+
};
|
|
11477
|
+
brand?: BrandReference;
|
|
11478
|
+
/**
|
|
11479
|
+
* Rights constraints attached to this creative. Each entry represents constraints from a single rights holder. A creative may combine multiple rights constraints (e.g., talent likeness + music license). For v1, rights constraints are informational metadata — the buyer/orchestrator manages creative lifecycle against these terms.
|
|
11480
|
+
*/
|
|
11481
|
+
rights?: RightsConstraint[];
|
|
11482
|
+
/**
|
|
11483
|
+
* Industry-standard identifiers for this specific manifest (e.g., Ad-ID, ISCI, Clearcast clock number). When present, overrides creative-level identifiers. Use when different format versions of the same source creative have distinct Ad-IDs (e.g., the :15 and :30 cuts).
|
|
11484
|
+
*/
|
|
11485
|
+
industry_identifiers?: IndustryIdentifier[];
|
|
11486
|
+
provenance?: Provenance;
|
|
11487
|
+
ext?: ExtensionObject;
|
|
11488
|
+
}
|
|
11473
11489
|
/**
|
|
11474
11490
|
* Response payload for build_creative. Exactly one of four shapes: (1) synchronous single-format success — creative_manifest issued in-line (target_format_id request); (2) synchronous multi-format success — creative_manifests issued in-line (target_format_ids request); (3) terminal failure — an errors array; (4) submitted task envelope — status 'submitted' with task_id when the build is queued (e.g., slow generative or multi-minute LLM pipeline). The submitted branch MAY carry advisory errors for non-blocking warnings; terminal failures belong in the error branch. These four shapes are mutually exclusive — a response has exactly one.
|
|
11475
11491
|
*/
|
|
@@ -19584,13 +19600,45 @@ export interface SyncAccountsRequest {
|
|
|
19584
19600
|
* Provisioning-mode entry — natural-key trio is required, `account` is forbidden.
|
|
19585
19601
|
*/
|
|
19586
19602
|
export interface ProvisioningMode {
|
|
19587
|
-
|
|
19603
|
+
brand: BrandReference;
|
|
19604
|
+
/**
|
|
19605
|
+
* Domain of the entity operating on the brand's behalf (e.g., 'pinnacle-media.com'). When the brand operates directly, this is the brand's domain. Verified against the brand's authorized_operators in brand.json. Required for **provisioning mode**; MUST be absent in settings-update mode.
|
|
19606
|
+
* @pattern ^[a-z0-9]([a-z0-9-]*[a-z0-9])?(\.[a-z0-9]([a-z0-9-]*[a-z0-9])?)*$
|
|
19607
|
+
*/
|
|
19608
|
+
operator: string;
|
|
19609
|
+
billing: BillingParty;
|
|
19610
|
+
billing_entity?: BusinessEntity;
|
|
19611
|
+
payment_terms?: PaymentTerms;
|
|
19612
|
+
/**
|
|
19613
|
+
* When true, provision this as a sandbox account with no real platform calls or billing. Only applicable to implicit accounts (require_operator_auth: false) in provisioning mode. For explicit accounts, sandbox accounts are pre-existing test accounts discovered via list_accounts.
|
|
19614
|
+
*/
|
|
19615
|
+
sandbox?: boolean;
|
|
19616
|
+
preferred_reporting_protocol?: CloudStorageProtocol;
|
|
19617
|
+
/**
|
|
19618
|
+
* Account-level webhook subscriptions for notifications whose lifecycle outlives any single media buy (`creative.status_changed`, `creative.purged`, wholesale feed change payloads, future account-scoped events). Declarative replace semantics: the buyer sends the full desired array; the seller diffs against persisted state. Omit this field to leave existing subscribers unchanged; send `[]` to remove all subscribers. Permitted in both provisioning and settings-update modes. Each entry registers a URL, the event types the subscriber wants, and optional legacy auth — see [`notification-config.json`](/schemas/core/notification-config.json). The seller MUST echo applied state on the response and on `list_accounts` reads, with `authentication.credentials` omitted (write-only). Sellers MUST reject entries whose `event_types` include any type whose contract anchors at a media buy or below (today: `scheduled`, `final`, `delayed`, `adjusted`, `impairment`) as per-account validation failures with `INVALID_REQUEST` or `VALIDATION_ERROR` and `error.field` pointing at the invalid `event_types` entry — those events belong on a media buy's `push_notification_config`. Wholesale feed webhook registrations carry the actual change payload in `/schemas/core/wholesale-feed-webhook.json`; receivers use `get_products` / `get_signals` with `if_wholesale_feed_version` to repair or reconcile. This is distinct from sync_catalogs, which manages buyer-provided campaign input feeds on a seller account.
|
|
19619
|
+
*
|
|
19620
|
+
* **Cap rationale:** `maxItems: 16` is a practical fan-out cap (governance + buyer ingestion + audit bus + dx team + a few partner hooks). The cap exists to prevent unbounded subscriber arrays in storage and to bound the seller's per-event fan-out work. Sellers that hit the cap with legitimate subscribers should surface this on the protocol roadmap rather than work around it.
|
|
19621
|
+
*/
|
|
19622
|
+
notification_configs?: NotificationConfig[];
|
|
19588
19623
|
}
|
|
19589
19624
|
/**
|
|
19590
19625
|
* Settings-update entry — `account` (AccountRef) is required, provisioning trio fields are forbidden.
|
|
19591
19626
|
*/
|
|
19592
19627
|
export interface SettingsUpdateMode {
|
|
19593
|
-
|
|
19628
|
+
account: AccountReference;
|
|
19629
|
+
billing_entity?: BusinessEntity;
|
|
19630
|
+
payment_terms?: PaymentTerms;
|
|
19631
|
+
/**
|
|
19632
|
+
* When true, provision this as a sandbox account with no real platform calls or billing. Only applicable to implicit accounts (require_operator_auth: false) in provisioning mode. For explicit accounts, sandbox accounts are pre-existing test accounts discovered via list_accounts.
|
|
19633
|
+
*/
|
|
19634
|
+
sandbox?: boolean;
|
|
19635
|
+
preferred_reporting_protocol?: CloudStorageProtocol;
|
|
19636
|
+
/**
|
|
19637
|
+
* Account-level webhook subscriptions for notifications whose lifecycle outlives any single media buy (`creative.status_changed`, `creative.purged`, wholesale feed change payloads, future account-scoped events). Declarative replace semantics: the buyer sends the full desired array; the seller diffs against persisted state. Omit this field to leave existing subscribers unchanged; send `[]` to remove all subscribers. Permitted in both provisioning and settings-update modes. Each entry registers a URL, the event types the subscriber wants, and optional legacy auth — see [`notification-config.json`](/schemas/core/notification-config.json). The seller MUST echo applied state on the response and on `list_accounts` reads, with `authentication.credentials` omitted (write-only). Sellers MUST reject entries whose `event_types` include any type whose contract anchors at a media buy or below (today: `scheduled`, `final`, `delayed`, `adjusted`, `impairment`) as per-account validation failures with `INVALID_REQUEST` or `VALIDATION_ERROR` and `error.field` pointing at the invalid `event_types` entry — those events belong on a media buy's `push_notification_config`. Wholesale feed webhook registrations carry the actual change payload in `/schemas/core/wholesale-feed-webhook.json`; receivers use `get_products` / `get_signals` with `if_wholesale_feed_version` to repair or reconcile. This is distinct from sync_catalogs, which manages buyer-provided campaign input feeds on a seller account.
|
|
19638
|
+
*
|
|
19639
|
+
* **Cap rationale:** `maxItems: 16` is a practical fan-out cap (governance + buyer ingestion + audit bus + dx team + a few partner hooks). The cap exists to prevent unbounded subscriber arrays in storage and to bound the seller's per-event fan-out work. Sellers that hit the cap with legitimate subscribers should surface this on the protocol roadmap rather than work around it.
|
|
19640
|
+
*/
|
|
19641
|
+
notification_configs?: NotificationConfig[];
|
|
19594
19642
|
}
|
|
19595
19643
|
/**
|
|
19596
19644
|
* Response from account sync operation. Returns per-account results with status and billing, or operation-level errors on complete failure.
|