diff --git a/.changeset/auto-update-1763173805.md b/.changeset/auto-update-1763173805.md new file mode 100644 index 0000000..92bb89c --- /dev/null +++ b/.changeset/auto-update-1763173805.md @@ -0,0 +1,5 @@ +--- +"@scope3/agentic-client": patch +--- + +Update types from latest OpenAPI specification diff --git a/partner-api.yaml b/partner-api.yaml index f74929f..892ca6a 100644 --- a/partner-api.yaml +++ b/partner-api.yaml @@ -3325,12 +3325,18 @@ components: exclusiveMinimum: true budgetCurrency: type: string - pricingCpm: + budgetPacing: + type: string + enum: + - asap + - even + - front_loaded + bidPrice: type: number minimum: 0 exclusiveMinimum: true - pricingSignalCost: - type: number + pricingOptionId: + type: string displayOrder: type: integer minimum: -9007199254740991 @@ -3378,6 +3384,7 @@ components: required: - mediaProductId - budgetAmount + - pricingOptionId example: [] creatives: type: array @@ -3453,6 +3460,26 @@ components: items: type: string example: [] + products: + type: array + items: + type: object + properties: + productId: + type: string + budgetAmount: + type: number + budgetPacing: + type: string + enum: + - even + - asap + bidPrice: + nullable: true + type: number + required: + - productId + example: [] packages: type: array items: @@ -3464,9 +3491,18 @@ components: type: array items: type: string + budgetAmount: + type: number + pacing: + type: string + enum: + - even + - asap + bidPrice: + nullable: true + type: number required: - packageId - - creativeIds example: [] required: - mediaBuyId @@ -3767,11 +3803,12 @@ components: type: object properties: type: - description: Filter by agent type (SALES or OUTCOME) + description: Filter by agent type (SALES, OUTCOME, or SIGNAL) type: string enum: - SALES - OUTCOME + - SIGNAL example: SALES status: description: Filter by status (PENDING, ACTIVE, DISABLED) @@ -3808,6 +3845,7 @@ components: enum: - SALES - OUTCOME + - SIGNAL example: SALES name: description: Agent name @@ -4469,10 +4507,6 @@ components: type: number budgetCurrency: type: string - pricingCpm: - type: number - pricingSignalCost: - type: number displayOrder: type: number creativeFormats: @@ -4542,10 +4576,6 @@ components: type: string salesAgentName: type: string - pricingCpm: - type: number - pricingSignalCost: - type: number bidPrice: type: number pricingOptionId: @@ -4594,18 +4624,6 @@ components: - mediaUrl - status example: [] - pricing: - type: object - properties: - cpm: - type: number - signalCost: - type: number - totalCpm: - type: number - required: - - cpm - - totalCpm status: type: string example: string @@ -4659,7 +4677,6 @@ components: - tacticId - customerId - name - - pricing - status - createdAt - updatedAt @@ -5167,12 +5184,269 @@ components: - agent_url - id additionalProperties: false - fixedCpm: - type: number - floorCpm: - type: number - targetCpm: - type: number + pricingOptions: + type: array + items: + anyOf: + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpm + rate: + type: number + currency: + type: string + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpm + currency: + type: string + price_guidance: + type: object + properties: + floor: + type: number + p25: + type: number + p50: + type: number + p75: + type: number + p90: + type: number + required: + - floor + additionalProperties: false + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - currency + - price_guidance + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - vcpm + rate: + type: number + currency: + type: string + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - vcpm + currency: + type: string + price_guidance: + type: object + properties: + floor: + type: number + p25: + type: number + p50: + type: number + p75: + type: number + p90: + type: number + required: + - floor + additionalProperties: false + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - currency + - price_guidance + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpc + rate: + type: number + currency: + type: string + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpcv + rate: + type: number + currency: + type: string + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpv + rate: + type: number + currency: + type: string + parameters: + type: object + properties: + view_threshold: + anyOf: + - type: number + - type: object + properties: + duration_seconds: + type: number + required: + - duration_seconds + additionalProperties: false + required: + - view_threshold + additionalProperties: false + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + - parameters + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpp + rate: + type: number + currency: + type: string + parameters: + type: object + properties: + demographic: + type: string + min_points: + type: number + required: + - demographic + additionalProperties: false + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + - parameters + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - flat_rate + rate: + type: number + currency: + type: string + is_fixed: + type: boolean + enum: + - true + parameters: + type: object + properties: + duration_hours: + type: number + sov_percentage: + type: number + loop_duration_seconds: + type: number + min_plays_per_hour: + type: number + venue_package: + type: string + estimated_impressions: + type: number + daypart: + type: string + additionalProperties: false + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + - is_fixed + additionalProperties: false required: - productId - name @@ -5283,6 +5557,269 @@ components: - agent_url - id additionalProperties: false + pricingOptions: + type: array + items: + anyOf: + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpm + rate: + type: number + currency: + type: string + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpm + currency: + type: string + price_guidance: + type: object + properties: + floor: + type: number + p25: + type: number + p50: + type: number + p75: + type: number + p90: + type: number + required: + - floor + additionalProperties: false + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - currency + - price_guidance + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - vcpm + rate: + type: number + currency: + type: string + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - vcpm + currency: + type: string + price_guidance: + type: object + properties: + floor: + type: number + p25: + type: number + p50: + type: number + p75: + type: number + p90: + type: number + required: + - floor + additionalProperties: false + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - currency + - price_guidance + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpc + rate: + type: number + currency: + type: string + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpcv + rate: + type: number + currency: + type: string + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpv + rate: + type: number + currency: + type: string + parameters: + type: object + properties: + view_threshold: + anyOf: + - type: number + - type: object + properties: + duration_seconds: + type: number + required: + - duration_seconds + additionalProperties: false + required: + - view_threshold + additionalProperties: false + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + - parameters + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpp + rate: + type: number + currency: + type: string + parameters: + type: object + properties: + demographic: + type: string + min_points: + type: number + required: + - demographic + additionalProperties: false + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + - parameters + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - flat_rate + rate: + type: number + currency: + type: string + is_fixed: + type: boolean + enum: + - true + parameters: + type: object + properties: + duration_hours: + type: number + sov_percentage: + type: number + loop_duration_seconds: + type: number + min_plays_per_hour: + type: number + venue_package: + type: string + estimated_impressions: + type: number + daypart: + type: string + additionalProperties: false + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + - is_fixed + additionalProperties: false required: - id - productId @@ -5322,6 +5859,7 @@ components: enum: - SALES - OUTCOME + - SIGNAL status: type: string relationship: @@ -5371,6 +5909,7 @@ components: enum: - SALES - OUTCOME + - SIGNAL status: type: string relationship: @@ -5437,6 +5976,7 @@ components: enum: - SALES - OUTCOME + - SIGNAL status: type: string relationship: @@ -5465,6 +6005,7 @@ components: enum: - SALES - OUTCOME + - SIGNAL status: type: string relationship: @@ -5506,6 +6047,7 @@ components: enum: - SALES - OUTCOME + - SIGNAL example: SALES status: type: string @@ -5534,6 +6076,7 @@ components: enum: - SALES - OUTCOME + - SIGNAL example: SALES required: - success @@ -5554,6 +6097,7 @@ components: enum: - SALES - OUTCOME + - SIGNAL example: SALES status: type: string @@ -6163,10 +6707,6 @@ components: type: number budgetCurrency: type: string - pricingCpm: - type: number - pricingSignalCost: - type: number displayOrder: type: number creativeFormats: @@ -6239,10 +6779,6 @@ components: type: string salesAgentName: type: string - pricingCpm: - type: number - pricingSignalCost: - type: number bidPrice: type: number pricingOptionId: @@ -6294,19 +6830,6 @@ components: - status additionalProperties: false example: [] - pricing: - type: object - properties: - cpm: - type: number - signalCost: - type: number - totalCpm: - type: number - required: - - cpm - - totalCpm - additionalProperties: false status: type: string example: string @@ -6362,7 +6885,6 @@ components: - tacticId - customerId - name - - pricing - status - createdAt - updatedAt @@ -6458,10 +6980,6 @@ components: type: number budgetCurrency: type: string - pricingCpm: - type: number - pricingSignalCost: - type: number displayOrder: type: number creativeFormats: @@ -6534,10 +7052,6 @@ components: type: string salesAgentName: type: string - pricingCpm: - type: number - pricingSignalCost: - type: number bidPrice: type: number pricingOptionId: @@ -6589,19 +7103,6 @@ components: - status additionalProperties: false example: [] - pricing: - type: object - properties: - cpm: - type: number - signalCost: - type: number - totalCpm: - type: number - required: - - cpm - - totalCpm - additionalProperties: false status: type: string example: string @@ -6657,7 +7158,6 @@ components: - tacticId - customerId - name - - pricing - status - createdAt - updatedAt @@ -6695,10 +7195,6 @@ components: type: number budgetCurrency: type: string - pricingCpm: - type: number - pricingSignalCost: - type: number displayOrder: type: number creativeFormats: @@ -6771,10 +7267,6 @@ components: type: string salesAgentName: type: string - pricingCpm: - type: number - pricingSignalCost: - type: number bidPrice: type: number pricingOptionId: @@ -6826,19 +7318,6 @@ components: - status additionalProperties: false example: [] - pricing: - type: object - properties: - cpm: - type: number - signalCost: - type: number - totalCpm: - type: number - required: - - cpm - - totalCpm - additionalProperties: false status: type: string example: string @@ -6894,7 +7373,6 @@ components: - tacticId - customerId - name - - pricing - status - createdAt - updatedAt diff --git a/platform-api.yaml b/platform-api.yaml index 5dabd8b..07cf7ee 100644 --- a/platform-api.yaml +++ b/platform-api.yaml @@ -4730,11 +4730,12 @@ components: type: object properties: type: - description: Filter by agent type (SALES or OUTCOME) + description: Filter by agent type (SALES, OUTCOME, or SIGNAL) type: string enum: - SALES - OUTCOME + - SIGNAL example: SALES status: description: Filter by status (PENDING, ACTIVE, DISABLED) @@ -5101,10 +5102,6 @@ components: type: number budgetCurrency: type: string - pricingCpm: - type: number - pricingSignalCost: - type: number displayOrder: type: number creativeFormats: @@ -5174,10 +5171,6 @@ components: type: string salesAgentName: type: string - pricingCpm: - type: number - pricingSignalCost: - type: number bidPrice: type: number pricingOptionId: @@ -5226,18 +5219,6 @@ components: - mediaUrl - status example: [] - pricing: - type: object - properties: - cpm: - type: number - signalCost: - type: number - totalCpm: - type: number - required: - - cpm - - totalCpm status: type: string example: string @@ -5291,7 +5272,6 @@ components: - tacticId - customerId - name - - pricing - status - createdAt - updatedAt @@ -6241,6 +6221,269 @@ components: - agent_url - id additionalProperties: false + pricingOptions: + type: array + items: + anyOf: + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpm + rate: + type: number + currency: + type: string + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpm + currency: + type: string + price_guidance: + type: object + properties: + floor: + type: number + p25: + type: number + p50: + type: number + p75: + type: number + p90: + type: number + required: + - floor + additionalProperties: false + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - currency + - price_guidance + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - vcpm + rate: + type: number + currency: + type: string + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - vcpm + currency: + type: string + price_guidance: + type: object + properties: + floor: + type: number + p25: + type: number + p50: + type: number + p75: + type: number + p90: + type: number + required: + - floor + additionalProperties: false + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - currency + - price_guidance + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpc + rate: + type: number + currency: + type: string + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpcv + rate: + type: number + currency: + type: string + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpv + rate: + type: number + currency: + type: string + parameters: + type: object + properties: + view_threshold: + anyOf: + - type: number + - type: object + properties: + duration_seconds: + type: number + required: + - duration_seconds + additionalProperties: false + required: + - view_threshold + additionalProperties: false + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + - parameters + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - cpp + rate: + type: number + currency: + type: string + parameters: + type: object + properties: + demographic: + type: string + min_points: + type: number + required: + - demographic + additionalProperties: false + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + - parameters + additionalProperties: false + - type: object + properties: + pricing_option_id: + type: string + pricing_model: + type: string + enum: + - flat_rate + rate: + type: number + currency: + type: string + is_fixed: + type: boolean + enum: + - true + parameters: + type: object + properties: + duration_hours: + type: number + sov_percentage: + type: number + loop_duration_seconds: + type: number + min_plays_per_hour: + type: number + venue_package: + type: string + estimated_impressions: + type: number + daypart: + type: string + additionalProperties: false + min_spend_per_package: + type: number + required: + - pricing_option_id + - pricing_model + - rate + - currency + - is_fixed + additionalProperties: false required: - id - productId @@ -6265,6 +6508,7 @@ components: enum: - SALES - OUTCOME + - SIGNAL status: type: string relationship: @@ -6314,6 +6558,7 @@ components: enum: - SALES - OUTCOME + - SIGNAL status: type: string relationship: @@ -6380,6 +6625,7 @@ components: enum: - SALES - OUTCOME + - SIGNAL status: type: string relationship: @@ -6408,6 +6654,7 @@ components: enum: - SALES - OUTCOME + - SIGNAL status: type: string relationship: @@ -7033,10 +7280,6 @@ components: type: number budgetCurrency: type: string - pricingCpm: - type: number - pricingSignalCost: - type: number displayOrder: type: number creativeFormats: @@ -7109,10 +7352,6 @@ components: type: string salesAgentName: type: string - pricingCpm: - type: number - pricingSignalCost: - type: number bidPrice: type: number pricingOptionId: @@ -7164,19 +7403,6 @@ components: - status additionalProperties: false example: [] - pricing: - type: object - properties: - cpm: - type: number - signalCost: - type: number - totalCpm: - type: number - required: - - cpm - - totalCpm - additionalProperties: false status: type: string example: string @@ -7232,7 +7458,6 @@ components: - tacticId - customerId - name - - pricing - status - createdAt - updatedAt diff --git a/src/types/partner-api.ts b/src/types/partner-api.ts index 85ffea6..6213936 100644 --- a/src/types/partner-api.ts +++ b/src/types/partner-api.ts @@ -339,8 +339,10 @@ export interface components { mediaProductId: string; budgetAmount: number; budgetCurrency?: string; - pricingCpm?: number; - pricingSignalCost?: number; + /** @enum {string} */ + budgetPacing?: 'asap' | 'even' | 'front_loaded'; + bidPrice?: number; + pricingOptionId: string; displayOrder?: number; creatives?: { creative_id: string; @@ -403,9 +405,21 @@ export interface components { /** @example [] */ creativeIds?: string[]; /** @example [] */ + products?: { + productId: string; + budgetAmount?: number; + /** @enum {string} */ + budgetPacing?: 'even' | 'asap'; + bidPrice?: number | null; + }[]; + /** @example [] */ packages?: { packageId: string; - creativeIds: string[]; + creativeIds?: string[]; + budgetAmount?: number; + /** @enum {string} */ + pacing?: 'even' | 'asap'; + bidPrice?: number | null; }[]; }; DeleteMediaBuyInput: { @@ -577,11 +591,11 @@ export interface components { }; ListAgentsInput: { /** - * @description Filter by agent type (SALES or OUTCOME) + * @description Filter by agent type (SALES, OUTCOME, or SIGNAL) * @example SALES * @enum {string} */ - type?: 'SALES' | 'OUTCOME'; + type?: 'SALES' | 'OUTCOME' | 'SIGNAL'; /** * @description Filter by status (PENDING, ACTIVE, DISABLED) * @example PENDING @@ -611,7 +625,7 @@ export interface components { * @example SALES * @enum {string} */ - type: 'SALES' | 'OUTCOME'; + type: 'SALES' | 'OUTCOME' | 'SIGNAL'; /** * @description Agent name * @example Example Name @@ -978,8 +992,6 @@ export interface components { salesAgentName?: string; budgetAmount?: number; budgetCurrency?: string; - pricingCpm?: number; - pricingSignalCost?: number; displayOrder?: number; creativeFormats?: { agent_url: string; @@ -1006,8 +1018,6 @@ export interface components { updatedAt: string; salesAgentId?: string; salesAgentName?: string; - pricingCpm?: number; - pricingSignalCost?: number; bidPrice?: number; pricingOptionId?: string; creativeFormats?: { @@ -1023,11 +1033,6 @@ export interface components { mediaUrl: string; status: string; }[]; - pricing: { - cpm: number; - signalCost?: number; - totalCpm: number; - }; /** @example string */ status: string; adcp?: { @@ -1302,9 +1307,114 @@ export interface components { agent_url: string; id: string; }[]; - fixedCpm?: number; - floorCpm?: number; - targetCpm?: number; + pricingOptions?: ( + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpm'; + rate: number; + currency: string; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpm'; + currency: string; + price_guidance: { + floor: number; + p25?: number; + p50?: number; + p75?: number; + p90?: number; + }; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'vcpm'; + rate: number; + currency: string; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'vcpm'; + currency: string; + price_guidance: { + floor: number; + p25?: number; + p50?: number; + p75?: number; + p90?: number; + }; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpc'; + rate: number; + currency: string; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpcv'; + rate: number; + currency: string; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpv'; + rate: number; + currency: string; + parameters: { + view_threshold: + | number + | { + duration_seconds: number; + }; + }; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpp'; + rate: number; + currency: string; + parameters: { + demographic: string; + min_points?: number; + }; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'flat_rate'; + rate: number; + currency: string; + /** @enum {boolean} */ + is_fixed: true; + parameters?: { + duration_hours?: number; + sov_percentage?: number; + loop_duration_seconds?: number; + min_plays_per_hour?: number; + venue_package?: string; + estimated_impressions?: number; + daypart?: string; + }; + min_spend_per_package?: number; + } + )[]; }[]; }; MediaProductSave: { @@ -1351,6 +1461,114 @@ export interface components { agent_url: string; id: string; }[]; + pricingOptions?: ( + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpm'; + rate: number; + currency: string; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpm'; + currency: string; + price_guidance: { + floor: number; + p25?: number; + p50?: number; + p75?: number; + p90?: number; + }; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'vcpm'; + rate: number; + currency: string; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'vcpm'; + currency: string; + price_guidance: { + floor: number; + p25?: number; + p50?: number; + p75?: number; + p90?: number; + }; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpc'; + rate: number; + currency: string; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpcv'; + rate: number; + currency: string; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpv'; + rate: number; + currency: string; + parameters: { + view_threshold: + | number + | { + duration_seconds: number; + }; + }; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpp'; + rate: number; + currency: string; + parameters: { + demographic: string; + min_points?: number; + }; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'flat_rate'; + rate: number; + currency: string; + /** @enum {boolean} */ + is_fixed: true; + parameters?: { + duration_hours?: number; + sov_percentage?: number; + loop_duration_seconds?: number; + min_plays_per_hour?: number; + venue_package?: string; + estimated_impressions?: number; + daypart?: string; + }; + min_spend_per_package?: number; + } + )[]; }[]; }; MediaProductSync: { @@ -1364,7 +1582,7 @@ export interface components { agentId: string; name: string; /** @enum {string} */ - type: 'SALES' | 'OUTCOME'; + type: 'SALES' | 'OUTCOME' | 'SIGNAL'; status: string; relationship: string; endpointUrl: string; @@ -1382,7 +1600,7 @@ export interface components { agentId: string; name: string; /** @enum {string} */ - type: 'SALES' | 'OUTCOME'; + type: 'SALES' | 'OUTCOME' | 'SIGNAL'; status: string; relationship: string; endpointUrl: string; @@ -1406,7 +1624,7 @@ export interface components { agentId: string; name: string; /** @enum {string} */ - type: 'SALES' | 'OUTCOME'; + type: 'SALES' | 'OUTCOME' | 'SIGNAL'; status: string; relationship: string; endpointUrl: string; @@ -1416,7 +1634,7 @@ export interface components { agentId: string; name: string; /** @enum {string} */ - type: 'SALES' | 'OUTCOME'; + type: 'SALES' | 'OUTCOME' | 'SIGNAL'; status: string; relationship: string; endpointUrl: string; @@ -1434,7 +1652,7 @@ export interface components { * @example SALES * @enum {string} */ - type: 'SALES' | 'OUTCOME'; + type: 'SALES' | 'OUTCOME' | 'SIGNAL'; /** @example string */ status: string; /** @example https://example.com */ @@ -1449,7 +1667,7 @@ export interface components { * @example SALES * @enum {string} */ - type: 'SALES' | 'OUTCOME'; + type: 'SALES' | 'OUTCOME' | 'SIGNAL'; }; AgentUpdate: { /** @example example_id_123 */ @@ -1460,7 +1678,7 @@ export interface components { * @example SALES * @enum {string} */ - type: 'SALES' | 'OUTCOME'; + type: 'SALES' | 'OUTCOME' | 'SIGNAL'; /** @example string */ status: string; }; @@ -1831,8 +2049,6 @@ export interface components { salesAgentName?: string; budgetAmount?: number; budgetCurrency?: string; - pricingCpm?: number; - pricingSignalCost?: number; displayOrder?: number; creativeFormats?: { agent_url: string; @@ -1859,8 +2075,6 @@ export interface components { updatedAt: string; salesAgentId?: string; salesAgentName?: string; - pricingCpm?: number; - pricingSignalCost?: number; bidPrice?: number; pricingOptionId?: string; creativeFormats?: { @@ -1876,11 +2090,6 @@ export interface components { mediaUrl: string; status: string; }[]; - pricing: { - cpm: number; - signalCost?: number; - totalCpm: number; - }; /** @example string */ status: string; adcp?: { @@ -1960,8 +2169,6 @@ export interface components { salesAgentName?: string; budgetAmount?: number; budgetCurrency?: string; - pricingCpm?: number; - pricingSignalCost?: number; displayOrder?: number; creativeFormats?: { agent_url: string; @@ -1988,8 +2195,6 @@ export interface components { updatedAt: string; salesAgentId?: string; salesAgentName?: string; - pricingCpm?: number; - pricingSignalCost?: number; bidPrice?: number; pricingOptionId?: string; creativeFormats?: { @@ -2005,11 +2210,6 @@ export interface components { mediaUrl: string; status: string; }[]; - pricing: { - cpm: number; - signalCost?: number; - totalCpm: number; - }; /** @example string */ status: string; adcp?: { @@ -2058,8 +2258,6 @@ export interface components { salesAgentName?: string; budgetAmount?: number; budgetCurrency?: string; - pricingCpm?: number; - pricingSignalCost?: number; displayOrder?: number; creativeFormats?: { agent_url: string; @@ -2086,8 +2284,6 @@ export interface components { updatedAt: string; salesAgentId?: string; salesAgentName?: string; - pricingCpm?: number; - pricingSignalCost?: number; bidPrice?: number; pricingOptionId?: string; creativeFormats?: { @@ -2103,11 +2299,6 @@ export interface components { mediaUrl: string; status: string; }[]; - pricing: { - cpm: number; - signalCost?: number; - totalCpm: number; - }; /** @example string */ status: string; adcp?: { diff --git a/src/types/platform-api.ts b/src/types/platform-api.ts index 2449ff6..dae78df 100644 --- a/src/types/platform-api.ts +++ b/src/types/platform-api.ts @@ -1079,11 +1079,11 @@ export interface components { }; ListAgentsInput: { /** - * @description Filter by agent type (SALES or OUTCOME) + * @description Filter by agent type (SALES, OUTCOME, or SIGNAL) * @example SALES * @enum {string} */ - type?: 'SALES' | 'OUTCOME'; + type?: 'SALES' | 'OUTCOME' | 'SIGNAL'; /** * @description Filter by status (PENDING, ACTIVE, DISABLED) * @example PENDING @@ -1326,8 +1326,6 @@ export interface components { salesAgentName?: string; budgetAmount?: number; budgetCurrency?: string; - pricingCpm?: number; - pricingSignalCost?: number; displayOrder?: number; creativeFormats?: { agent_url: string; @@ -1354,8 +1352,6 @@ export interface components { updatedAt: string; salesAgentId?: string; salesAgentName?: string; - pricingCpm?: number; - pricingSignalCost?: number; bidPrice?: number; pricingOptionId?: string; creativeFormats?: { @@ -1371,11 +1367,6 @@ export interface components { mediaUrl: string; status: string; }[]; - pricing: { - cpm: number; - signalCost?: number; - totalCpm: number; - }; /** @example string */ status: string; adcp?: { @@ -1866,6 +1857,114 @@ export interface components { agent_url: string; id: string; }[]; + pricingOptions?: ( + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpm'; + rate: number; + currency: string; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpm'; + currency: string; + price_guidance: { + floor: number; + p25?: number; + p50?: number; + p75?: number; + p90?: number; + }; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'vcpm'; + rate: number; + currency: string; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'vcpm'; + currency: string; + price_guidance: { + floor: number; + p25?: number; + p50?: number; + p75?: number; + p90?: number; + }; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpc'; + rate: number; + currency: string; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpcv'; + rate: number; + currency: string; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpv'; + rate: number; + currency: string; + parameters: { + view_threshold: + | number + | { + duration_seconds: number; + }; + }; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'cpp'; + rate: number; + currency: string; + parameters: { + demographic: string; + min_points?: number; + }; + min_spend_per_package?: number; + } + | { + pricing_option_id: string; + /** @enum {string} */ + pricing_model: 'flat_rate'; + rate: number; + currency: string; + /** @enum {boolean} */ + is_fixed: true; + parameters?: { + duration_hours?: number; + sov_percentage?: number; + loop_duration_seconds?: number; + min_plays_per_hour?: number; + venue_package?: string; + estimated_impressions?: number; + daypart?: string; + }; + min_spend_per_package?: number; + } + )[]; }[]; }; AgentGet: @@ -1873,7 +1972,7 @@ export interface components { agentId: string; name: string; /** @enum {string} */ - type: 'SALES' | 'OUTCOME'; + type: 'SALES' | 'OUTCOME' | 'SIGNAL'; status: string; relationship: string; endpointUrl: string; @@ -1891,7 +1990,7 @@ export interface components { agentId: string; name: string; /** @enum {string} */ - type: 'SALES' | 'OUTCOME'; + type: 'SALES' | 'OUTCOME' | 'SIGNAL'; status: string; relationship: string; endpointUrl: string; @@ -1915,7 +2014,7 @@ export interface components { agentId: string; name: string; /** @enum {string} */ - type: 'SALES' | 'OUTCOME'; + type: 'SALES' | 'OUTCOME' | 'SIGNAL'; status: string; relationship: string; endpointUrl: string; @@ -1925,7 +2024,7 @@ export interface components { agentId: string; name: string; /** @enum {string} */ - type: 'SALES' | 'OUTCOME'; + type: 'SALES' | 'OUTCOME' | 'SIGNAL'; status: string; relationship: string; endpointUrl: string; @@ -2361,8 +2460,6 @@ export interface components { salesAgentName?: string; budgetAmount?: number; budgetCurrency?: string; - pricingCpm?: number; - pricingSignalCost?: number; displayOrder?: number; creativeFormats?: { agent_url: string; @@ -2389,8 +2486,6 @@ export interface components { updatedAt: string; salesAgentId?: string; salesAgentName?: string; - pricingCpm?: number; - pricingSignalCost?: number; bidPrice?: number; pricingOptionId?: string; creativeFormats?: { @@ -2406,11 +2501,6 @@ export interface components { mediaUrl: string; status: string; }[]; - pricing: { - cpm: number; - signalCost?: number; - totalCpm: number; - }; /** @example string */ status: string; adcp?: {