import {z} from 'zod' export type CommonEnablingState = 'UNSPECIFIED' | 'ENABLED' | 'DISABLED'; export type DspCampaignType = 'UNKNOWN_CAMPAIGN_TYPE' | 'GENERIC' | 'APP_USER_ACQUISITION' | 'APP_REENGAGEMENT' | 'WEBSITE_VISIT' | 'CTV_GENERIC' | 'CTV_APP_USER_ACQUISITION' | 'WEB_USER_ACQUISITION' | 'CTV_WEBSITE_VISIT' | 'CTV_WEB_USER_ACQUISITION' | 'WEB_RETARGETING'; export type CommonDeviceOs = 'UNKNOWN_DEVICE_OS' | 'ANDROID' | 'IOS' | 'VERSATILE' | 'MOBILE_WEB' | 'MACOS' | 'WINDOWS' | 'NEXT_VERSATILE'; export type DspCampaignState = 'UNKNOWN_CAMPAIGN_STATE' | 'SUBMITTED' | 'READY' | 'UPCOMING' | 'ACTIVE' | 'PAUSED' | 'SUSPENDED' | 'COMPLETED' | 'LEARNING'; export type AdcloudcommonCurrency = 'UNKNOWN_CURRENCY' | 'USD' | 'KRW' | 'JPY' | 'EUR' | 'GBP'; export type CommonTimeInterval = {start?: string | undefined, end?: string | undefined}; export type AdcloudcommonMoney = {currency?: AdcloudcommonCurrency | undefined, amount_micros?: unknown | undefined}; export type DspDailyBudgetSchedule = {daily_budget?: AdcloudcommonMoney | undefined}; export type DspDayOfWeekBudgetSchedule = {monday_budget?: AdcloudcommonMoney | undefined, tuesday_budget?: AdcloudcommonMoney | undefined, wednesday_budget?: AdcloudcommonMoney | undefined, thursday_budget?: AdcloudcommonMoney | undefined, friday_budget?: AdcloudcommonMoney | undefined, saturday_budget?: AdcloudcommonMoney | undefined, sunday_budget?: AdcloudcommonMoney | undefined}; export type DspWeeklyFlexibleBudgetSchedule = {weekly_budget?: AdcloudcommonMoney | undefined}; export type DspBudgetSchedule = {daily_schedule?: DspDailyBudgetSchedule | undefined, weekly_schedule?: DspDayOfWeekBudgetSchedule | undefined, weekly_flexible_schedule?: DspWeeklyFlexibleBudgetSchedule | undefined}; export type AdcloudcommonTrackingCompany = 'UNKNOWN_TRACKING_COMPANY' | 'KOCHAVA' | 'ADJUST' | 'MAT' | 'MOLOCO_PIXEL' | 'APPSFLYER' | 'ADBRIX' | 'WEB' | 'GENERIC' | 'TRACKFNT' | 'AIRBRIDGE' | 'MOLOCO_E2E' | 'APSALAR' | 'BRANCH' | 'TENJIN' | 'SINGULAR' | 'ADBRIX_V2' | 'TRAFFICGUARD' | 'GAMELOFT' | 'SKADNETWORK' | 'MYTRACKER' | 'MOLOCO_RMP' | 'MOLOCO_PIXEL_V2' | 'JUSTTRACK' | 'SHOPEE' | 'KOCHAVA_FOR_PUBLISHER' | 'GAMESIGHT' | 'CAULY' | 'HASOFFER' | 'ADACTION' | 'CURATE'; export type DspCampaignGoalType = 'UNKNOWN_TYPE' | 'OPTIMIZE_NONE' | 'FIXED_CPM_FOR_APP_UA' | 'FIXED_CPM_FOR_APP_RE' | 'OPTIMIZE_CPI_FOR_APP_UA' | 'OPTIMIZE_CPA_FOR_APP_UA' | 'OPTIMIZE_CPC_FOR_APP_UA' | 'OPTIMIZE_ROAS_FOR_APP_UA' | 'OPTIMIZE_ROAS_FOR_APP_RE' | 'OPTIMIZE_CPC_FOR_APP_RE' | 'OPTIMIZE_CPC_FOR_WEB_VISIT' | 'OPTIMIZE_APP_INSTALLS' | 'OPTIMIZE_APP_ROAS' | 'OPTIMIZE_CLICKS_TO_WEB' | 'OPTIMIZE_CLICKS_TO_APP' | 'OPTIMIZE_CPA_FOR_APP_RE' | 'OPTIMIZE_RETENTION_FOR_APP_UA' | 'OPTIMIZE_REATTRIBUTION_FOR_APP' | 'OPTIMIZE_CPA_REPEATED_FOR_APP_UA' | 'FIXED_CPM_GENERIC' | 'FIXED_CPM_FOR_CTV' | 'FIXED_CPM_FOR_WEB_VISIT' | 'OPTIMIZE_LANDING_FOR_WEB_UA' | 'OPTIMIZE_CPA_FOR_WEB_UA'; export type CampaignGoalOptimizeAppInstallsMode = 'UNKNOWN_MODE' | 'TARGET_CPI_CENTRIC' | 'BUDGET_CENTRIC' | 'MARGIN_CENTRIC' | 'FIXED'; export type CampaignGoalOptimizeAppInstalls = {mode?: CampaignGoalOptimizeAppInstallsMode | undefined, target_cpi?: AdcloudcommonMoney | undefined, rate?: number | undefined, margin?: number | undefined}; export type CampaignGoalOptimizeCpaForAppUaMode = 'UNKNOWN_MODE' | 'BUDGET_CENTRIC' | 'MARGIN_CENTRIC' | 'TARGET_PRIMARY_KPI_CENTRIC'; export type CampaignGoalOptimizeCpaForAppUa = {action: string, mode?: CampaignGoalOptimizeCpaForAppUaMode | undefined, rate?: number | undefined, margin?: number | undefined, target_kpi?: AdcloudcommonMoney | undefined}; export type CampaignGoalOptimizeAppRoasMode = 'UNKNOWN_MODE' | 'BUDGET_CENTRIC' | 'MARGIN_CENTRIC' | 'TARGET_PRIMARY_KPI_CENTRIC'; export type CampaignGoalOptimizeAppRoas = {target_roas?: number | undefined, revenue_actions: Array, target_cpi?: AdcloudcommonMoney | undefined, mode?: CampaignGoalOptimizeAppRoasMode | undefined, rate?: number | undefined, margin?: number | undefined}; export type CampaignGoalOptimizeClicksToWebMode = 'UNKNOWN_MODE' | 'BUDGET_CENTRIC' | 'TARGET_CPC_CENTRIC'; export type CampaignGoalOptimizeClicksToWeb = {target_cpc?: AdcloudcommonMoney | undefined, mode?: CampaignGoalOptimizeClicksToWebMode | undefined, rate?: number | undefined}; export type CampaignGoalOptimizeClicksToAppMode = 'UNKNOWN_MODE' | 'BUDGET_CENTRIC' | 'TARGET_CPC_CENTRIC'; export type CampaignGoalOptimizeClicksToApp = {target_cpc?: AdcloudcommonMoney | undefined, mode?: CampaignGoalOptimizeClicksToAppMode | undefined, rate?: number | undefined}; export type CampaignGoalOptimizeRoasForAppRe = {target_roas?: number | undefined, reengagement_action?: string | undefined, revenue_actions: Array, rate?: number | undefined}; export type CampaignGoalOptimizeCpcForAppReMode = 'UNKNOWN_MODE' | 'BUDGET_CENTRIC' | 'TARGET_CPC_CENTRIC'; export type CampaignGoalOptimizeCpcForAppRe = {target_cpc?: AdcloudcommonMoney | undefined, reengagement_action?: string | undefined, mode?: CampaignGoalOptimizeCpcForAppReMode | undefined, rate?: number | undefined}; export type CampaignGoalOptimizeFixedCpm = {target_cpm: AdcloudcommonMoney}; export type CampaignGoalOptimizeCpaForAppReMode = 'UNKNOWN_MODE' | 'BUDGET_CENTRIC'; export type CampaignGoalOptimizeCpaForAppRe = {action: string, reengagement_action?: string | undefined, mode?: CampaignGoalOptimizeCpaForAppReMode | undefined, rate?: number | undefined}; export type CampaignGoalOptimizeAppRetentionMode = 'UNKNOWN_MODE' | 'BUDGET_CENTRIC' | 'MARGIN_CENTRIC'; export type CampaignGoalOptimizeAppRetention = {mode?: CampaignGoalOptimizeAppRetentionMode | undefined, target_cpi?: AdcloudcommonMoney | undefined, rate?: number | undefined, margin?: number | undefined}; export type CampaignGoalOptimizeAppReattributionMode = 'UNKNOWN_MODE' | 'BUDGET_CENTRIC'; export type CampaignGoalOptimizeAppReattribution = {mode?: CampaignGoalOptimizeAppReattributionMode | undefined, rate?: number | undefined}; export type CampaignGoalOptimizeCpaRepeatedForAppUaMode = 'UNKNOWN_MODE' | 'BUDGET_CENTRIC'; export type CampaignGoalOptimizeCpaRepeatedForAppUa = {action: string, mode?: CampaignGoalOptimizeCpaRepeatedForAppUaMode | undefined, rate?: number | undefined}; export type CampaignGoalOptimizeFixedCpmPacingPacingMode = 'NONE' | 'BY_FREQUENCY'; export type CampaignGoalOptimizeFixedCpmPacing = {target_cpm: AdcloudcommonMoney, pacing_mode?: CampaignGoalOptimizeFixedCpmPacingPacingMode | undefined, rate?: number | undefined}; export type CampaignGoalOptimizeLandingForWebUaMode = 'UNKNOWN_MODE' | 'BUDGET_CENTRIC'; export type CampaignGoalOptimizeLandingForWebUa = {mode?: CampaignGoalOptimizeLandingForWebUaMode | undefined, rate?: number | undefined}; export type CampaignGoalOptimizeCpaForWebUaMode = 'UNKNOWN_MODE' | 'BUDGET_CENTRIC'; export type CampaignGoalOptimizeCpaForWebUa = {action: string, mode?: CampaignGoalOptimizeCpaForWebUaMode | undefined, rate?: number | undefined}; export type DspCampaignGoal = {type: DspCampaignGoalType, optimize_app_installs?: CampaignGoalOptimizeAppInstalls | undefined, optimize_cpa_for_app_ua?: CampaignGoalOptimizeCpaForAppUa | undefined, optimize_app_roas?: CampaignGoalOptimizeAppRoas | undefined, optimize_clicks_to_web?: CampaignGoalOptimizeClicksToWeb | undefined, optimize_clicks_to_app?: CampaignGoalOptimizeClicksToApp | undefined, optimize_roas_for_app_re?: CampaignGoalOptimizeRoasForAppRe | undefined, optimize_cpc_for_app_re?: CampaignGoalOptimizeCpcForAppRe | undefined, optimize_fixed_cpm?: CampaignGoalOptimizeFixedCpm | undefined, optimize_cpa_for_app_re?: CampaignGoalOptimizeCpaForAppRe | undefined, optimize_app_retention?: CampaignGoalOptimizeAppRetention | undefined, optimize_app_reattribution?: CampaignGoalOptimizeAppReattribution | undefined, optimize_cpa_repeated_for_app_ua?: CampaignGoalOptimizeCpaRepeatedForAppUa | undefined, optimize_fixed_cpm_pacing?: CampaignGoalOptimizeFixedCpmPacing | undefined, optimize_landing_for_web_ua?: CampaignGoalOptimizeLandingForWebUa | undefined, optimize_cpa_for_web_ua?: CampaignGoalOptimizeCpaForWebUa | undefined, kpi_actions?: Array | undefined}; export type SKAdNetworkInputTargetingState = 'UNKNOWN_TARGETING_STATE' | 'TARGET_DO_NOT_CARE' | 'TARGET_ALL' | 'TARGET_SKADN_ONLY' | 'TARGET_NON_SKADN_ONLY' | 'TARGET_CUSTOM'; export type SKAdNetworkInputCustomOption = 'UNKNOWN_SKAN_CUSTOM_OPTION' | 'SKAN_CUSTOM_OPTION_MMP_ATTRIBUTABLE' | 'SKAN_CUSTOM_OPTION_BI_ATTRIBUTABLE' | 'SKAN_CUSTOM_OPTION_NON_ATTRIBUTABLE' | 'SKAN_CUSTOM_OPTION_SKAN_ATTRIBUTABLE'; export type DspSKAdNetworkInput = {targeting_state?: SKAdNetworkInputTargetingState | undefined, include_traffic_without_attributions?: boolean | undefined, custom_options?: Array | undefined, prefer_mmp_attribution?: boolean | undefined}; export type DspAdTrackingAllowance = 'UNKNOWN_AD_TRACKING_ALLOWANCE' | 'NON_LAT_ONLY' | 'LAT_ONLY' | 'DO_NOT_CARE'; export type CampaignServingStatus = {serving_blocked?: boolean | undefined, serving_blocked_timestamp?: string | undefined}; export type LaunchNoticeNoticeType = 'UNKNOWN' | 'WARNING' | 'DISCLAIMER'; export type LaunchNoticeNoticeMessage = 'UNKNOWN_MESSAGE' | 'MMP_PROBABILISTIC_ATTRIBUTION_STATUS_DISABLED' | 'MMP_VIEW_THROUGH_PROBABILISTIC_ATTRIBUTION_STATUS_DISABLED' | 'MMP_ADVANCED_PRIVACY_STATUS_ENABLED' | 'MMP_PROBABILISTIC_ATTRIBUTION_STATUS_UNKNOWN' | 'CAMPAIGN_WILL_PAUSE_IF_ADVANCED_PRIVACY_ENABLED_AFTER_48H'; export type CommonLaunchNotice = {type?: LaunchNoticeNoticeType | undefined, message?: LaunchNoticeNoticeMessage | undefined}; export type DspCampaign = {id?: string | undefined, ad_account_id?: string | undefined, product_id?: string | undefined, title: string, description?: string | undefined, enabling_state?: CommonEnablingState | undefined, type: DspCampaignType, device_os: CommonDeviceOs, state?: DspCampaignState | undefined, countries: Array, currency?: AdcloudcommonCurrency | undefined, schedule: CommonTimeInterval, budget_schedule?: DspBudgetSchedule | undefined, tracking_company?: AdcloudcommonTrackingCompany | undefined, tracking_link_id?: string | undefined, landing_url?: string | undefined, goal: DspCampaignGoal, skadn_input?: DspSKAdNetworkInput | undefined, custom_key_values?: {[key: string]: string} | undefined, ad_tracking_allowance?: DspAdTrackingAllowance | undefined, is_deleted?: boolean | undefined, auto_delete_at?: string | undefined, created_at?: string | undefined, updated_at?: string | undefined, serving_status?: CampaignServingStatus | undefined, launch_notices?: Array | undefined, launch_notice_confirmations?: Array | undefined}; export type AudienceTargetingConditionPlacementReason = 'UNKNOWN_PLACEMENT_REASON' | 'REASON_BRAND_SAFETY' | 'REASON_PERFORMANCE_IMPROVEMENT' | 'REASON_AGE_RESTRICTION' | 'REASON_FRAUD' | 'REASON_OWN_APP_CROSS_PROMOTION_BLOCKING' | 'REASON_NOT_OPERATING_IN_A_SPECIFIC_LOCATION' | 'REASON_INCREMENTALITY_TESTING' | 'REASON_OTHER'; export type AdcloudcommonCreativeType = 'UNKNOWN_CREATIVE_TYPE' | 'IMAGE_BANNER' | 'IMAGE_INTERSTITIAL' | 'VIDEO_BANNER' | 'VIDEO_INTERSTITIAL' | 'NATIVE_LOGO' | 'NATIVE_VIDEO' | 'NATIVE_IMAGE' | 'CUSTOM_HTML_BANNER' | 'CUSTOM_HTML_INTERSTITIAL' | 'TEMPLATE_HTML_BANNER' | 'TEMPLATE_HTML_INTERSTITIAL' | 'RICH_CUSTOM_HTML_BANNER' | 'RICH_CUSTOM_HTML_INTERSTITIAL' | 'DYNAMIC_HTML_BANNER' | 'DYNAMIC_HTML_INTERSTITIAL'; export type CommonLatLng = {latitude?: number | undefined, longitude?: number | undefined}; export type CommonCircle = {center?: CommonLatLng | undefined, radius?: number | undefined}; export type CommonAdExchange = 'UNKNOWN_AD_EXCHANGE' | 'MOPUB' | 'ADX' | 'ADMIXER' | 'SMAATO' | 'RUBICON' | 'EXELBID' | 'BRIGHTROLL' | 'CAULYRTB' | 'ADLIB' | 'ORION' | 'MOLOCO' | 'ADOP' | 'APPLOVIN' | 'FYBER' | 'SAMSUNG' | 'ADCOLONY' | 'POLYMORPH' | 'CHARTBOOST' | 'MANPLUS' | 'KAKAO' | 'UNITY' | 'FYBERCORE' | 'ADGENERATION' | 'SAMSUNGPAY' | 'NHN' | 'ADPOPCORN' | 'OPENX' | 'VUNGLE' | 'ADALPHA' | 'BYTEDANCE' | 'NAVER' | 'INMOBI' | 'SIGNALPLAY' | 'ACUITY' | 'IRONSOURCE' | 'PUBMATIC' | 'BAIDU' | 'FLUCT' | 'FIVE' | 'APPODEAL' | 'ADPIE' | 'MOBILITYWARE' | 'TPMN' | 'PUBNATIVE' | 'TAPJOY' | 'MOMENTO' | 'BIDENCE' | 'APS' | 'INDEX' | 'IQZONE' | 'STARTIO' | 'FLOWER' | 'ONESTORE' | 'NIMBUS' | 'AEQUUS' | 'MCTV' | 'MINTEGRAL' | 'MOLOCO_SDK_APPLOVIN' | 'MOLOCO_SDK_IRONSOURCE' | 'PANGLE' | 'MAGNITE' | 'MOLOCO_SDK_X3MADS' | 'FREE_WHEEL' | 'MOLOCO_SDK_ADMOB' | 'ADX_RTB' | 'XIAOMI' | 'MOLOCO_SDK_CREATIVE_TEST' | 'MOLOCO_SDK_MAX' | 'MOLOCO_SDK_LEVELPLAY' | 'NEXXEN' | 'MOLOCO_SDK_ADMOB_MEDIATION' | 'MOLOCO_SDK' | 'MOLOCO_SDK_IN_HOUSE_MEDIATION' | 'TABOOLA' | 'CRITEO' | 'MOLOCO_SDK_DIRECT_AD' | 'APX1' | 'DIRECT_AD' | 'BIGO' | 'CAS' | 'TUBI' | 'SPRINGSERVE' | 'PUBLICA'; export type CommonDeviceType = 'UNKNOWN_DEVICE_TYPE' | 'MOBILE' | 'PERSONAL_COMPUTER' | 'CONNECTED_TV' | 'HIGHEND_PHONE' | 'TABLET' | 'CONNECTED_DEVICE' | 'SET_TOP_BOX'; export type AdcloudcommonEventType = 'UNKNOWN_EVENT_TYPE' | 'BID_MADE' | 'BID_WON' | 'IMPRESSION' | 'IMPRESSION_EXTRA' | 'CLICK' | 'INSTALL' | 'CUSTOM'; export type AudienceTargetingConditionRecentCampaignActivityFilter = {event: AdcloudcommonEventType, campaign_id: string, last_n_days: number}; export type AudienceTargetingConditionLocationFilter = {cities?: Array | undefined, regions?: Array | undefined, zipcodes?: Array | undefined, geofences?: Array | undefined}; export type CommonGender = 'UNKNOWN_GENDER' | 'FEMALE' | 'MALE'; export type AudienceTargetingConditionDeviceOsFilter = {os: CommonDeviceOs, min_version?: string | undefined, max_version?: string | undefined}; export type AudienceTargetingConditionMediaChannelType = 'UNKNOWN_MEDIA_CHANNEL_TYPE' | 'APP' | 'WEB'; export type AudienceTargetingConditionNewUserFilter = {last_n_days: number}; export type CommonAdvertiserIdType = 'UNKNOWN_ADVERTISER_ID_TYPE' | 'ANDROID_IDFA' | 'IOS_IDFA' | 'GENERIC_USER_ID' | 'GENERIC_DEVICE_ID' | 'ANDROID_LAT_IDFA' | 'IOS_LAT_IDFA'; export type DspAudienceTargetingConditionVideoType = 'UNKNOWN_VIDEO_TYPE' | 'REWARD_VIDEO' | 'NON_REWARD_VIDEO' | 'NON_VIDEO'; export type AdcloudcommonTimezonePolicy = 'UNKNOWN_TIME' | 'DEVICE_TIME' | 'UTC_TIME' | 'AD_ACCOUNT_TIME' | 'ADVERTISER_TIME'; export type AdcloudcommonInterval = {start?: number | undefined, end?: number | undefined}; export type AdcloudcommonDayOfWeek = 'UNKNOWN_DAY_OF_WEEK' | 'MON' | 'TUE' | 'WED' | 'THU' | 'FRI' | 'SAT' | 'SUN'; export type AudienceTargetingConditionWeeklyScheduleFilter = {timezone_policy?: AdcloudcommonTimezonePolicy | undefined, hour_range?: AdcloudcommonInterval | undefined, days: Array}; export type AdcloudcommonFloatingPointRange = {start?: number | undefined, end?: number | undefined}; export type CommonBannerApi = 'UNKNOWN_BANNER_API' | 'MRAID_2'; export type CommonAudienceData = {provider?: string | undefined, condition?: string | undefined}; export type CommonPostbackEventCount = {app_bundle?: string | undefined, range?: AdcloudcommonInterval | undefined, events?: Array | undefined}; export type CommonTagsThrottleCondition = {tags?: Array | undefined, throttle_rate?: number | undefined}; export type CommonDisplayManagerVersion = {min?: string | undefined, max?: string | undefined}; export type CommonTimeUnit = 'UNKNOWN_TIME_UNIT' | 'MINUTE' | 'HOUR' | 'DAY' | 'WEEK'; export type CommonPostbackEventsCondition = {audiences?: Array | undefined, events?: Array | undefined, past_time_range?: AdcloudcommonInterval | undefined, past_time_range_unit?: CommonTimeUnit | undefined, range?: CommonTimeInterval | undefined, short_term_user_profile?: boolean | undefined, count_range?: AdcloudcommonInterval | undefined}; export type LocationSetZipCodeSet = {zipcodes?: Array | undefined, country?: string | undefined}; export type AudienceTargetingConditionLocationSet = {osm_ids?: Array | undefined, zipcodes?: Array | undefined}; export type AudienceTargetingConditionCoppaAcceptance = 'UNKNOWN_COPPA' | 'ACCEPT_COPPA_ONLY' | 'DENY_COPPA'; export type AudienceTargetingConditionSkanTraffic = 'UNKNOWN_SKAN' | 'TARGET_SKAN_ONLY' | 'TARGET_NON_SKAN'; export type CommonTimeDuration = {amount?: unknown | undefined, unit?: CommonTimeUnit | undefined}; export type CustomAudienceSetAppEvent = {product_id?: string | undefined, event?: string | undefined, sliding_window_duration?: CommonTimeDuration | undefined}; export type CustomAudienceSetApp = {product_id?: string | undefined, sliding_window_duration?: CommonTimeDuration | undefined}; export type CustomAudienceSetCustomAudienceCondition = {app_events?: Array | undefined, user_lists?: Array | undefined, apps?: Array | undefined}; export type AudienceTargetingConditionCustomAudienceSet = {include_having_all?: CustomAudienceSetCustomAudienceCondition | undefined, include_having_any?: CustomAudienceSetCustomAudienceCondition | undefined, exclude_having_all?: CustomAudienceSetCustomAudienceCondition | undefined, exclude_having_any?: CustomAudienceSetCustomAudienceCondition | undefined}; export type DspAudienceTargetingCondition = {allowed_countries?: Array | undefined, blocked_countries?: Array | undefined, placement_reasons?: Array | undefined, custom_placement_reason?: string | undefined, allowed_app_bundles?: Array | undefined, blocked_app_bundles?: Array | undefined, allowed_content_categories?: Array | undefined, blocked_content_categories?: Array | undefined, allowed_cities?: Array | undefined, blocked_cities?: Array | undefined, allowed_creative_types?: Array | undefined, blocked_creative_types?: Array | undefined, allowed_websites?: Array | undefined, blocked_websites?: Array | undefined, allowed_geofences?: Array | undefined, blocked_geofences?: Array | undefined, allowed_exchanges?: Array | undefined, blocked_exchanges?: Array | undefined, allowed_idfas?: Array | undefined, blocked_idfas?: Array | undefined, allowed_zipcodes?: Array | undefined, blocked_zipcodes?: Array | undefined, allowed_device_models?: Array | undefined, blocked_device_models?: Array | undefined, allowed_user_audience_tags?: Array | undefined, blocked_user_audience_tags?: Array | undefined, allowed_languages?: Array | undefined, blocked_languages?: Array | undefined, allowed_device_types?: Array | undefined, blocked_device_types?: Array | undefined, allowed_mostly_visited_countries?: Array | undefined, blocked_mostly_visited_countries?: Array | undefined, allowed_regions?: Array | undefined, blocked_regions?: Array | undefined, allowed_recent_campaign_activities?: Array | undefined, blocked_recent_campaign_activities?: Array | undefined, allowed_locations?: Array | undefined, blocked_locations?: Array | undefined, genders?: Array | undefined, connection_types?: Array | undefined, allowed_direct_deal_ids?: Array | undefined, blocked_direct_deal_ids?: Array | undefined, device_oses?: Array | undefined, media_channel_type?: AudienceTargetingConditionMediaChannelType | undefined, new_users?: AudienceTargetingConditionNewUserFilter | undefined, advertiser_id_types?: Array | undefined, allowed_video_types?: Array | undefined, blocked_video_types?: Array | undefined, weekly_schedules?: Array | undefined, allowed_gender_score?: AdcloudcommonFloatingPointRange | undefined, blocked_gender_score?: AdcloudcommonFloatingPointRange | undefined, allowed_ages?: Array | undefined, blocked_ages?: Array | undefined, allowed_ip_ranges?: Array | undefined, blocked_ip_ranges?: Array | undefined, allowed_device_carriers?: Array | undefined, blocked_device_carriers?: Array | undefined, allowed_keywords?: Array | undefined, blocked_keywords?: Array | undefined, user_buckets?: Array | undefined, allowed_ad_units?: Array | undefined, blocked_ad_units?: Array | undefined, allowed_placements?: Array | undefined, blocked_placements?: Array | undefined, allowed_banner_apis?: Array | undefined, blocked_banner_apis?: Array | undefined, schedule?: CommonTimeInterval | undefined, audience_data?: CommonAudienceData | undefined, allowed_apps_by_checksum?: Array | undefined, blocked_apps_by_checksum?: Array | undefined, allowed_postback_event_counts?: Array | undefined, auction_types?: Array | undefined, throttle_apt_tags?: CommonTagsThrottleCondition | undefined, allowed_dev_makes?: Array | undefined, blocked_dev_makes?: Array | undefined, display_manager_versions?: Array | undefined, allowed_audiences?: Array | undefined, blocked_audiences?: Array | undefined, allowed_postback_has_all_events_conditions?: Array | undefined, blocked_postback_has_all_events_conditions?: Array | undefined, allowed_postback_has_any_events_conditions?: Array | undefined, blocked_postback_has_any_events_conditions?: Array | undefined, allowed_location_set?: AudienceTargetingConditionLocationSet | undefined, blocked_location_set?: AudienceTargetingConditionLocationSet | undefined, allowed_apt_tags?: Array | undefined, blocked_apt_tags?: Array | undefined, coppa_acceptance?: AudienceTargetingConditionCoppaAcceptance | undefined, skan_traffic?: AudienceTargetingConditionSkanTraffic | undefined, contains_custom_audience?: boolean | undefined, custom_audience_set?: AudienceTargetingConditionCustomAudienceSet | undefined}; export type AdclouddspAudience = {shared_audience_target_ids?: Array | undefined, targeting_condition?: DspAudienceTargetingCondition | undefined}; export type AdclouddspAdCapper = {imp_interval?: CommonTimeDuration | undefined}; export type DspAdGroupAudienceExtension = {paired_ad_group_id?: string | undefined, is_secondary?: boolean | undefined}; export type DspAdGroup = {id?: string | undefined, title: string, campaign_id?: string | undefined, product_id?: string | undefined, ad_account_id?: string | undefined, experiment_id?: string | undefined, enabling_state?: CommonEnablingState | undefined, audience?: AdclouddspAudience | undefined, capper?: AdclouddspAdCapper | undefined, pricing_model_id?: string | undefined, creative_group_ids?: Array | undefined, user_buckets?: Array | undefined, audience_extension?: DspAdGroupAudienceExtension | undefined, created_at?: string | undefined, updated_at?: string | undefined, aud_size?: unknown | undefined, matchable_aud_size?: unknown | undefined, last_aud_size_computed_at?: string | undefined}; export type MessagesCampaignInput = {campaign: DspCampaign, ad_group?: DspAdGroup | undefined, ad_groups?: Array | undefined}; export type CreateApiCmV1CampaignsArgs = {ad_account_id: string, product_id: string, body: MessagesCampaignInput}; export type CreateApiCmV1CampaignsOptions = {baseUrl?: string | undefined, Bearer?: string | undefined, fetch?: typeof fetch | undefined}; export const commonEnablingState = z.enum(["UNSPECIFIED", "ENABLED", "DISABLED"]); export const dspCampaignType = z.enum(["UNKNOWN_CAMPAIGN_TYPE", "GENERIC", "APP_USER_ACQUISITION", "APP_REENGAGEMENT", "WEBSITE_VISIT", "CTV_GENERIC", "CTV_APP_USER_ACQUISITION", "WEB_USER_ACQUISITION", "CTV_WEBSITE_VISIT", "CTV_WEB_USER_ACQUISITION", "WEB_RETARGETING"]); export const commonDeviceOs = z.enum(["UNKNOWN_DEVICE_OS", "ANDROID", "IOS", "VERSATILE", "MOBILE_WEB", "MACOS", "WINDOWS", "NEXT_VERSATILE"]); export const dspCampaignState = z.enum(["UNKNOWN_CAMPAIGN_STATE", "SUBMITTED", "READY", "UPCOMING", "ACTIVE", "PAUSED", "SUSPENDED", "COMPLETED", "LEARNING"]); export const adcloudcommonCurrency = z.enum(["UNKNOWN_CURRENCY", "USD", "KRW", "JPY", "EUR", "GBP"]); export const commonTimeInterval = z.object({start: z.string().optional(), end: z.string().optional()}); export const adcloudcommonMoney = z.object({currency: adcloudcommonCurrency.optional(), amount_micros: z.string().optional()}); export const dspDailyBudgetSchedule = z.object({daily_budget: adcloudcommonMoney.optional()}); export const dspDayOfWeekBudgetSchedule = z.object({monday_budget: adcloudcommonMoney.optional(), tuesday_budget: adcloudcommonMoney.optional(), wednesday_budget: adcloudcommonMoney.optional(), thursday_budget: adcloudcommonMoney.optional(), friday_budget: adcloudcommonMoney.optional(), saturday_budget: adcloudcommonMoney.optional(), sunday_budget: adcloudcommonMoney.optional()}); export const dspWeeklyFlexibleBudgetSchedule = z.object({weekly_budget: adcloudcommonMoney.optional()}); export const dspBudgetSchedule = z.object({daily_schedule: dspDailyBudgetSchedule.optional(), weekly_schedule: dspDayOfWeekBudgetSchedule.optional(), weekly_flexible_schedule: dspWeeklyFlexibleBudgetSchedule.optional()}); export const adcloudcommonTrackingCompany = z.enum(["UNKNOWN_TRACKING_COMPANY", "KOCHAVA", "ADJUST", "MAT", "MOLOCO_PIXEL", "APPSFLYER", "ADBRIX", "WEB", "GENERIC", "TRACKFNT", "AIRBRIDGE", "MOLOCO_E2E", "APSALAR", "BRANCH", "TENJIN", "SINGULAR", "ADBRIX_V2", "TRAFFICGUARD", "GAMELOFT", "SKADNETWORK", "MYTRACKER", "MOLOCO_RMP", "MOLOCO_PIXEL_V2", "JUSTTRACK", "SHOPEE", "KOCHAVA_FOR_PUBLISHER", "GAMESIGHT", "CAULY", "HASOFFER", "ADACTION", "CURATE"]); export const dspCampaignGoalType = z.enum(["UNKNOWN_TYPE", "OPTIMIZE_NONE", "FIXED_CPM_FOR_APP_UA", "FIXED_CPM_FOR_APP_RE", "OPTIMIZE_CPI_FOR_APP_UA", "OPTIMIZE_CPA_FOR_APP_UA", "OPTIMIZE_CPC_FOR_APP_UA", "OPTIMIZE_ROAS_FOR_APP_UA", "OPTIMIZE_ROAS_FOR_APP_RE", "OPTIMIZE_CPC_FOR_APP_RE", "OPTIMIZE_CPC_FOR_WEB_VISIT", "OPTIMIZE_APP_INSTALLS", "OPTIMIZE_APP_ROAS", "OPTIMIZE_CLICKS_TO_WEB", "OPTIMIZE_CLICKS_TO_APP", "OPTIMIZE_CPA_FOR_APP_RE", "OPTIMIZE_RETENTION_FOR_APP_UA", "OPTIMIZE_REATTRIBUTION_FOR_APP", "OPTIMIZE_CPA_REPEATED_FOR_APP_UA", "FIXED_CPM_GENERIC", "FIXED_CPM_FOR_CTV", "FIXED_CPM_FOR_WEB_VISIT", "OPTIMIZE_LANDING_FOR_WEB_UA", "OPTIMIZE_CPA_FOR_WEB_UA"]); export const campaignGoalOptimizeAppInstallsMode = z.enum(["UNKNOWN_MODE", "TARGET_CPI_CENTRIC", "BUDGET_CENTRIC", "MARGIN_CENTRIC", "FIXED"]); export const campaignGoalOptimizeAppInstalls = z.object({mode: campaignGoalOptimizeAppInstallsMode.optional(), target_cpi: adcloudcommonMoney.optional(), rate: z.number().optional(), margin: z.number().optional()}); export const campaignGoalOptimizeCpaForAppUaMode = z.enum(["UNKNOWN_MODE", "BUDGET_CENTRIC", "MARGIN_CENTRIC", "TARGET_PRIMARY_KPI_CENTRIC"]); export const campaignGoalOptimizeCpaForAppUa = z.object({action: z.string(), mode: campaignGoalOptimizeCpaForAppUaMode.optional(), rate: z.number().optional(), margin: z.number().optional(), target_kpi: adcloudcommonMoney.optional()}); export const campaignGoalOptimizeAppRoasMode = z.enum(["UNKNOWN_MODE", "BUDGET_CENTRIC", "MARGIN_CENTRIC", "TARGET_PRIMARY_KPI_CENTRIC"]); export const campaignGoalOptimizeAppRoas = z.object({target_roas: z.number().optional(), revenue_actions: z.array(z.string()), target_cpi: adcloudcommonMoney.optional(), mode: campaignGoalOptimizeAppRoasMode.optional(), rate: z.number().optional(), margin: z.number().optional()}); export const campaignGoalOptimizeClicksToWebMode = z.enum(["UNKNOWN_MODE", "BUDGET_CENTRIC", "TARGET_CPC_CENTRIC"]); export const campaignGoalOptimizeClicksToWeb = z.object({target_cpc: adcloudcommonMoney.optional(), mode: campaignGoalOptimizeClicksToWebMode.optional(), rate: z.number().optional()}); export const campaignGoalOptimizeClicksToAppMode = z.enum(["UNKNOWN_MODE", "BUDGET_CENTRIC", "TARGET_CPC_CENTRIC"]); export const campaignGoalOptimizeClicksToApp = z.object({target_cpc: adcloudcommonMoney.optional(), mode: campaignGoalOptimizeClicksToAppMode.optional(), rate: z.number().optional()}); export const campaignGoalOptimizeRoasForAppRe = z.object({target_roas: z.number().optional(), reengagement_action: z.string().optional(), revenue_actions: z.array(z.string()), rate: z.number().optional()}); export const campaignGoalOptimizeCpcForAppReMode = z.enum(["UNKNOWN_MODE", "BUDGET_CENTRIC", "TARGET_CPC_CENTRIC"]); export const campaignGoalOptimizeCpcForAppRe = z.object({target_cpc: adcloudcommonMoney.optional(), reengagement_action: z.string().optional(), mode: campaignGoalOptimizeCpcForAppReMode.optional(), rate: z.number().optional()}); export const campaignGoalOptimizeFixedCpm = z.object({target_cpm: adcloudcommonMoney}); export const campaignGoalOptimizeCpaForAppReMode = z.enum(["UNKNOWN_MODE", "BUDGET_CENTRIC"]); export const campaignGoalOptimizeCpaForAppRe = z.object({action: z.string(), reengagement_action: z.string().optional(), mode: campaignGoalOptimizeCpaForAppReMode.optional(), rate: z.number().optional()}); export const campaignGoalOptimizeAppRetentionMode = z.enum(["UNKNOWN_MODE", "BUDGET_CENTRIC", "MARGIN_CENTRIC"]); export const campaignGoalOptimizeAppRetention = z.object({mode: campaignGoalOptimizeAppRetentionMode.optional(), target_cpi: adcloudcommonMoney.optional(), rate: z.number().optional(), margin: z.number().optional()}); export const campaignGoalOptimizeAppReattributionMode = z.enum(["UNKNOWN_MODE", "BUDGET_CENTRIC"]); export const campaignGoalOptimizeAppReattribution = z.object({mode: campaignGoalOptimizeAppReattributionMode.optional(), rate: z.number().optional()}); export const campaignGoalOptimizeCpaRepeatedForAppUaMode = z.enum(["UNKNOWN_MODE", "BUDGET_CENTRIC"]); export const campaignGoalOptimizeCpaRepeatedForAppUa = z.object({action: z.string(), mode: campaignGoalOptimizeCpaRepeatedForAppUaMode.optional(), rate: z.number().optional()}); export const campaignGoalOptimizeFixedCpmPacingPacingMode = z.enum(["NONE", "BY_FREQUENCY"]); export const campaignGoalOptimizeFixedCpmPacing = z.object({target_cpm: adcloudcommonMoney, pacing_mode: campaignGoalOptimizeFixedCpmPacingPacingMode.optional(), rate: z.number().optional()}); export const campaignGoalOptimizeLandingForWebUaMode = z.enum(["UNKNOWN_MODE", "BUDGET_CENTRIC"]); export const campaignGoalOptimizeLandingForWebUa = z.object({mode: campaignGoalOptimizeLandingForWebUaMode.optional(), rate: z.number().optional()}); export const campaignGoalOptimizeCpaForWebUaMode = z.enum(["UNKNOWN_MODE", "BUDGET_CENTRIC"]); export const campaignGoalOptimizeCpaForWebUa = z.object({action: z.string(), mode: campaignGoalOptimizeCpaForWebUaMode.optional(), rate: z.number().optional()}); export const dspCampaignGoal = z.object({type: dspCampaignGoalType, optimize_app_installs: campaignGoalOptimizeAppInstalls.optional(), optimize_cpa_for_app_ua: campaignGoalOptimizeCpaForAppUa.optional(), optimize_app_roas: campaignGoalOptimizeAppRoas.optional(), optimize_clicks_to_web: campaignGoalOptimizeClicksToWeb.optional(), optimize_clicks_to_app: campaignGoalOptimizeClicksToApp.optional(), optimize_roas_for_app_re: campaignGoalOptimizeRoasForAppRe.optional(), optimize_cpc_for_app_re: campaignGoalOptimizeCpcForAppRe.optional(), optimize_fixed_cpm: campaignGoalOptimizeFixedCpm.optional(), optimize_cpa_for_app_re: campaignGoalOptimizeCpaForAppRe.optional(), optimize_app_retention: campaignGoalOptimizeAppRetention.optional(), optimize_app_reattribution: campaignGoalOptimizeAppReattribution.optional(), optimize_cpa_repeated_for_app_ua: campaignGoalOptimizeCpaRepeatedForAppUa.optional(), optimize_fixed_cpm_pacing: campaignGoalOptimizeFixedCpmPacing.optional(), optimize_landing_for_web_ua: campaignGoalOptimizeLandingForWebUa.optional(), optimize_cpa_for_web_ua: campaignGoalOptimizeCpaForWebUa.optional(), kpi_actions: z.array(z.string()).optional()}); export const sKAdNetworkInputTargetingState = z.enum(["UNKNOWN_TARGETING_STATE", "TARGET_DO_NOT_CARE", "TARGET_ALL", "TARGET_SKADN_ONLY", "TARGET_NON_SKADN_ONLY", "TARGET_CUSTOM"]); export const sKAdNetworkInputCustomOption = z.enum(["UNKNOWN_SKAN_CUSTOM_OPTION", "SKAN_CUSTOM_OPTION_MMP_ATTRIBUTABLE", "SKAN_CUSTOM_OPTION_BI_ATTRIBUTABLE", "SKAN_CUSTOM_OPTION_NON_ATTRIBUTABLE", "SKAN_CUSTOM_OPTION_SKAN_ATTRIBUTABLE"]); export const dspSKAdNetworkInput = z.object({targeting_state: sKAdNetworkInputTargetingState.optional(), include_traffic_without_attributions: z.boolean().optional(), custom_options: z.array(sKAdNetworkInputCustomOption).optional(), prefer_mmp_attribution: z.boolean().optional()}); export const dspAdTrackingAllowance = z.enum(["UNKNOWN_AD_TRACKING_ALLOWANCE", "NON_LAT_ONLY", "LAT_ONLY", "DO_NOT_CARE"]); export const campaignServingStatus = z.object({serving_blocked: z.boolean().optional(), serving_blocked_timestamp: z.string().optional()}); export const launchNoticeNoticeType = z.enum(["UNKNOWN", "WARNING", "DISCLAIMER"]); export const launchNoticeNoticeMessage = z.enum(["UNKNOWN_MESSAGE", "MMP_PROBABILISTIC_ATTRIBUTION_STATUS_DISABLED", "MMP_VIEW_THROUGH_PROBABILISTIC_ATTRIBUTION_STATUS_DISABLED", "MMP_ADVANCED_PRIVACY_STATUS_ENABLED", "MMP_PROBABILISTIC_ATTRIBUTION_STATUS_UNKNOWN", "CAMPAIGN_WILL_PAUSE_IF_ADVANCED_PRIVACY_ENABLED_AFTER_48H"]); export const commonLaunchNotice = z.object({type: launchNoticeNoticeType.optional(), message: launchNoticeNoticeMessage.optional()}); export const dspCampaign = z.object({id: z.string().optional(), ad_account_id: z.string().optional(), product_id: z.string().optional(), title: z.string(), description: z.string().optional(), enabling_state: commonEnablingState.optional(), type: dspCampaignType, device_os: commonDeviceOs, state: dspCampaignState.optional(), countries: z.array(z.string()), currency: adcloudcommonCurrency.optional(), schedule: commonTimeInterval, budget_schedule: dspBudgetSchedule.optional(), tracking_company: adcloudcommonTrackingCompany.optional(), tracking_link_id: z.string().optional(), landing_url: z.string().optional(), goal: dspCampaignGoal, skadn_input: dspSKAdNetworkInput.optional(), custom_key_values: z.record(z.string(), z.string()).optional(), ad_tracking_allowance: dspAdTrackingAllowance.optional(), is_deleted: z.boolean().optional(), auto_delete_at: z.string().optional(), created_at: z.string().optional(), updated_at: z.string().optional(), serving_status: campaignServingStatus.optional(), launch_notices: z.array(commonLaunchNotice).optional(), launch_notice_confirmations: z.array(commonLaunchNotice).optional()}); export const audienceTargetingConditionPlacementReason = z.enum(["UNKNOWN_PLACEMENT_REASON", "REASON_BRAND_SAFETY", "REASON_PERFORMANCE_IMPROVEMENT", "REASON_AGE_RESTRICTION", "REASON_FRAUD", "REASON_OWN_APP_CROSS_PROMOTION_BLOCKING", "REASON_NOT_OPERATING_IN_A_SPECIFIC_LOCATION", "REASON_INCREMENTALITY_TESTING", "REASON_OTHER"]); export const adcloudcommonCreativeType = z.enum(["UNKNOWN_CREATIVE_TYPE", "IMAGE_BANNER", "IMAGE_INTERSTITIAL", "VIDEO_BANNER", "VIDEO_INTERSTITIAL", "NATIVE_LOGO", "NATIVE_VIDEO", "NATIVE_IMAGE", "CUSTOM_HTML_BANNER", "CUSTOM_HTML_INTERSTITIAL", "TEMPLATE_HTML_BANNER", "TEMPLATE_HTML_INTERSTITIAL", "RICH_CUSTOM_HTML_BANNER", "RICH_CUSTOM_HTML_INTERSTITIAL", "DYNAMIC_HTML_BANNER", "DYNAMIC_HTML_INTERSTITIAL"]); export const commonLatLng = z.object({latitude: z.number().optional(), longitude: z.number().optional()}); export const commonCircle = z.object({center: commonLatLng.optional(), radius: z.number().optional()}); export const commonAdExchange = z.enum(["UNKNOWN_AD_EXCHANGE", "MOPUB", "ADX", "ADMIXER", "SMAATO", "RUBICON", "EXELBID", "BRIGHTROLL", "CAULYRTB", "ADLIB", "ORION", "MOLOCO", "ADOP", "APPLOVIN", "FYBER", "SAMSUNG", "ADCOLONY", "POLYMORPH", "CHARTBOOST", "MANPLUS", "KAKAO", "UNITY", "FYBERCORE", "ADGENERATION", "SAMSUNGPAY", "NHN", "ADPOPCORN", "OPENX", "VUNGLE", "ADALPHA", "BYTEDANCE", "NAVER", "INMOBI", "SIGNALPLAY", "ACUITY", "IRONSOURCE", "PUBMATIC", "BAIDU", "FLUCT", "FIVE", "APPODEAL", "ADPIE", "MOBILITYWARE", "TPMN", "PUBNATIVE", "TAPJOY", "MOMENTO", "BIDENCE", "APS", "INDEX", "IQZONE", "STARTIO", "FLOWER", "ONESTORE", "NIMBUS", "AEQUUS", "MCTV", "MINTEGRAL", "MOLOCO_SDK_APPLOVIN", "MOLOCO_SDK_IRONSOURCE", "PANGLE", "MAGNITE", "MOLOCO_SDK_X3MADS", "FREE_WHEEL", "MOLOCO_SDK_ADMOB", "ADX_RTB", "XIAOMI", "MOLOCO_SDK_CREATIVE_TEST", "MOLOCO_SDK_MAX", "MOLOCO_SDK_LEVELPLAY", "NEXXEN", "MOLOCO_SDK_ADMOB_MEDIATION", "MOLOCO_SDK", "MOLOCO_SDK_IN_HOUSE_MEDIATION", "TABOOLA", "CRITEO", "MOLOCO_SDK_DIRECT_AD", "APX1", "DIRECT_AD", "BIGO", "CAS", "TUBI", "SPRINGSERVE", "PUBLICA"]); export const commonDeviceType = z.enum(["UNKNOWN_DEVICE_TYPE", "MOBILE", "PERSONAL_COMPUTER", "CONNECTED_TV", "HIGHEND_PHONE", "TABLET", "CONNECTED_DEVICE", "SET_TOP_BOX"]); export const adcloudcommonEventType = z.enum(["UNKNOWN_EVENT_TYPE", "BID_MADE", "BID_WON", "IMPRESSION", "IMPRESSION_EXTRA", "CLICK", "INSTALL", "CUSTOM"]); export const audienceTargetingConditionRecentCampaignActivityFilter = z.object({event: adcloudcommonEventType, campaign_id: z.string(), last_n_days: z.number().int()}); export const audienceTargetingConditionLocationFilter = z.object({cities: z.array(z.string()).optional(), regions: z.array(z.string()).optional(), zipcodes: z.array(z.string()).optional(), geofences: z.array(commonCircle).optional()}); export const commonGender = z.enum(["UNKNOWN_GENDER", "FEMALE", "MALE"]); export const audienceTargetingConditionDeviceOsFilter = z.object({os: commonDeviceOs, min_version: z.string().optional(), max_version: z.string().optional()}); export const audienceTargetingConditionMediaChannelType = z.enum(["UNKNOWN_MEDIA_CHANNEL_TYPE", "APP", "WEB"]); export const audienceTargetingConditionNewUserFilter = z.object({last_n_days: z.number().int()}); export const commonAdvertiserIdType = z.enum(["UNKNOWN_ADVERTISER_ID_TYPE", "ANDROID_IDFA", "IOS_IDFA", "GENERIC_USER_ID", "GENERIC_DEVICE_ID", "ANDROID_LAT_IDFA", "IOS_LAT_IDFA"]); export const dspAudienceTargetingConditionVideoType = z.enum(["UNKNOWN_VIDEO_TYPE", "REWARD_VIDEO", "NON_REWARD_VIDEO", "NON_VIDEO"]); export const adcloudcommonTimezonePolicy = z.enum(["UNKNOWN_TIME", "DEVICE_TIME", "UTC_TIME", "AD_ACCOUNT_TIME", "ADVERTISER_TIME"]); export const adcloudcommonInterval = z.object({start: z.number().int().optional(), end: z.number().int().optional()}); export const adcloudcommonDayOfWeek = z.enum(["UNKNOWN_DAY_OF_WEEK", "MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"]); export const audienceTargetingConditionWeeklyScheduleFilter = z.object({timezone_policy: adcloudcommonTimezonePolicy.optional(), hour_range: adcloudcommonInterval.optional(), days: z.array(adcloudcommonDayOfWeek)}); export const adcloudcommonFloatingPointRange = z.object({start: z.number().optional(), end: z.number().optional()}); export const commonBannerApi = z.enum(["UNKNOWN_BANNER_API", "MRAID_2"]); export const commonAudienceData = z.object({provider: z.string().optional(), condition: z.string().optional()}); export const commonPostbackEventCount = z.object({app_bundle: z.string().optional(), range: adcloudcommonInterval.optional(), events: z.array(z.string()).optional()}); export const commonTagsThrottleCondition = z.object({tags: z.array(z.string()).optional(), throttle_rate: z.number().optional()}); export const commonDisplayManagerVersion = z.object({min: z.string().optional(), max: z.string().optional()}); export const commonTimeUnit = z.enum(["UNKNOWN_TIME_UNIT", "MINUTE", "HOUR", "DAY", "WEEK"]); export const commonPostbackEventsCondition = z.object({audiences: z.array(z.string()).optional(), events: z.array(z.string()).optional(), past_time_range: adcloudcommonInterval.optional(), past_time_range_unit: commonTimeUnit.optional(), range: commonTimeInterval.optional(), short_term_user_profile: z.boolean().optional(), count_range: adcloudcommonInterval.optional()}); export const locationSetZipCodeSet = z.object({zipcodes: z.array(z.string()).optional(), country: z.string().optional()}); export const audienceTargetingConditionLocationSet = z.object({osm_ids: z.array(z.string()).optional(), zipcodes: z.array(locationSetZipCodeSet).optional()}); export const audienceTargetingConditionCoppaAcceptance = z.enum(["UNKNOWN_COPPA", "ACCEPT_COPPA_ONLY", "DENY_COPPA"]); export const audienceTargetingConditionSkanTraffic = z.enum(["UNKNOWN_SKAN", "TARGET_SKAN_ONLY", "TARGET_NON_SKAN"]); export const commonTimeDuration = z.object({amount: z.string().optional(), unit: commonTimeUnit.optional()}); export const customAudienceSetAppEvent = z.object({product_id: z.string().optional(), event: z.string().optional(), sliding_window_duration: commonTimeDuration.optional()}); export const customAudienceSetApp = z.object({product_id: z.string().optional(), sliding_window_duration: commonTimeDuration.optional()}); export const customAudienceSetCustomAudienceCondition = z.object({app_events: z.array(customAudienceSetAppEvent).optional(), user_lists: z.array(z.string()).optional(), apps: z.array(customAudienceSetApp).optional()}); export const audienceTargetingConditionCustomAudienceSet = z.object({include_having_all: customAudienceSetCustomAudienceCondition.optional(), include_having_any: customAudienceSetCustomAudienceCondition.optional(), exclude_having_all: customAudienceSetCustomAudienceCondition.optional(), exclude_having_any: customAudienceSetCustomAudienceCondition.optional()}); export const dspAudienceTargetingCondition = z.object({allowed_countries: z.array(z.string()).optional(), blocked_countries: z.array(z.string()).optional(), placement_reasons: z.array(audienceTargetingConditionPlacementReason).optional(), custom_placement_reason: z.string().optional(), allowed_app_bundles: z.array(z.string()).optional(), blocked_app_bundles: z.array(z.string()).optional(), allowed_content_categories: z.array(z.string()).optional(), blocked_content_categories: z.array(z.string()).optional(), allowed_cities: z.array(z.string()).optional(), blocked_cities: z.array(z.string()).optional(), allowed_creative_types: z.array(adcloudcommonCreativeType).optional(), blocked_creative_types: z.array(adcloudcommonCreativeType).optional(), allowed_websites: z.array(z.string()).optional(), blocked_websites: z.array(z.string()).optional(), allowed_geofences: z.array(commonCircle).optional(), blocked_geofences: z.array(commonCircle).optional(), allowed_exchanges: z.array(commonAdExchange).optional(), blocked_exchanges: z.array(commonAdExchange).optional(), allowed_idfas: z.array(z.string()).optional(), blocked_idfas: z.array(z.string()).optional(), allowed_zipcodes: z.array(z.string()).optional(), blocked_zipcodes: z.array(z.string()).optional(), allowed_device_models: z.array(z.string()).optional(), blocked_device_models: z.array(z.string()).optional(), allowed_user_audience_tags: z.array(z.string()).optional(), blocked_user_audience_tags: z.array(z.string()).optional(), allowed_languages: z.array(z.string()).optional(), blocked_languages: z.array(z.string()).optional(), allowed_device_types: z.array(commonDeviceType).optional(), blocked_device_types: z.array(commonDeviceType).optional(), allowed_mostly_visited_countries: z.array(z.string()).optional(), blocked_mostly_visited_countries: z.array(z.string()).optional(), allowed_regions: z.array(z.string()).optional(), blocked_regions: z.array(z.string()).optional(), allowed_recent_campaign_activities: z.array(audienceTargetingConditionRecentCampaignActivityFilter).optional(), blocked_recent_campaign_activities: z.array(audienceTargetingConditionRecentCampaignActivityFilter).optional(), allowed_locations: z.array(audienceTargetingConditionLocationFilter).optional(), blocked_locations: z.array(audienceTargetingConditionLocationFilter).optional(), genders: z.array(commonGender).optional(), connection_types: z.array(z.string()).optional(), allowed_direct_deal_ids: z.array(z.string()).optional(), blocked_direct_deal_ids: z.array(z.string()).optional(), device_oses: z.array(audienceTargetingConditionDeviceOsFilter).optional(), media_channel_type: audienceTargetingConditionMediaChannelType.optional(), new_users: audienceTargetingConditionNewUserFilter.optional(), advertiser_id_types: z.array(commonAdvertiserIdType).optional(), allowed_video_types: z.array(dspAudienceTargetingConditionVideoType).optional(), blocked_video_types: z.array(dspAudienceTargetingConditionVideoType).optional(), weekly_schedules: z.array(audienceTargetingConditionWeeklyScheduleFilter).optional(), allowed_gender_score: adcloudcommonFloatingPointRange.optional(), blocked_gender_score: adcloudcommonFloatingPointRange.optional(), allowed_ages: z.array(adcloudcommonInterval).optional(), blocked_ages: z.array(adcloudcommonInterval).optional(), allowed_ip_ranges: z.array(z.string()).optional(), blocked_ip_ranges: z.array(z.string()).optional(), allowed_device_carriers: z.array(z.string()).optional(), blocked_device_carriers: z.array(z.string()).optional(), allowed_keywords: z.array(z.string()).optional(), blocked_keywords: z.array(z.string()).optional(), user_buckets: z.array(adcloudcommonInterval).optional(), allowed_ad_units: z.array(z.string()).optional(), blocked_ad_units: z.array(z.string()).optional(), allowed_placements: z.array(z.string()).optional(), blocked_placements: z.array(z.string()).optional(), allowed_banner_apis: z.array(commonBannerApi).optional(), blocked_banner_apis: z.array(commonBannerApi).optional(), schedule: commonTimeInterval.optional(), audience_data: commonAudienceData.optional(), allowed_apps_by_checksum: z.array(z.string()).optional(), blocked_apps_by_checksum: z.array(z.string()).optional(), allowed_postback_event_counts: z.array(commonPostbackEventCount).optional(), auction_types: z.array(z.string()).optional(), throttle_apt_tags: commonTagsThrottleCondition.optional(), allowed_dev_makes: z.array(z.string()).optional(), blocked_dev_makes: z.array(z.string()).optional(), display_manager_versions: z.array(commonDisplayManagerVersion).optional(), allowed_audiences: z.array(z.string()).optional(), blocked_audiences: z.array(z.string()).optional(), allowed_postback_has_all_events_conditions: z.array(commonPostbackEventsCondition).optional(), blocked_postback_has_all_events_conditions: z.array(commonPostbackEventsCondition).optional(), allowed_postback_has_any_events_conditions: z.array(commonPostbackEventsCondition).optional(), blocked_postback_has_any_events_conditions: z.array(commonPostbackEventsCondition).optional(), allowed_location_set: audienceTargetingConditionLocationSet.optional(), blocked_location_set: audienceTargetingConditionLocationSet.optional(), allowed_apt_tags: z.array(z.string()).optional(), blocked_apt_tags: z.array(z.string()).optional(), coppa_acceptance: audienceTargetingConditionCoppaAcceptance.optional(), skan_traffic: audienceTargetingConditionSkanTraffic.optional(), contains_custom_audience: z.boolean().optional(), custom_audience_set: audienceTargetingConditionCustomAudienceSet.optional()}); export const adclouddspAudience = z.object({shared_audience_target_ids: z.array(z.string()).optional(), targeting_condition: dspAudienceTargetingCondition.optional()}); export const adclouddspAdCapper = z.object({imp_interval: commonTimeDuration.optional()}); export const dspAdGroupAudienceExtension = z.object({paired_ad_group_id: z.string().optional(), is_secondary: z.boolean().optional()}); export const dspAdGroup = z.object({id: z.string().optional(), title: z.string(), campaign_id: z.string().optional(), product_id: z.string().optional(), ad_account_id: z.string().optional(), experiment_id: z.string().optional(), enabling_state: commonEnablingState.optional(), audience: adclouddspAudience.optional(), capper: adclouddspAdCapper.optional(), pricing_model_id: z.string().optional(), creative_group_ids: z.array(z.string()).optional(), user_buckets: z.array(adcloudcommonInterval).optional(), audience_extension: dspAdGroupAudienceExtension.optional(), created_at: z.string().optional(), updated_at: z.string().optional(), aud_size: z.string().optional(), matchable_aud_size: z.string().optional(), last_aud_size_computed_at: z.string().optional()}); export const dspPostbackIntegrationStatus = z.object({device_os: commonDeviceOs.optional(), country: z.string().optional(), complete_percentage: z.number().optional(), integration_success: z.boolean().optional()}); export const messagesCreateCampaignResponse = z.object({campaign: dspCampaign.optional(), ad_groups: z.array(dspAdGroup).optional(), postback_integration_status: dspPostbackIntegrationStatus.optional()}); export const validateResponse = async ( schema: { readonly '~standard': { readonly validate: (value: unknown) => ({ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }) | Promise<{ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }> } }, value: unknown ): Promise => { const result = await schema['~standard'].validate(value) if (result.issues !== undefined) { const detail = result.issues .map(({ message, path }) => path?.length ? `${path.map((segment) => String(typeof segment === 'object' ? segment.key : segment)).join('.')}: ${message}` : message ) .join('; ') throw new Error(`Response does not match the schema: ${detail}`, { cause: { issues: result.issues } }) } return result.value }; /** * Create a new Campaign. * * POST /cm/v1/campaigns */ export const createApiCmV1Campaigns = async (args: CreateApiCmV1CampaignsArgs, options?: CreateApiCmV1CampaignsOptions) => { const {baseUrl = "https://api.moloco.cloud", fetch: fetchFn = fetch, Bearer} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('content-type', "application/json") headers.set('accept', "application/json") if (args.ad_account_id != null) query.append("ad_account_id", String(args.ad_account_id)) if (args.product_id != null) query.append("product_id", String(args.product_id)) if (Bearer !== undefined) headers.set("Authorization", Bearer) const url = `${baseUrl.replace(/\/+$/, '')}/cm/v1/campaigns${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "POST", headers, body: JSON.stringify(args.body)}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return validateResponse(messagesCreateCampaignResponse, await res.json()) };