@adcp/client 3.15.0 → 3.17.0
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/bin/adcp-registry.js +736 -0
- package/bin/adcp.js +38 -2
- package/dist/lib/adapters/property-list-adapter.js +2 -2
- package/dist/lib/adapters/property-list-adapter.js.map +1 -1
- package/dist/lib/adapters/proposal-manager.d.ts +3 -3
- package/dist/lib/adapters/proposal-manager.d.ts.map +1 -1
- package/dist/lib/adapters/proposal-manager.js.map +1 -1
- package/dist/lib/agents/index.generated.d.ts +9 -1
- package/dist/lib/agents/index.generated.d.ts.map +1 -1
- package/dist/lib/agents/index.generated.js +12 -0
- package/dist/lib/agents/index.generated.js.map +1 -1
- package/dist/lib/core/TaskExecutor.d.ts.map +1 -1
- package/dist/lib/core/TaskExecutor.js +3 -2
- package/dist/lib/core/TaskExecutor.js.map +1 -1
- package/dist/lib/index.d.ts +4 -2
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +6 -4
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/protocols/mcp.d.ts.map +1 -1
- package/dist/lib/protocols/mcp.js +49 -20
- package/dist/lib/protocols/mcp.js.map +1 -1
- package/dist/lib/registry/index.d.ts +97 -31
- package/dist/lib/registry/index.d.ts.map +1 -1
- package/dist/lib/registry/index.js +228 -61
- package/dist/lib/registry/index.js.map +1 -1
- package/dist/lib/registry/types.d.ts +41 -57
- package/dist/lib/registry/types.d.ts.map +1 -1
- package/dist/lib/registry/types.generated.d.ts +1860 -0
- package/dist/lib/registry/types.generated.d.ts.map +1 -0
- package/dist/lib/registry/types.generated.js +8 -0
- package/dist/lib/registry/types.generated.js.map +1 -0
- package/dist/lib/registry/types.js +6 -0
- package/dist/lib/registry/types.js.map +1 -1
- package/dist/lib/testing/client.d.ts +6 -0
- package/dist/lib/testing/client.d.ts.map +1 -1
- package/dist/lib/testing/client.js +13 -5
- package/dist/lib/testing/client.js.map +1 -1
- package/dist/lib/testing/scenarios/index.d.ts +1 -1
- package/dist/lib/testing/scenarios/index.d.ts.map +1 -1
- package/dist/lib/testing/scenarios/index.js +2 -1
- package/dist/lib/testing/scenarios/index.js.map +1 -1
- package/dist/lib/testing/scenarios/media-buy.d.ts +8 -0
- package/dist/lib/testing/scenarios/media-buy.d.ts.map +1 -1
- package/dist/lib/testing/scenarios/media-buy.js +127 -12
- package/dist/lib/testing/scenarios/media-buy.js.map +1 -1
- package/dist/lib/testing/types.d.ts +6 -1
- package/dist/lib/testing/types.d.ts.map +1 -1
- package/dist/lib/types/compat.d.ts +60 -0
- package/dist/lib/types/compat.d.ts.map +1 -0
- package/dist/lib/types/compat.js +29 -0
- package/dist/lib/types/compat.js.map +1 -0
- package/dist/lib/types/core.generated.d.ts +29 -322
- 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 +225 -1296
- package/dist/lib/types/schemas.generated.d.ts.map +1 -1
- package/dist/lib/types/schemas.generated.js +89 -106
- package/dist/lib/types/schemas.generated.js.map +1 -1
- package/dist/lib/types/tools.generated.d.ts +246 -339
- package/dist/lib/types/tools.generated.d.ts.map +1 -1
- package/dist/lib/utils/capabilities.d.ts +3 -1
- package/dist/lib/utils/capabilities.d.ts.map +1 -1
- package/dist/lib/utils/capabilities.js +4 -0
- package/dist/lib/utils/capabilities.js.map +1 -1
- package/package.json +8 -4
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Backwards compatibility types for the BrandManifest -> BrandReference migration.
|
|
3
|
+
*
|
|
4
|
+
* BrandManifest (inline brand data) was replaced by BrandReference (a domain pointer
|
|
5
|
+
* to a hosted /.well-known/brand.json file). These deprecated types are kept so that
|
|
6
|
+
* existing callers don't break on upgrade.
|
|
7
|
+
*
|
|
8
|
+
* @deprecated Use BrandReference from the main package instead.
|
|
9
|
+
*/
|
|
10
|
+
import type { BrandReference } from './tools.generated';
|
|
11
|
+
/**
|
|
12
|
+
* @deprecated Use BrandReference instead. Inline brand data is no longer part of
|
|
13
|
+
* the AdCP protocol. Host your brand data at /.well-known/brand.json and pass
|
|
14
|
+
* a BrandReference with the domain field.
|
|
15
|
+
*/
|
|
16
|
+
export interface BrandManifest {
|
|
17
|
+
name: string;
|
|
18
|
+
url?: string;
|
|
19
|
+
tagline?: string;
|
|
20
|
+
logos?: Array<{
|
|
21
|
+
url: string;
|
|
22
|
+
orientation?: 'square' | 'horizontal' | 'vertical' | 'stacked';
|
|
23
|
+
background?: 'dark-bg' | 'light-bg' | 'transparent-bg';
|
|
24
|
+
variant?: 'primary' | 'secondary' | 'icon' | 'wordmark' | 'full-lockup';
|
|
25
|
+
tags?: string[];
|
|
26
|
+
usage?: string;
|
|
27
|
+
width?: number;
|
|
28
|
+
height?: number;
|
|
29
|
+
}>;
|
|
30
|
+
colors?: Record<string, string>;
|
|
31
|
+
tone?: {
|
|
32
|
+
voice?: string;
|
|
33
|
+
attributes?: string[];
|
|
34
|
+
dos?: string[];
|
|
35
|
+
donts?: string[];
|
|
36
|
+
};
|
|
37
|
+
assets?: Array<{
|
|
38
|
+
asset_id: string;
|
|
39
|
+
asset_type: string;
|
|
40
|
+
url: string;
|
|
41
|
+
width?: number;
|
|
42
|
+
height?: number;
|
|
43
|
+
tags?: string[];
|
|
44
|
+
}>;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* @deprecated Use BrandReference instead.
|
|
48
|
+
*/
|
|
49
|
+
export type BrandManifestReference = BrandManifest | string;
|
|
50
|
+
/**
|
|
51
|
+
* @deprecated Only used with the deprecated BrandManifest type.
|
|
52
|
+
*/
|
|
53
|
+
export type AssetContentType = string;
|
|
54
|
+
/**
|
|
55
|
+
* Convert a deprecated BrandManifestReference to the new BrandReference.
|
|
56
|
+
* Extracts the domain from the manifest URL when available.
|
|
57
|
+
* Returns undefined if no URL is present (name-only manifests cannot be converted).
|
|
58
|
+
*/
|
|
59
|
+
export declare function brandManifestToBrandReference(manifest: BrandManifestReference): BrandReference | undefined;
|
|
60
|
+
//# sourceMappingURL=compat.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compat.d.ts","sourceRoot":"","sources":["../../../src/lib/types/compat.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,WAAW,CAAC,EAAE,QAAQ,GAAG,YAAY,GAAG,UAAU,GAAG,SAAS,CAAC;QAC/D,UAAU,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,gBAAgB,CAAC;QACvD,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,aAAa,CAAC;QACxE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE;QACL,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;KAClB,CAAC;IACF,MAAM,CAAC,EAAE,KAAK,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;KACjB,CAAC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,aAAa,GAAG,MAAM,CAAC;AAE5D;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEtC;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,sBAAsB,GAAG,cAAc,GAAG,SAAS,CAQ1G"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Backwards compatibility types for the BrandManifest -> BrandReference migration.
|
|
4
|
+
*
|
|
5
|
+
* BrandManifest (inline brand data) was replaced by BrandReference (a domain pointer
|
|
6
|
+
* to a hosted /.well-known/brand.json file). These deprecated types are kept so that
|
|
7
|
+
* existing callers don't break on upgrade.
|
|
8
|
+
*
|
|
9
|
+
* @deprecated Use BrandReference from the main package instead.
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.brandManifestToBrandReference = brandManifestToBrandReference;
|
|
13
|
+
/**
|
|
14
|
+
* Convert a deprecated BrandManifestReference to the new BrandReference.
|
|
15
|
+
* Extracts the domain from the manifest URL when available.
|
|
16
|
+
* Returns undefined if no URL is present (name-only manifests cannot be converted).
|
|
17
|
+
*/
|
|
18
|
+
function brandManifestToBrandReference(manifest) {
|
|
19
|
+
const url = typeof manifest === 'string' ? manifest : manifest.url;
|
|
20
|
+
if (!url)
|
|
21
|
+
return undefined;
|
|
22
|
+
try {
|
|
23
|
+
return { domain: new URL(url).hostname };
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
return undefined;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=compat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compat.js","sourceRoot":"","sources":["../../../src/lib/types/compat.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;AAuDH,sEAQC;AAbD;;;;GAIG;AACH,SAAgB,6BAA6B,CAAC,QAAgC;IAC5E,MAAM,GAAG,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;IACnE,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,IAAI,CAAC;QACH,OAAO,EAAE,MAAM,EAAE,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
|
|
@@ -334,6 +334,18 @@ export interface TargetingOverlay {
|
|
|
334
334
|
* AXE segment ID to exclude from targeting
|
|
335
335
|
*/
|
|
336
336
|
axe_exclude_segment?: string;
|
|
337
|
+
/**
|
|
338
|
+
* Restrict delivery to members of these first-party CRM audiences. Only users present in the uploaded lists are eligible. References audience_id values from sync_audiences on the same seller account — audience IDs are not portable across sellers. Not for lookalike expansion — express that intent in the campaign brief. Seller must declare support in get_adcp_capabilities.
|
|
339
|
+
*
|
|
340
|
+
* @minItems 1
|
|
341
|
+
*/
|
|
342
|
+
audience_include?: [string, ...string[]];
|
|
343
|
+
/**
|
|
344
|
+
* Suppress delivery to members of these first-party CRM audiences. Matched users are excluded regardless of other targeting. References audience_id values from sync_audiences on the same seller account — audience IDs are not portable across sellers. Seller must declare support in get_adcp_capabilities.
|
|
345
|
+
*
|
|
346
|
+
* @minItems 1
|
|
347
|
+
*/
|
|
348
|
+
audience_exclude?: [string, ...string[]];
|
|
337
349
|
frequency_cap?: FrequencyCap;
|
|
338
350
|
property_list?: PropertyListReference;
|
|
339
351
|
/**
|
|
@@ -651,13 +663,9 @@ export type DAASTTrackingEvent = 'start' | 'firstQuartile' | 'midpoint' | 'third
|
|
|
651
663
|
*/
|
|
652
664
|
export type DAASTVersion1 = '1.0' | '1.1';
|
|
653
665
|
/**
|
|
654
|
-
* Brand
|
|
666
|
+
* Brand identifier within the house portfolio. Optional for single-brand domains.
|
|
655
667
|
*/
|
|
656
|
-
export type
|
|
657
|
-
/**
|
|
658
|
-
* Type of asset. Note: Brand manifests typically contain basic media assets (image, video, audio, text). Code assets (html, javascript, css) and ad markup (vast, daast) are usually not part of brand asset libraries.
|
|
659
|
-
*/
|
|
660
|
-
export type AssetContentType = 'image' | 'video' | 'audio' | 'text' | 'markdown' | 'html' | 'css' | 'javascript' | 'vast' | 'daast' | 'promoted_offerings' | 'url' | 'webhook';
|
|
668
|
+
export type BrandID = string;
|
|
661
669
|
/**
|
|
662
670
|
* Type of URL asset: 'clickthrough' for user click destination (landing page), 'tracker_pixel' for impression/event tracking via HTTP request (fires GET, expects pixel/204 response), 'tracker_script' for measurement SDKs that must load as <script> tag (OMID verification, native event trackers using method:2)
|
|
663
671
|
*/
|
|
@@ -1020,10 +1028,10 @@ export interface JavaScriptAsset {
|
|
|
1020
1028
|
[k: string]: unknown | undefined;
|
|
1021
1029
|
}
|
|
1022
1030
|
/**
|
|
1023
|
-
* Complete offering specification combining brand
|
|
1031
|
+
* Complete offering specification combining brand reference, product selectors, and optional SI agent endpoint. Provides all context needed for creative generation and/or conversational experiences about what is being promoted. When si_agent_url is present, hosts can connect users to conversational experiences about any of the offerings.
|
|
1024
1032
|
*/
|
|
1025
1033
|
export interface PromotedOfferings {
|
|
1026
|
-
|
|
1034
|
+
brand: BrandReference;
|
|
1027
1035
|
/**
|
|
1028
1036
|
* MCP endpoint URL for the brand's SI agent. When present, hosts can connect users to conversational experiences about any of the offerings. The agent handles si_get_offering lookups and full conversations.
|
|
1029
1037
|
*/
|
|
@@ -1034,7 +1042,7 @@ export interface PromotedOfferings {
|
|
|
1034
1042
|
*/
|
|
1035
1043
|
offerings?: Offering[];
|
|
1036
1044
|
/**
|
|
1037
|
-
* Selectors to choose specific assets from the brand
|
|
1045
|
+
* Selectors to choose specific assets from the brand's asset library
|
|
1038
1046
|
*/
|
|
1039
1047
|
asset_selectors?: {
|
|
1040
1048
|
/**
|
|
@@ -1054,318 +1062,17 @@ export interface PromotedOfferings {
|
|
|
1054
1062
|
[k: string]: unknown | undefined;
|
|
1055
1063
|
}
|
|
1056
1064
|
/**
|
|
1057
|
-
*
|
|
1065
|
+
* Brand reference. Resolved to full brand identity (logos, colors, tone, assets) at execution time for creative generation.
|
|
1058
1066
|
*/
|
|
1059
|
-
export interface
|
|
1060
|
-
/**
|
|
1061
|
-
* Primary brand URL for context and asset discovery. Creative agents can infer brand information from this URL.
|
|
1062
|
-
*/
|
|
1063
|
-
url?: string;
|
|
1064
|
-
/**
|
|
1065
|
-
* URL to the brand's privacy policy. Used for consumer consent flows when personal data may be shared with the advertiser. AI platforms can use this to present explicit privacy choices to users before data handoff.
|
|
1066
|
-
*/
|
|
1067
|
-
privacy_policy_url?: string;
|
|
1068
|
-
/**
|
|
1069
|
-
* Brand or business name
|
|
1070
|
-
*/
|
|
1071
|
-
name: string;
|
|
1072
|
-
/**
|
|
1073
|
-
* Brand logo assets with structured fields for orientation, background compatibility, and variant type. Use the orientation, background, and variant enum fields for reliable filtering by creative agents.
|
|
1074
|
-
*/
|
|
1075
|
-
logos?: {
|
|
1076
|
-
/**
|
|
1077
|
-
* URL to the logo asset
|
|
1078
|
-
*/
|
|
1079
|
-
url: string;
|
|
1080
|
-
/**
|
|
1081
|
-
* Logo aspect ratio orientation. square: ~1:1, horizontal: wide, vertical: tall, stacked: vertically arranged elements
|
|
1082
|
-
*/
|
|
1083
|
-
orientation?: 'square' | 'horizontal' | 'vertical' | 'stacked';
|
|
1084
|
-
/**
|
|
1085
|
-
* Background compatibility. dark-bg: use on dark backgrounds, light-bg: use on light backgrounds, transparent-bg: has transparent background
|
|
1086
|
-
*/
|
|
1087
|
-
background?: 'dark-bg' | 'light-bg' | 'transparent-bg';
|
|
1088
|
-
/**
|
|
1089
|
-
* Logo variant type. primary: main logo, secondary: alternative, icon: symbol only, wordmark: text only, full-lockup: complete logo
|
|
1090
|
-
*/
|
|
1091
|
-
variant?: 'primary' | 'secondary' | 'icon' | 'wordmark' | 'full-lockup';
|
|
1092
|
-
/**
|
|
1093
|
-
* Additional semantic tags for custom categorization beyond the standard orientation, background, and variant fields.
|
|
1094
|
-
*/
|
|
1095
|
-
tags?: string[];
|
|
1096
|
-
/**
|
|
1097
|
-
* Human-readable description of when to use this logo variant (e.g., 'Primary logo for use on light backgrounds', 'Icon-only variant for small formats')
|
|
1098
|
-
*/
|
|
1099
|
-
usage?: string;
|
|
1100
|
-
/**
|
|
1101
|
-
* Logo width in pixels
|
|
1102
|
-
*/
|
|
1103
|
-
width?: number;
|
|
1104
|
-
/**
|
|
1105
|
-
* Logo height in pixels
|
|
1106
|
-
*/
|
|
1107
|
-
height?: number;
|
|
1108
|
-
}[];
|
|
1109
|
-
/**
|
|
1110
|
-
* Brand color palette. Each role accepts a single hex color or an array of hex colors for brands with multiple values per role.
|
|
1111
|
-
*/
|
|
1112
|
-
colors?: {
|
|
1113
|
-
/**
|
|
1114
|
-
* Primary brand color(s)
|
|
1115
|
-
*/
|
|
1116
|
-
primary?: string | [string, ...string[]];
|
|
1117
|
-
/**
|
|
1118
|
-
* Secondary brand color(s)
|
|
1119
|
-
*/
|
|
1120
|
-
secondary?: string | [string, ...string[]];
|
|
1121
|
-
/**
|
|
1122
|
-
* Accent color(s)
|
|
1123
|
-
*/
|
|
1124
|
-
accent?: string | [string, ...string[]];
|
|
1125
|
-
/**
|
|
1126
|
-
* Background color(s)
|
|
1127
|
-
*/
|
|
1128
|
-
background?: string | [string, ...string[]];
|
|
1129
|
-
/**
|
|
1130
|
-
* Text color(s)
|
|
1131
|
-
*/
|
|
1132
|
-
text?: string | [string, ...string[]];
|
|
1133
|
-
};
|
|
1134
|
-
/**
|
|
1135
|
-
* Brand typography guidelines
|
|
1136
|
-
*/
|
|
1137
|
-
fonts?: {
|
|
1138
|
-
/**
|
|
1139
|
-
* Primary font family name
|
|
1140
|
-
*/
|
|
1141
|
-
primary?: string;
|
|
1142
|
-
/**
|
|
1143
|
-
* Secondary font family name
|
|
1144
|
-
*/
|
|
1145
|
-
secondary?: string;
|
|
1146
|
-
/**
|
|
1147
|
-
* URLs to web font files if using custom fonts
|
|
1148
|
-
*/
|
|
1149
|
-
font_urls?: string[];
|
|
1150
|
-
};
|
|
1151
|
-
/**
|
|
1152
|
-
* Brand voice and messaging tone guidelines for creative agents.
|
|
1153
|
-
*/
|
|
1154
|
-
tone?: string | {
|
|
1155
|
-
/**
|
|
1156
|
-
* High-level voice descriptor (e.g., 'warm and inviting', 'professional and trustworthy')
|
|
1157
|
-
*/
|
|
1158
|
-
voice?: string;
|
|
1159
|
-
/**
|
|
1160
|
-
* Personality traits that characterize the brand voice
|
|
1161
|
-
*/
|
|
1162
|
-
attributes?: string[];
|
|
1163
|
-
/**
|
|
1164
|
-
* Specific guidance for copy generation - what TO do
|
|
1165
|
-
*/
|
|
1166
|
-
dos?: string[];
|
|
1167
|
-
/**
|
|
1168
|
-
* Guardrails to avoid brand violations - what NOT to do
|
|
1169
|
-
*/
|
|
1170
|
-
donts?: string[];
|
|
1171
|
-
};
|
|
1172
|
-
/**
|
|
1173
|
-
* Brand voice configuration for audio/conversational experiences
|
|
1174
|
-
*/
|
|
1175
|
-
voice?: {
|
|
1176
|
-
/**
|
|
1177
|
-
* TTS provider (e.g., 'elevenlabs', 'openai', 'amazon_polly')
|
|
1178
|
-
*/
|
|
1179
|
-
provider?: string;
|
|
1180
|
-
/**
|
|
1181
|
-
* Provider-specific voice identifier
|
|
1182
|
-
*/
|
|
1183
|
-
voice_id?: string;
|
|
1184
|
-
/**
|
|
1185
|
-
* Provider-specific voice settings (speed, pitch, etc.)
|
|
1186
|
-
*/
|
|
1187
|
-
settings?: {
|
|
1188
|
-
[k: string]: unknown | undefined;
|
|
1189
|
-
};
|
|
1190
|
-
};
|
|
1191
|
-
/**
|
|
1192
|
-
* Brand avatar configuration for visual conversational experiences
|
|
1193
|
-
*/
|
|
1194
|
-
avatar?: {
|
|
1195
|
-
/**
|
|
1196
|
-
* Avatar provider (e.g., 'd-id', 'heygen', 'synthesia')
|
|
1197
|
-
*/
|
|
1198
|
-
provider?: string;
|
|
1199
|
-
/**
|
|
1200
|
-
* Provider-specific avatar identifier
|
|
1201
|
-
*/
|
|
1202
|
-
avatar_id?: string;
|
|
1203
|
-
/**
|
|
1204
|
-
* Provider-specific avatar settings
|
|
1205
|
-
*/
|
|
1206
|
-
settings?: {
|
|
1207
|
-
[k: string]: unknown | undefined;
|
|
1208
|
-
};
|
|
1209
|
-
};
|
|
1210
|
-
/**
|
|
1211
|
-
* Brand tagline or slogan
|
|
1212
|
-
*/
|
|
1213
|
-
tagline?: string;
|
|
1214
|
-
/**
|
|
1215
|
-
* Brand asset library with explicit assets and tags. Assets are referenced inline with URLs pointing to CDN-hosted files.
|
|
1216
|
-
*/
|
|
1217
|
-
assets?: {
|
|
1218
|
-
/**
|
|
1219
|
-
* Unique identifier for this asset
|
|
1220
|
-
*/
|
|
1221
|
-
asset_id: string;
|
|
1222
|
-
asset_type: AssetContentType;
|
|
1223
|
-
/**
|
|
1224
|
-
* URL to CDN-hosted asset file
|
|
1225
|
-
*/
|
|
1226
|
-
url: string;
|
|
1227
|
-
/**
|
|
1228
|
-
* Tags for asset discovery (e.g., 'holiday', 'lifestyle', 'product_shot')
|
|
1229
|
-
*/
|
|
1230
|
-
tags?: string[];
|
|
1231
|
-
/**
|
|
1232
|
-
* Human-readable asset name
|
|
1233
|
-
*/
|
|
1234
|
-
name?: string;
|
|
1235
|
-
/**
|
|
1236
|
-
* Asset description or usage notes
|
|
1237
|
-
*/
|
|
1238
|
-
description?: string;
|
|
1239
|
-
/**
|
|
1240
|
-
* Image/video width in pixels
|
|
1241
|
-
*/
|
|
1242
|
-
width?: number;
|
|
1243
|
-
/**
|
|
1244
|
-
* Image/video height in pixels
|
|
1245
|
-
*/
|
|
1246
|
-
height?: number;
|
|
1247
|
-
/**
|
|
1248
|
-
* Video/audio duration in seconds
|
|
1249
|
-
*/
|
|
1250
|
-
duration_seconds?: number;
|
|
1251
|
-
/**
|
|
1252
|
-
* File size in bytes
|
|
1253
|
-
*/
|
|
1254
|
-
file_size_bytes?: number;
|
|
1255
|
-
/**
|
|
1256
|
-
* File format (e.g., 'jpg', 'mp4', 'mp3')
|
|
1257
|
-
*/
|
|
1258
|
-
format?: string;
|
|
1259
|
-
/**
|
|
1260
|
-
* Additional asset-specific metadata
|
|
1261
|
-
*/
|
|
1262
|
-
metadata?: {
|
|
1263
|
-
[k: string]: unknown | undefined;
|
|
1264
|
-
};
|
|
1265
|
-
[k: string]: unknown | undefined;
|
|
1266
|
-
}[];
|
|
1267
|
-
/**
|
|
1268
|
-
* Product catalog information for e-commerce advertisers. Enables SKU-level creative generation and product selection.
|
|
1269
|
-
*/
|
|
1270
|
-
product_catalog?: {
|
|
1271
|
-
/**
|
|
1272
|
-
* URL to product catalog feed
|
|
1273
|
-
*/
|
|
1274
|
-
feed_url: string;
|
|
1275
|
-
/**
|
|
1276
|
-
* Format of the product feed. Use 'openai_product_feed' for feeds conforming to the OpenAI Commerce Product Feed specification.
|
|
1277
|
-
*/
|
|
1278
|
-
feed_format?: 'google_merchant_center' | 'facebook_catalog' | 'openai_product_feed' | 'custom';
|
|
1279
|
-
/**
|
|
1280
|
-
* Product categories available in the catalog (for filtering)
|
|
1281
|
-
*/
|
|
1282
|
-
categories?: string[];
|
|
1283
|
-
/**
|
|
1284
|
-
* When the product catalog was last updated
|
|
1285
|
-
*/
|
|
1286
|
-
last_updated?: string;
|
|
1287
|
-
/**
|
|
1288
|
-
* How frequently the product catalog is updated
|
|
1289
|
-
*/
|
|
1290
|
-
update_frequency?: 'realtime' | 'hourly' | 'daily' | 'weekly';
|
|
1291
|
-
/**
|
|
1292
|
-
* Agentic checkout endpoint configuration. Enables AI agents to complete purchases on behalf of users through a structured checkout API.
|
|
1293
|
-
*/
|
|
1294
|
-
agentic_checkout?: {
|
|
1295
|
-
/**
|
|
1296
|
-
* Base URL for checkout session API (e.g., https://merchant.com/api/checkout_sessions)
|
|
1297
|
-
*/
|
|
1298
|
-
endpoint: string;
|
|
1299
|
-
/**
|
|
1300
|
-
* Checkout API specification implemented by the endpoint
|
|
1301
|
-
*/
|
|
1302
|
-
spec: 'openai_agentic_checkout_v1';
|
|
1303
|
-
/**
|
|
1304
|
-
* Payment providers supported by this checkout endpoint
|
|
1305
|
-
*/
|
|
1306
|
-
supported_payment_providers?: string[];
|
|
1307
|
-
};
|
|
1308
|
-
[k: string]: unknown | undefined;
|
|
1309
|
-
};
|
|
1310
|
-
/**
|
|
1311
|
-
* Legal disclaimers or required text that must appear in creatives
|
|
1312
|
-
*/
|
|
1313
|
-
disclaimers?: {
|
|
1314
|
-
/**
|
|
1315
|
-
* Disclaimer text
|
|
1316
|
-
*/
|
|
1317
|
-
text: string;
|
|
1318
|
-
/**
|
|
1319
|
-
* When this disclaimer applies (e.g., 'financial_products', 'health_claims', 'all')
|
|
1320
|
-
*/
|
|
1321
|
-
context?: string;
|
|
1322
|
-
/**
|
|
1323
|
-
* Whether this disclaimer must appear
|
|
1324
|
-
*/
|
|
1325
|
-
required?: boolean;
|
|
1326
|
-
}[];
|
|
1327
|
-
/**
|
|
1328
|
-
* Industry or vertical (e.g., 'retail', 'automotive', 'finance', 'healthcare')
|
|
1329
|
-
*/
|
|
1330
|
-
industry?: string;
|
|
1331
|
-
/**
|
|
1332
|
-
* Primary target audience description
|
|
1333
|
-
*/
|
|
1334
|
-
target_audience?: string;
|
|
1335
|
-
/**
|
|
1336
|
-
* Brand contact information
|
|
1337
|
-
*/
|
|
1338
|
-
contact?: {
|
|
1339
|
-
/**
|
|
1340
|
-
* Contact email
|
|
1341
|
-
*/
|
|
1342
|
-
email?: string;
|
|
1343
|
-
/**
|
|
1344
|
-
* Contact phone number
|
|
1345
|
-
*/
|
|
1346
|
-
phone?: string;
|
|
1347
|
-
};
|
|
1067
|
+
export interface BrandReference {
|
|
1348
1068
|
/**
|
|
1349
|
-
*
|
|
1069
|
+
* Domain where /.well-known/brand.json is hosted, or the brand's operating domain
|
|
1350
1070
|
*/
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
* When this brand manifest was created
|
|
1354
|
-
*/
|
|
1355
|
-
created_date?: string;
|
|
1356
|
-
/**
|
|
1357
|
-
* When this brand manifest was last updated
|
|
1358
|
-
*/
|
|
1359
|
-
updated_date?: string;
|
|
1360
|
-
/**
|
|
1361
|
-
* Brand card version number
|
|
1362
|
-
*/
|
|
1363
|
-
version?: string;
|
|
1364
|
-
};
|
|
1365
|
-
[k: string]: unknown | undefined;
|
|
1071
|
+
domain: string;
|
|
1072
|
+
brand_id?: BrandID;
|
|
1366
1073
|
}
|
|
1367
1074
|
/**
|
|
1368
|
-
* Selectors to choose which products/offerings from the brand
|
|
1075
|
+
* Selectors to choose which products/offerings from the brand's product catalog to promote
|
|
1369
1076
|
*/
|
|
1370
1077
|
export interface PromotedProducts {
|
|
1371
1078
|
/**
|
|
@@ -1373,19 +1080,19 @@ export interface PromotedProducts {
|
|
|
1373
1080
|
*/
|
|
1374
1081
|
manifest_gtins?: string[];
|
|
1375
1082
|
/**
|
|
1376
|
-
* Direct product SKU references from the brand
|
|
1083
|
+
* Direct product SKU references from the brand's product catalog
|
|
1377
1084
|
*/
|
|
1378
1085
|
manifest_skus?: string[];
|
|
1379
1086
|
/**
|
|
1380
|
-
* Select products by tags from the brand
|
|
1087
|
+
* Select products by tags from the brand's product catalog (e.g., 'organic', 'sauces', 'holiday')
|
|
1381
1088
|
*/
|
|
1382
1089
|
manifest_tags?: string[];
|
|
1383
1090
|
/**
|
|
1384
|
-
* Select products from a specific category in the brand
|
|
1091
|
+
* Select products from a specific category in the brand's product catalog (e.g., 'beverages/soft-drinks', 'food/sauces')
|
|
1385
1092
|
*/
|
|
1386
1093
|
manifest_category?: string;
|
|
1387
1094
|
/**
|
|
1388
|
-
* Natural language query to select products from the brand
|
|
1095
|
+
* Natural language query to select products from the brand's catalog (e.g., 'all pasta sauces', 'organic products under $20')
|
|
1389
1096
|
*/
|
|
1390
1097
|
manifest_query?: string;
|
|
1391
1098
|
[k: string]: unknown | undefined;
|
|
@@ -1702,7 +1409,7 @@ export interface Product {
|
|
|
1702
1409
|
platform_managed?: boolean;
|
|
1703
1410
|
};
|
|
1704
1411
|
/**
|
|
1705
|
-
* When the buyer provides a
|
|
1412
|
+
* When the buyer provides a brand with product_catalog, indicates which of the buyer's catalog items are eligible for this product. Enables buyers to make informed product_selector choices in create_media_buy. Only present for products where catalog matching is relevant (e.g. sponsored product listings on retail media). Sellers SHOULD include at least one of matched_gtins or matched_skus.
|
|
1706
1413
|
*/
|
|
1707
1414
|
catalog_match?: {
|
|
1708
1415
|
/**
|
|
@@ -2550,7 +2257,7 @@ export interface Property {
|
|
|
2550
2257
|
/**
|
|
2551
2258
|
* Type of AdCP operation that triggered this webhook. Enables webhook handlers to route to appropriate processing logic.
|
|
2552
2259
|
*/
|
|
2553
|
-
export type TaskType = 'create_media_buy' | 'update_media_buy' | 'sync_creatives' | 'activate_signal' | 'get_signals' | 'create_property_list' | 'update_property_list' | 'get_property_list' | 'list_property_lists' | 'delete_property_list' | 'sync_accounts' | 'get_creative_delivery' | 'sync_event_sources' | 'log_event';
|
|
2260
|
+
export type TaskType = 'create_media_buy' | 'update_media_buy' | 'sync_creatives' | 'activate_signal' | 'get_signals' | 'create_property_list' | 'update_property_list' | 'get_property_list' | 'list_property_lists' | 'delete_property_list' | 'sync_accounts' | 'get_creative_delivery' | 'sync_event_sources' | 'sync_audiences' | 'log_event';
|
|
2554
2261
|
/**
|
|
2555
2262
|
* AdCP domain this task belongs to. Helps classify the operation type at a high level.
|
|
2556
2263
|
*/
|