{"openapi": "3.1.0", "info": {"title": "Tracify Analytics API", "version": "1.0.0", "description": "Tracify's Analytics API allows you to query attribution and metrics data from your account."}, "paths": {"/analytics/api/v1/kpis/overview/": {"get": {"operationId": "analytics_api_kpis_v1_kpis_overview", "summary": "Kpis Overview", "parameters": [{"in": "query", "name": "csids", "schema": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "required": true}, {"in": "query", "name": "preset_id", "schema": {"title": "Preset Id", "type": "string"}, "required": true}, {"in": "query", "name": "start_date", "schema": {"format": "date", "title": "Start Date", "type": "string"}, "required": true}, {"in": "query", "name": "end_date", "schema": {"format": "date", "title": "End Date", "type": "string"}, "required": true}, {"in": "query", "name": "granularity", "schema": {"allOf": [{"enum": ["daily", "weekly", "monthly", "none"], "title": "Granularity", "type": "string"}], "default": "none", "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, "required": false, "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, {"in": "query", "name": "requested_metrics", "schema": {"description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Requested Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned."}, {"in": "query", "name": "granularity_only_metrics", "schema": {"description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Granularity Only Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required."}, {"in": "query", "name": "daily_only_metrics", "schema": {"description": "DEPRECIATED. Please begin to use granularity only metrics.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Daily Only Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "DEPRECIATED. Please begin to use granularity only metrics."}, {"in": "query", "name": "use_simple_touchpoint_window", "schema": {"default": true, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset.", "title": "Use Simple Touchpoint Window", "type": "boolean"}, "required": false, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset."}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/KpiOverviewSchemaOut"}}}}}, "description": "Get an overview of KPIs overall and by day for new, returning and total.", "tags": ["kpis"], "security": [{"OrgApiTokenAuth": []}, {"HiveApiKey": []}]}}, "/analytics/api/v1/kpis/channels/": {"get": {"operationId": "analytics_api_kpis_v1_kpis_channels", "summary": "Kpis Channels", "parameters": [{"in": "query", "name": "csids", "schema": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "required": true}, {"in": "query", "name": "preset_id", "schema": {"title": "Preset Id", "type": "string"}, "required": true}, {"in": "query", "name": "start_date", "schema": {"format": "date", "title": "Start Date", "type": "string"}, "required": true}, {"in": "query", "name": "end_date", "schema": {"format": "date", "title": "End Date", "type": "string"}, "required": true}, {"in": "query", "name": "granularity", "schema": {"allOf": [{"enum": ["daily", "weekly", "monthly", "none"], "title": "Granularity", "type": "string"}], "default": "none", "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, "required": false, "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, {"in": "query", "name": "requested_metrics", "schema": {"description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Requested Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned."}, {"in": "query", "name": "granularity_only_metrics", "schema": {"description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Granularity Only Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required."}, {"in": "query", "name": "daily_only_metrics", "schema": {"description": "DEPRECIATED. Please begin to use granularity only metrics.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Daily Only Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "DEPRECIATED. Please begin to use granularity only metrics."}, {"in": "query", "name": "use_simple_touchpoint_window", "schema": {"default": true, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset.", "title": "Use Simple Touchpoint Window", "type": "boolean"}, "required": false, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset."}, {"in": "query", "name": "channels", "schema": {"anyOf": [{"items": {"type": "string"}, "type": "array", "uniqueItems": true}, {"type": "null"}], "description": "Specify which channels to provide in the response. Defaults to all channels configured for the organisation.", "title": "Channels"}, "required": false, "description": "Specify which channels to provide in the response. Defaults to all channels configured for the organisation."}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/KpiChannelsSchemaOut"}}}}}, "description": "Get an overview of KPIs by channel and by day for new, returning and total.", "tags": ["kpis"], "security": [{"OrgApiTokenAuth": []}, {"HiveApiKey": []}]}}, "/analytics/api/v1/kpis/channels/{channel}/": {"get": {"operationId": "analytics_api_kpis_v1_kpis_specific_channel", "summary": "Kpis Specific Channel", "parameters": [{"in": "path", "name": "channel", "schema": {"title": "Channel", "type": "string"}, "required": true}, {"in": "query", "name": "csids", "schema": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "required": true}, {"in": "query", "name": "preset_id", "schema": {"title": "Preset Id", "type": "string"}, "required": true}, {"in": "query", "name": "start_date", "schema": {"format": "date", "title": "Start Date", "type": "string"}, "required": true}, {"in": "query", "name": "end_date", "schema": {"format": "date", "title": "End Date", "type": "string"}, "required": true}, {"in": "query", "name": "granularity", "schema": {"allOf": [{"enum": ["daily", "weekly", "monthly", "none"], "title": "Granularity", "type": "string"}], "default": "none", "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, "required": false, "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, {"in": "query", "name": "requested_metrics", "schema": {"description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Requested Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned."}, {"in": "query", "name": "granularity_only_metrics", "schema": {"description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Granularity Only Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required."}, {"in": "query", "name": "daily_only_metrics", "schema": {"description": "DEPRECIATED. Please begin to use granularity only metrics.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Daily Only Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "DEPRECIATED. Please begin to use granularity only metrics."}, {"in": "query", "name": "use_simple_touchpoint_window", "schema": {"default": true, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset.", "title": "Use Simple Touchpoint Window", "type": "boolean"}, "required": false, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset."}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/KpiChannelSchemaOut"}}}}}, "description": "Get an overview of KPIs for a specific channel.", "tags": ["kpis"], "security": [{"OrgApiTokenAuth": []}, {"HiveApiKey": []}]}}, "/analytics/api/v1/kpis/channels/{channel}/exports": {"get": {"operationId": "analytics_api_kpis_v1_create_kpi_channel_breakdown_export_job", "summary": "Create Kpi Channel Breakdown Export Job", "parameters": [{"in": "path", "name": "channel", "schema": {"title": "Channel", "type": "string"}, "required": true}, {"in": "query", "name": "breakdown_dimensions", "schema": {"items": {"description": "A channel can be broken down in different ways.", "enum": ["campaign", "adset", "ad", "keyword", "asset_group", "creative", "advertising_channel_type", "influencer", "cooperation", "cooperation_link", "influencer_channel"], "title": "ChannelBreakdownDimension", "type": "string"}, "title": "Breakdown Dimensions", "type": "array"}, "required": true}, {"in": "query", "name": "csids", "schema": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "required": true}, {"in": "query", "name": "preset_id", "schema": {"title": "Preset Id", "type": "string"}, "required": true}, {"in": "query", "name": "start_date", "schema": {"format": "date", "title": "Start Date", "type": "string"}, "required": true}, {"in": "query", "name": "end_date", "schema": {"format": "date", "title": "End Date", "type": "string"}, "required": true}, {"in": "query", "name": "granularity", "schema": {"allOf": [{"enum": ["daily", "weekly", "monthly", "none"], "title": "Granularity", "type": "string"}], "default": "none", "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, "required": false, "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, {"in": "query", "name": "requested_metrics", "schema": {"description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Requested Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned."}, {"in": "query", "name": "granularity_only_metrics", "schema": {"description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Granularity Only Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required."}, {"in": "query", "name": "daily_only_metrics", "schema": {"description": "DEPRECIATED. Please begin to use granularity only metrics.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Daily Only Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "DEPRECIATED. Please begin to use granularity only metrics."}, {"in": "query", "name": "use_simple_touchpoint_window", "schema": {"default": true, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset.", "title": "Use Simple Touchpoint Window", "type": "boolean"}, "required": false, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset."}, {"in": "query", "name": "offset", "schema": {"default": 0, "description": "The entry to begin providing data from.", "title": "Offset", "type": "integer"}, "required": false, "description": "The entry to begin providing data from."}, {"in": "query", "name": "limit", "schema": {"default": 25, "description": "The maximum number of entries to provide, based on the requested breakdown dimension, not on nvr_columns or date. For example, a limit of 10 with a breakdown_dimension of AD returns 10 distinct ads, though those rows may span many dates and/or new/returning/total buckets. Pagination is distinct for each channel.", "maximum": 10000, "minimum": 0, "title": "Limit", "type": "integer"}, "required": false, "description": "The maximum number of entries to provide, based on the requested breakdown dimension, not on nvr_columns or date. For example, a limit of 10 with a breakdown_dimension of AD returns 10 distinct ads, though those rows may span many dates and/or new/returning/total buckets. Pagination is distinct for each channel."}, {"in": "query", "name": "sort_by", "schema": {"description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning). Sorting is distinct for each channel.", "items": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewMetric"}, {"$ref": "#/components/schemas/ExtraSortField"}]}, "title": "Sort By", "type": "array"}, "required": false, "description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning). Sorting is distinct for each channel."}, {"in": "query", "name": "descending", "schema": {"default": false, "title": "Descending", "type": "boolean"}, "required": false}, {"in": "query", "name": "filter_and_sort_target", "schema": {"allOf": [{"description": "Possible values of customer_type and visitor_type.", "enum": ["new", "returning", "total"], "title": "UserType", "type": "string"}], "default": "total", "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}, "required": false, "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}, {"in": "query", "name": "filters", "schema": {"default": "[]", "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```", "title": "Filters", "type": "string"}, "required": false, "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```"}, {"in": "query", "name": "export_format", "schema": {"allOf": [{"description": "The format to use when exporting events.", "enum": ["csv", "parquet"], "title": "ExportFormat", "type": "string"}], "default": "csv", "description": "The export file format. Defaults to CSV."}, "required": false, "description": "The export file format. Defaults to CSV."}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/EventAsyncExportJobSchemaOut"}}}}}, "description": "Create an async export job for KPI channel data.\n\nPass one or more `breakdown_dimensions` (e.g. `campaign`, `adset`). A single dimension is\nexported as one file; multiple dimensions are each exported separately and bundled into one ZIP.\n\nRate limits apply per requested set of csids.", "tags": ["kpis"], "security": [{"OrgApiTokenAuth": []}, {"HiveApiKey": []}]}}, "/analytics/api/v1/kpis/channels/{channel}/exports/{task_id}": {"get": {"operationId": "analytics_api_kpis_v1_get_kpi_channel_breakdown_export_job", "summary": "Get Kpi Channel Breakdown Export Job", "parameters": [{"in": "path", "name": "channel", "schema": {"title": "Channel", "type": "string"}, "required": true}, {"in": "path", "name": "task_id", "schema": {"title": "Task Id", "type": "string"}, "required": true}, {"in": "query", "name": "csids", "schema": {"items": {"format": "uuid", "type": "string"}, "title": "Csids", "type": "array"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/EventAsyncExportJobSchemaOut"}}}}}, "description": "Return the current status of an asynchronous KPI channel export job.", "tags": ["kpis"], "security": [{"OrgApiTokenAuth": []}, {"HiveApiKey": []}]}}, "/analytics/api/v1/kpis/channels/{channel}/{breakdown_dimension}": {"get": {"operationId": "analytics_api_kpis_v1_kpis_channel_breakdown", "summary": "Kpis Channel Breakdown", "parameters": [{"in": "path", "name": "channel", "schema": {"title": "Channel", "type": "string"}, "required": true}, {"in": "path", "name": "breakdown_dimension", "schema": {"description": "A channel can be broken down in different ways.", "enum": ["campaign", "adset", "ad", "keyword", "asset_group", "creative", "advertising_channel_type", "influencer", "cooperation", "cooperation_link", "influencer_channel"], "title": "ChannelBreakdownDimension", "type": "string"}, "required": true, "description": "A channel can be broken down in different ways."}, {"in": "query", "name": "csids", "schema": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "required": true}, {"in": "query", "name": "preset_id", "schema": {"title": "Preset Id", "type": "string"}, "required": true}, {"in": "query", "name": "start_date", "schema": {"format": "date", "title": "Start Date", "type": "string"}, "required": true}, {"in": "query", "name": "end_date", "schema": {"format": "date", "title": "End Date", "type": "string"}, "required": true}, {"in": "query", "name": "granularity", "schema": {"allOf": [{"enum": ["daily", "weekly", "monthly", "none"], "title": "Granularity", "type": "string"}], "default": "none", "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, "required": false, "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, {"in": "query", "name": "requested_metrics", "schema": {"description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Requested Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned."}, {"in": "query", "name": "granularity_only_metrics", "schema": {"description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Granularity Only Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required."}, {"in": "query", "name": "daily_only_metrics", "schema": {"description": "DEPRECIATED. Please begin to use granularity only metrics.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Daily Only Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "DEPRECIATED. Please begin to use granularity only metrics."}, {"in": "query", "name": "use_simple_touchpoint_window", "schema": {"default": true, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset.", "title": "Use Simple Touchpoint Window", "type": "boolean"}, "required": false, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset."}, {"in": "query", "name": "offset", "schema": {"default": 0, "description": "The entry to begin providing data from.", "title": "Offset", "type": "integer"}, "required": false, "description": "The entry to begin providing data from."}, {"in": "query", "name": "limit", "schema": {"default": 25, "description": "The maximum number of entries to provide, based on the requested breakdown dimension, not on nvr_columns or date. For example, a limit of 10 with a breakdown_dimension of AD returns 10 distinct ads, though those rows may span many dates and/or new/returning/total buckets. Pagination is distinct for each channel.", "maximum": 10000, "minimum": 0, "title": "Limit", "type": "integer"}, "required": false, "description": "The maximum number of entries to provide, based on the requested breakdown dimension, not on nvr_columns or date. For example, a limit of 10 with a breakdown_dimension of AD returns 10 distinct ads, though those rows may span many dates and/or new/returning/total buckets. Pagination is distinct for each channel."}, {"in": "query", "name": "sort_by", "schema": {"description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning). Sorting is distinct for each channel.", "items": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewMetric"}, {"$ref": "#/components/schemas/ExtraSortField"}]}, "title": "Sort By", "type": "array"}, "required": false, "description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning). Sorting is distinct for each channel."}, {"in": "query", "name": "descending", "schema": {"default": false, "title": "Descending", "type": "boolean"}, "required": false}, {"in": "query", "name": "filter_and_sort_target", "schema": {"allOf": [{"description": "Possible values of customer_type and visitor_type.", "enum": ["new", "returning", "total"], "title": "UserType", "type": "string"}], "default": "total", "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}, "required": false, "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}, {"in": "query", "name": "filters", "schema": {"default": "[]", "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```", "title": "Filters", "type": "string"}, "required": false, "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```"}, {"in": "query", "name": "comparison_start_date", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Comparison Start Date"}, "required": false}, {"in": "query", "name": "comparison_end_date", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Comparison End Date"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"anyOf": [{"$ref": "#/components/schemas/KpiChannelBreakdownSchemaOut"}, {"$ref": "#/components/schemas/KpiChannelBreakdownComparisonSchemaOut"}], "title": "Response"}}}}}, "description": "Get a breakdown of KPIs for a specific channel, broken down by a particular dimension.", "tags": ["kpis"], "security": [{"OrgApiTokenAuth": []}, {"HiveApiKey": []}]}}, "/analytics/api/v1/kpis/nvr_daily_breakdown/{channel}": {"get": {"operationId": "analytics_api_kpis_v1_nvr_daily_breakdown", "summary": "Nvr Daily Breakdown", "parameters": [{"in": "path", "name": "channel", "schema": {"title": "Channel", "type": "string"}, "required": true}, {"in": "query", "name": "csids", "schema": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "required": true}, {"in": "query", "name": "preset_id", "schema": {"title": "Preset Id", "type": "string"}, "required": true}, {"in": "query", "name": "start_date", "schema": {"format": "date", "title": "Start Date", "type": "string"}, "required": true}, {"in": "query", "name": "end_date", "schema": {"format": "date", "title": "End Date", "type": "string"}, "required": true}, {"in": "query", "name": "granularity", "schema": {"allOf": [{"enum": ["daily", "weekly", "monthly", "none"], "title": "Granularity", "type": "string"}], "default": "none", "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, "required": false, "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, {"in": "query", "name": "requested_metrics", "schema": {"description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Requested Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned."}, {"in": "query", "name": "use_simple_touchpoint_window", "schema": {"default": true, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset.", "title": "Use Simple Touchpoint Window", "type": "boolean"}, "required": false, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset."}, {"in": "query", "name": "offset", "schema": {"default": 0, "description": "The entry to begin providing data from.", "title": "Offset", "type": "integer"}, "required": false, "description": "The entry to begin providing data from."}, {"in": "query", "name": "limit", "schema": {"default": 25, "description": "The maximum number of entries to provide, based on the requested breakdown dimension, not on nvr_columns or date. For example, a limit of 10 with a breakdown_dimension of AD returns 10 distinct ads, though those rows may span many dates and/or new/returning/total buckets. Pagination is distinct for each channel.", "maximum": 10000, "minimum": 0, "title": "Limit", "type": "integer"}, "required": false, "description": "The maximum number of entries to provide, based on the requested breakdown dimension, not on nvr_columns or date. For example, a limit of 10 with a breakdown_dimension of AD returns 10 distinct ads, though those rows may span many dates and/or new/returning/total buckets. Pagination is distinct for each channel."}, {"in": "query", "name": "sort_by", "schema": {"description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning). Sorting is distinct for each channel.", "items": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewMetric"}, {"$ref": "#/components/schemas/ExtraSortField"}]}, "title": "Sort By", "type": "array"}, "required": false, "description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning). Sorting is distinct for each channel."}, {"in": "query", "name": "descending", "schema": {"default": false, "title": "Descending", "type": "boolean"}, "required": false}, {"in": "query", "name": "filter_and_sort_target", "schema": {"allOf": [{"description": "Possible values of customer_type and visitor_type.", "enum": ["new", "returning", "total"], "title": "UserType", "type": "string"}], "default": "total", "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}, "required": false, "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}, {"in": "query", "name": "filters", "schema": {"default": "[]", "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```", "title": "Filters", "type": "string"}, "required": false, "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```"}, {"in": "query", "name": "nvr_columns", "schema": {"description": "Specify which user types should be returned. Total is the sum of new and returning. Some data is replicated across new/returning/total.", "items": {"description": "Possible values of customer_type and visitor_type.", "enum": ["new", "returning", "total"], "title": "UserType", "type": "string"}, "title": "Nvr Columns", "type": "array", "uniqueItems": true}, "required": false, "description": "Specify which user types should be returned. Total is the sum of new and returning. Some data is replicated across new/returning/total."}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/NvrDailyBreakdownItemSchemaOut"}, "title": "Response", "type": "array"}}}}}, "description": "Get the most granular breakdown available for a channel:\n- cooperation_link breakdown for influencer\n- campaign breakdown for email, whatsapp, organic\n- ad breakdown for meta, criteo, msads, outbrain, pinterest, tiktok, snapchat, taboola\n- ad breakdown for google (non max/smart), campaign breakdown for google (max/smart). Google is essentially split into two separate channels here, and thus pagination and sorting is applied separately to each.\n\nChannels with no breakdown levels configured \u2014 direct, by default \u2014 return 424.", "tags": ["kpis"], "security": [{"OrgApiTokenAuth": []}, {"HiveApiKey": []}]}}, "/analytics/api/v1/kpis/discount_codes": {"get": {"operationId": "analytics_api_kpis_v1_kpis_discount_codes", "summary": "Kpis Discount Codes", "parameters": [{"in": "query", "name": "csids", "schema": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "required": true}, {"in": "query", "name": "preset_id", "schema": {"title": "Preset Id", "type": "string"}, "required": true}, {"in": "query", "name": "start_date", "schema": {"format": "date", "title": "Start Date", "type": "string"}, "required": true}, {"in": "query", "name": "end_date", "schema": {"format": "date", "title": "End Date", "type": "string"}, "required": true}, {"in": "query", "name": "granularity", "schema": {"allOf": [{"enum": ["daily", "weekly", "monthly", "none"], "title": "Granularity", "type": "string"}], "default": "none", "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, "required": false, "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, {"in": "query", "name": "requested_metrics", "schema": {"description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Requested Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned."}, {"in": "query", "name": "granularity_only_metrics", "schema": {"description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Granularity Only Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required."}, {"in": "query", "name": "daily_only_metrics", "schema": {"description": "DEPRECIATED. Please begin to use granularity only metrics.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Daily Only Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "DEPRECIATED. Please begin to use granularity only metrics."}, {"in": "query", "name": "use_simple_touchpoint_window", "schema": {"default": true, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset.", "title": "Use Simple Touchpoint Window", "type": "boolean"}, "required": false, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset."}, {"in": "query", "name": "offset", "schema": {"default": 0, "description": "The entry to begin providing data from.", "title": "Offset", "type": "integer"}, "required": false, "description": "The entry to begin providing data from."}, {"in": "query", "name": "limit", "schema": {"default": 25, "description": "The maximum number of entries to provide, based on the requested breakdown dimension, not on nvr_columns or date. For example, a limit of 10 with a breakdown_dimension of AD returns 10 distinct ads, though those rows may span many dates and/or new/returning/total buckets. Pagination is distinct for each channel.", "maximum": 10000, "minimum": 0, "title": "Limit", "type": "integer"}, "required": false, "description": "The maximum number of entries to provide, based on the requested breakdown dimension, not on nvr_columns or date. For example, a limit of 10 with a breakdown_dimension of AD returns 10 distinct ads, though those rows may span many dates and/or new/returning/total buckets. Pagination is distinct for each channel."}, {"in": "query", "name": "sort_by", "schema": {"description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning). Sorting is distinct for each channel.", "items": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewMetric"}, {"$ref": "#/components/schemas/ExtraSortField"}]}, "title": "Sort By", "type": "array"}, "required": false, "description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning). Sorting is distinct for each channel."}, {"in": "query", "name": "descending", "schema": {"default": false, "title": "Descending", "type": "boolean"}, "required": false}, {"in": "query", "name": "filter_and_sort_target", "schema": {"allOf": [{"description": "Possible values of customer_type and visitor_type.", "enum": ["new", "returning", "total"], "title": "UserType", "type": "string"}], "default": "total", "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}, "required": false, "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}, {"in": "query", "name": "filters", "schema": {"default": "[]", "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```", "title": "Filters", "type": "string"}, "required": false, "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```"}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/KpiDiscountCodesSchemaOut"}}}}}, "description": "Get an overview of discount code usage.", "tags": ["kpis"], "security": [{"OrgApiTokenAuth": []}, {"HiveApiKey": []}]}}, "/analytics/api/v1/kpis/nvr_daily_breakdown": {"get": {"operationId": "analytics_api_kpis_v1_all_nvr_daily_breakdown", "summary": "All Nvr Daily Breakdown", "parameters": [{"in": "query", "name": "csids", "schema": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "required": true}, {"in": "query", "name": "preset_id", "schema": {"title": "Preset Id", "type": "string"}, "required": true}, {"in": "query", "name": "start_date", "schema": {"format": "date", "title": "Start Date", "type": "string"}, "required": true}, {"in": "query", "name": "end_date", "schema": {"format": "date", "title": "End Date", "type": "string"}, "required": true}, {"in": "query", "name": "granularity", "schema": {"allOf": [{"enum": ["daily", "weekly", "monthly", "none"], "title": "Granularity", "type": "string"}], "default": "none", "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, "required": false, "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, {"in": "query", "name": "requested_metrics", "schema": {"description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Requested Metrics", "type": "array", "uniqueItems": true}, "required": false, "description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned."}, {"in": "query", "name": "use_simple_touchpoint_window", "schema": {"default": true, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset.", "title": "Use Simple Touchpoint Window", "type": "boolean"}, "required": false, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset."}, {"in": "query", "name": "offset", "schema": {"default": 0, "description": "The entry to begin providing data from.", "title": "Offset", "type": "integer"}, "required": false, "description": "The entry to begin providing data from."}, {"in": "query", "name": "limit", "schema": {"default": 25, "description": "The maximum number of entries to provide, based on the requested breakdown dimension, not on nvr_columns or date. For example, a limit of 10 with a breakdown_dimension of AD returns 10 distinct ads, though those rows may span many dates and/or new/returning/total buckets. Pagination is distinct for each channel.", "maximum": 10000, "minimum": 0, "title": "Limit", "type": "integer"}, "required": false, "description": "The maximum number of entries to provide, based on the requested breakdown dimension, not on nvr_columns or date. For example, a limit of 10 with a breakdown_dimension of AD returns 10 distinct ads, though those rows may span many dates and/or new/returning/total buckets. Pagination is distinct for each channel."}, {"in": "query", "name": "sort_by", "schema": {"description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning). Sorting is distinct for each channel.", "items": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewMetric"}, {"$ref": "#/components/schemas/ExtraSortField"}]}, "title": "Sort By", "type": "array"}, "required": false, "description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning). Sorting is distinct for each channel."}, {"in": "query", "name": "descending", "schema": {"default": false, "title": "Descending", "type": "boolean"}, "required": false}, {"in": "query", "name": "filter_and_sort_target", "schema": {"allOf": [{"description": "Possible values of customer_type and visitor_type.", "enum": ["new", "returning", "total"], "title": "UserType", "type": "string"}], "default": "total", "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}, "required": false, "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}, {"in": "query", "name": "filters", "schema": {"default": "[]", "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```", "title": "Filters", "type": "string"}, "required": false, "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```"}, {"in": "query", "name": "nvr_columns", "schema": {"description": "Specify which user types should be returned. Total is the sum of new and returning. Some data is replicated across new/returning/total.", "items": {"description": "Possible values of customer_type and visitor_type.", "enum": ["new", "returning", "total"], "title": "UserType", "type": "string"}, "title": "Nvr Columns", "type": "array", "uniqueItems": true}, "required": false, "description": "Specify which user types should be returned. Total is the sum of new and returning. Some data is replicated across new/returning/total."}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/NvrDailyBreakdownItemSchemaOut"}, "title": "Response", "type": "array"}}}}}, "description": "A wrapper around nvr_daily_breakdown, providing data for each channel separately. Sorting and pagination is applied to each channel separately.\n\nPlease see nvr_daily_breakdown for more details on how this applies to each channel.", "tags": ["kpis"], "security": [{"OrgApiTokenAuth": []}, {"HiveApiKey": []}]}}, "/analytics/api/v1/attribution/aggregated/{site_id}": {"get": {"operationId": "analytics_api_attribution_v1_aggregated_attributions", "summary": "Aggregated Attributions", "parameters": [{"in": "path", "name": "site_id", "schema": {"format": "uuid", "title": "Site Id", "type": "string"}, "required": true}, {"in": "query", "name": "limit", "schema": {"default": 100, "maximum": 2000, "minimum": 1, "title": "Limit", "type": "integer"}, "required": false}, {"in": "query", "name": "offset", "schema": {"default": 0, "minimum": 0, "title": "Offset", "type": "integer"}, "required": false}, {"in": "query", "name": "preset_id", "schema": {"description": "The id of the preset to use for the analysis.", "title": "Preset Id", "type": "string"}, "required": true, "description": "The id of the preset to use for the analysis."}, {"in": "query", "name": "start_date", "schema": {"description": "The start date of the analysis.", "format": "date", "title": "Start Date", "type": "string"}, "required": true, "description": "The start date of the analysis."}, {"in": "query", "name": "end_date", "schema": {"description": "The end date of the analysis.", "format": "date", "title": "End Date", "type": "string"}, "required": true, "description": "The end date of the analysis."}, {"in": "query", "name": "is_conversion", "schema": {"default": false, "description": "Filter for conversions only.", "title": "Is Conversion", "type": "boolean"}, "required": false, "description": "Filter for conversions only."}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PaginatedAggregatedAttributionSchemaOut"}}}}}, "description": "Get the most granular form of data from clickhouse aggregated_attributions table with conversions data.\nNote: Order filters are automatically applied to the aggregated attributions if its configured for the site.", "tags": ["attributions"], "security": [{"OrgApiTokenAuth": []}, {"HiveApiKey": []}]}}, "/analytics/api/v1/events/{site_id}/export/async": {"get": {"operationId": "analytics_api_events_v1_create_async_export_job", "summary": "Create Async Export Job", "parameters": [{"in": "path", "name": "site_id", "schema": {"format": "uuid", "title": "Site Id", "type": "string"}, "required": true}, {"in": "query", "name": "format", "schema": {"allOf": [{"description": "The format to use when exporting events.", "enum": ["csv", "parquet"], "title": "ExportFormat", "type": "string"}], "default": "csv", "description": "The export format. Defaults to CSV."}, "required": false, "description": "The export format. Defaults to CSV."}, {"in": "query", "name": "start_date", "schema": {"description": "The start of the events to query. Accepts a date (e.g. 2025-07-17) or a datetime (e.g. 2025-07-17 00:00:00).", "format": "date-time", "title": "Start Date", "type": "string"}, "required": true, "description": "The start of the events to query. Accepts a date (e.g. 2025-07-17) or a datetime (e.g. 2025-07-17 00:00:00)."}, {"in": "query", "name": "end_date", "schema": {"description": "The end of the events to query. Accepts a date (e.g. 2025-07-17) or a datetime (e.g. 2025-07-17 14:01:51).", "format": "date-time", "title": "End Date", "type": "string"}, "required": true, "description": "The end of the events to query. Accepts a date (e.g. 2025-07-17) or a datetime (e.g. 2025-07-17 14:01:51)."}, {"in": "query", "name": "has_touchpoints", "schema": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "description": "Whether the events should have touchpoints. If None, all events will be returned. If True, it will only return events with touchpoints info. If False, it will only return events without touchpoints info.", "title": "Has Touchpoints"}, "required": false, "description": "Whether the events should have touchpoints. If None, all events will be returned. If True, it will only return events with touchpoints info. If False, it will only return events without touchpoints info."}, {"in": "query", "name": "event_types", "schema": {"anyOf": [{"items": {"$ref": "#/components/schemas/EventType"}, "type": "array"}, {"type": "null"}], "description": "The types of events to query. If None, all events will be returned. If provided, only events of these types will be returned.", "title": "Event Types"}, "required": false, "description": "The types of events to query. If None, all events will be returned. If provided, only events of these types will be returned."}, {"in": "query", "name": "timezone", "schema": {"anyOf": [{"format": "zoneinfo", "type": "string"}, {"type": "null"}], "description": "The timezone to use for the events. If None, the default site timezone will be used.", "examples": ["Europe/Berlin", "Europe/London", "America/New_York"], "title": "Timezone"}, "required": false, "description": "The timezone to use for the events. If None, the default site timezone will be used.", "examples": ["Europe/Berlin", "Europe/London", "America/New_York"]}, {"in": "query", "name": "ordering", "schema": {"description": "The ordering of the events. If None, the events will be ordered by timestamp in descending order. You may also specify reverse orderings by prefixing the field name with '-'. For example, '-timestamp' will order by timestamp in ascending order.", "items": {"description": "The fields that can be used to order the events.", "enum": ["timestamp", "-timestamp"], "title": "EventOrderingField", "type": "string"}, "title": "Ordering", "type": "array"}, "required": false, "description": "The ordering of the events. If None, the events will be ordered by timestamp in descending order. You may also specify reverse orderings by prefixing the field name with '-'. For example, '-timestamp' will order by timestamp in ascending order."}, {"in": "query", "name": "payment_status", "schema": {"anyOf": [{"$ref": "#/components/schemas/EventConversionPaymentStatus"}, {"type": "null"}], "description": "The payment status of the events. If None, all payment statuses will be returned. If provided, only events with this payment status will be returned."}, "required": false, "description": "The payment status of the events. If None, all payment statuses will be returned. If provided, only events with this payment status will be returned."}, {"in": "query", "name": "payment_source", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "The payment source of the events. If None, all payment sources will be returned. If provided, only events with this payment source will be returned.", "title": "Payment Source"}, "required": false, "description": "The payment source of the events. If None, all payment sources will be returned. If provided, only events with this payment source will be returned."}, {"in": "query", "name": "conversion_status", "schema": {"anyOf": [{"$ref": "#/components/schemas/EventConversionStatus"}, {"type": "null"}], "description": "The conversion status of the events. If None, all conversion statuses will be returned. If provided, only events with this conversion status will be returned."}, "required": false, "description": "The conversion status of the events. If None, all conversion statuses will be returned. If provided, only events with this conversion status will be returned."}, {"in": "query", "name": "conversion_channel", "schema": {"anyOf": [{"$ref": "#/components/schemas/EventConversionChannel"}, {"type": "null"}], "description": "The conversion channel of the events. If None, all conversion channels will be returned. If provided, only events with this conversion channel will be returned."}, "required": false, "description": "The conversion channel of the events. If None, all conversion channels will be returned. If provided, only events with this conversion channel will be returned."}, {"in": "query", "name": "conversion_tags", "schema": {"anyOf": [{"items": {"type": "string"}, "type": "array"}, {"type": "null"}], "description": "The conversion tags of the events. If None, all conversion tags will be returned. If provided, only events with these conversion tags will be returned.", "title": "Conversion Tags"}, "required": false, "description": "The conversion tags of the events. If None, all conversion tags will be returned. If provided, only events with these conversion tags will be returned."}, {"in": "query", "name": "search", "schema": {"anyOf": [{"maxLength": 255, "minLength": 1, "type": "string"}, {"type": "null"}], "description": "Search term to filter events. Searches across user group ID, URL (origin/path) and event property keys/values. Case-insensitive.", "title": "Search"}, "required": false, "description": "Search term to filter events. Searches across user group ID, URL (origin/path) and event property keys/values. Case-insensitive."}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/EventAsyncExportJobSchemaOut"}}}}}, "description": "Initiate an asynchronous export job for event data within a specified date range.\n\nRate limits apply per site ID:\n  - Maximum 5 requests per hour\n  - Maximum 20 requests per day", "tags": ["events"], "security": [{"OrgApiTokenAuth": []}, {"HiveApiKey": []}]}}, "/analytics/api/v1/events/{site_id}/export/async/{task_id}": {"get": {"operationId": "analytics_api_events_v1_get_events_export_job", "summary": "Get Events Export Job", "parameters": [{"in": "path", "name": "site_id", "schema": {"format": "uuid", "title": "Site Id", "type": "string"}, "required": true}, {"in": "path", "name": "task_id", "schema": {"title": "Task Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/EventAsyncExportJobSchemaOut"}}}}}, "description": "Return the current status of an asynchronous event export job.", "tags": ["events"], "security": [{"OrgApiTokenAuth": []}, {"HiveApiKey": []}]}}, "/analytics/api/v1/customer_journey/overview/": {"get": {"operationId": "analytics_api_customer_journey_v1_customer_journey_overview", "summary": "Customer Journey Overview", "parameters": [{"in": "query", "name": "csids", "schema": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "required": true}, {"in": "query", "name": "start_date", "schema": {"format": "date", "title": "Start Date", "type": "string"}, "required": true}, {"in": "query", "name": "end_date", "schema": {"format": "date", "title": "End Date", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerJourneyOverallKpisSchema"}}}}}, "description": "Get an overview of customer journey overview metrics.", "tags": ["customer_journey"], "security": [{"OrgApiTokenAuth": []}, {"HiveApiKey": []}]}}, "/analytics/api/v1/customer_journey/initiator_holder_closer/": {"get": {"operationId": "analytics_api_customer_journey_v1_customer_journey_initiator_holder_closer", "summary": "Customer Journey Initiator Holder Closer", "parameters": [{"in": "query", "name": "csids", "schema": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "required": true}, {"in": "query", "name": "start_date", "schema": {"format": "date", "title": "Start Date", "type": "string"}, "required": true}, {"in": "query", "name": "end_date", "schema": {"format": "date", "title": "End Date", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerJourneyInitiatorHolderCloserSchema"}}}}}, "description": "Get an overview of customer journey initiator/holder/closer metrics.", "tags": ["customer_journey"], "security": [{"OrgApiTokenAuth": []}, {"HiveApiKey": []}]}}, "/analytics/api/v1/customer_journey/conversion_paths/": {"get": {"operationId": "analytics_api_customer_journey_v1_customer_journey_conversion_paths", "summary": "Customer Journey Conversion Paths", "parameters": [{"in": "query", "name": "csids", "schema": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "required": true}, {"in": "query", "name": "start_date", "schema": {"format": "date", "title": "Start Date", "type": "string"}, "required": true}, {"in": "query", "name": "end_date", "schema": {"format": "date", "title": "End Date", "type": "string"}, "required": true}, {"in": "query", "name": "breakdown_dimension", "schema": {"description": "Enum to control the granularity of conversion path breakdown.", "enum": ["channel", "campaign"], "title": "ConversionPathBreakdownDimension", "type": "string"}, "required": true, "description": "Enum to control the granularity of conversion path breakdown."}, {"in": "query", "name": "offset", "schema": {"default": 0, "description": "The entry to begin providing data from.", "title": "Offset", "type": "integer"}, "required": false, "description": "The entry to begin providing data from."}, {"in": "query", "name": "limit", "schema": {"default": 25, "description": "The maximum number of entries to provide, based on the dimension requested - not based on nvr_columns! A limit of 10, with a breakdown_dimension of CHANNEL, results in 10 different channel based customer journeys in the response; but that could be across many new/returning/total.", "maximum": 10000, "minimum": 1, "title": "Limit", "type": "integer"}, "required": false, "description": "The maximum number of entries to provide, based on the dimension requested - not based on nvr_columns! A limit of 10, with a breakdown_dimension of CHANNEL, results in 10 different channel based customer journeys in the response; but that could be across many new/returning/total."}, {"in": "query", "name": "sort_by", "schema": {"description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning)", "items": {"description": "Metrics relevant for customer journeys.", "enum": ["customer_revenue", "customer_purchase", "average_order_value", "number_of_customers", "number_of_touchpoints", "average_seconds_to_conversion"], "title": "CustomerJourneyMetric", "type": "string"}, "title": "Sort By", "type": "array"}, "required": false, "description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning)"}, {"in": "query", "name": "descending", "schema": {"default": false, "title": "Descending", "type": "boolean"}, "required": false}, {"in": "query", "name": "filters", "schema": {"default": "[]", "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```", "title": "Filters", "type": "string"}, "required": false, "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```"}, {"in": "query", "name": "filter_and_sort_target", "schema": {"allOf": [{"description": "Possible values of customer_type and visitor_type.", "enum": ["new", "returning", "total"], "title": "UserType", "type": "string"}], "default": "total", "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}, "required": false, "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ConversionPathSchemaOut"}}}}}, "description": "Get an overview of customer journey initiator/holder/closer metrics.", "tags": ["customer_journey"], "security": [{"OrgApiTokenAuth": []}, {"HiveApiKey": []}]}}, "/analytics/api/v1/customer_journey/{site_id}/order_touchpoints": {"get": {"operationId": "analytics_api_customer_journey_v1_list_customer_journeys_by_order_id", "summary": "List Customer Journeys By Order Id", "parameters": [{"in": "path", "name": "site_id", "schema": {"format": "uuid", "title": "Site Id", "type": "string"}, "required": true}, {"in": "query", "name": "order_id", "schema": {"description": "The order ID to filter the customer journeys by. This is the conversion_id within the dimensions field of the journey_touchpoints table.", "title": "Order Id", "type": "string"}, "required": true, "description": "The order ID to filter the customer journeys by. This is the conversion_id within the dimensions field of the journey_touchpoints table."}, {"in": "query", "name": "limit", "schema": {"default": 100, "maximum": 2000, "minimum": 1, "title": "Limit", "type": "integer"}, "required": false}, {"in": "query", "name": "offset", "schema": {"default": 0, "minimum": 0, "title": "Offset", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedJourneyTouchpointSchemaOut"}}}}}, "description": "List the customer journeys touchpoints for the specified site and order ID. The touchpoints are ordered by when and touchpoint_index.", "tags": ["customer_journey"], "security": [{"OrgApiTokenAuth": []}, {"HiveApiKey": []}]}}}, "components": {"schemas": {"Granularity": {"enum": ["daily", "weekly", "monthly", "none"], "title": "Granularity", "type": "string"}, "KpiOverviewMetric": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "KpiOverviewSchemaIn": {"properties": {"csids": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "preset_id": {"title": "Preset Id", "type": "string"}, "start_date": {"format": "date", "title": "Start Date", "type": "string"}, "end_date": {"format": "date", "title": "End Date", "type": "string"}, "granularity": {"allOf": [{"enum": ["daily", "weekly", "monthly", "none"], "title": "Granularity", "type": "string"}], "default": "none", "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, "requested_metrics": {"description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Requested Metrics", "type": "array", "uniqueItems": true}, "granularity_only_metrics": {"description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Granularity Only Metrics", "type": "array", "uniqueItems": true}, "daily_only_metrics": {"description": "DEPRECIATED. Please begin to use granularity only metrics.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Daily Only Metrics", "type": "array", "uniqueItems": true}, "use_simple_touchpoint_window": {"default": true, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset.", "title": "Use Simple Touchpoint Window", "type": "boolean"}}, "required": ["csids", "preset_id", "start_date", "end_date"], "title": "KpiOverviewSchemaIn", "type": "object"}, "KpiOverviewDailySchema": {"properties": {"date": {"format": "date", "title": "Date", "type": "string"}, "fixed": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewFixedSchema"}, {"type": "null"}]}, "total": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewTotalSchema"}, {"type": "null"}]}, "returning": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewReturningSchema"}, {"type": "null"}]}, "new": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewNewSchema"}, {"type": "null"}]}}, "required": ["date"], "title": "KpiOverviewDailySchema", "type": "object"}, "KpiOverviewFixedSchema": {"properties": {"ad_spend": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Ad Spend"}, "influencer_fixed_commission": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Influencer Fixed Commission"}, "clicks": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Clicks"}, "link_click": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Link Click"}, "important_clicks": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Important Clicks"}, "impressions": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Impressions"}, "reach": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Reach"}, "comment": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Comment"}, "landing_page_view": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Landing Page View"}, "conversions": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Conversions"}, "all_conversions": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "All Conversions"}, "video_view": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Video View"}, "onsite_conversion_post_save": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Onsite Conversion Post Save"}, "video_avg_time_watched_actions": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Video Avg Time Watched Actions"}, "click_through_rate": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Click Through Rate"}, "frequency": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Frequency"}, "thumbstop_ratio": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Thumbstop Ratio"}, "cost_per_click": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Cost Per Click"}, "cost_per_mille": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Cost Per Mille"}}, "title": "KpiOverviewFixedSchema", "type": "object"}, "KpiOverviewMonthlySchema": {"properties": {"date": {"format": "date", "title": "Date", "type": "string"}, "fixed": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewFixedSchema"}, {"type": "null"}]}, "total": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewTotalSchema"}, {"type": "null"}]}, "returning": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewReturningSchema"}, {"type": "null"}]}, "new": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewNewSchema"}, {"type": "null"}]}}, "required": ["date"], "title": "KpiOverviewMonthlySchema", "type": "object"}, "KpiOverviewNewSchema": {"properties": {"customer_purchase": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Purchase"}, "customer_revenue": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Revenue"}, "customer_num_items": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Num Items"}, "visitor_pageview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Pageview"}, "visitor_unique_pageview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Pageview"}, "customer_pageview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Pageview"}, "customer_unique_pageview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Pageview"}, "visitor_productview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Productview"}, "visitor_unique_productview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Productview"}, "customer_productview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Productview"}, "customer_unique_productview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Productview"}, "visitor_addtocart": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Addtocart"}, "visitor_unique_addtocart": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Addtocart"}, "customer_addtocart": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Addtocart"}, "customer_unique_addtocart": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Addtocart"}, "visitor_checkout": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Checkout"}, "visitor_unique_checkout": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Checkout"}, "customer_checkout": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Checkout"}, "customer_unique_checkout": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Checkout"}, "visitor_login": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Login"}, "visitor_unique_login": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Login"}, "customer_login": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Login"}, "customer_unique_login": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Login"}, "influencer_variable_commission": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Influencer Variable Commission"}, "total_spend": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Total Spend"}, "return_on_ad_spend": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Return On Ad Spend"}, "cost_per_order": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Cost Per Order"}, "conversion_rate": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Conversion Rate"}, "average_order_value": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Average Order Value"}, "discount_code_redemption_rate": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Discount Code Redemption Rate"}, "customer_acquisition_cost": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Acquisition Cost"}}, "title": "KpiOverviewNewSchema", "type": "object"}, "KpiOverviewOverallSchema": {"properties": {"fixed": {"$ref": "#/components/schemas/KpiOverviewFixedSchema"}, "total": {"$ref": "#/components/schemas/KpiOverviewTotalSchema"}, "returning": {"$ref": "#/components/schemas/KpiOverviewReturningSchema"}, "new": {"$ref": "#/components/schemas/KpiOverviewNewSchema"}}, "required": ["fixed", "total", "returning", "new"], "title": "KpiOverviewOverallSchema", "type": "object"}, "KpiOverviewReturningSchema": {"properties": {"customer_purchase": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Purchase"}, "customer_revenue": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Revenue"}, "customer_num_items": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Num Items"}, "visitor_pageview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Pageview"}, "visitor_unique_pageview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Pageview"}, "customer_pageview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Pageview"}, "customer_unique_pageview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Pageview"}, "visitor_productview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Productview"}, "visitor_unique_productview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Productview"}, "customer_productview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Productview"}, "customer_unique_productview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Productview"}, "visitor_addtocart": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Addtocart"}, "visitor_unique_addtocart": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Addtocart"}, "customer_addtocart": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Addtocart"}, "customer_unique_addtocart": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Addtocart"}, "visitor_checkout": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Checkout"}, "visitor_unique_checkout": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Checkout"}, "customer_checkout": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Checkout"}, "customer_unique_checkout": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Checkout"}, "visitor_login": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Login"}, "visitor_unique_login": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Login"}, "customer_login": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Login"}, "customer_unique_login": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Login"}, "influencer_variable_commission": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Influencer Variable Commission"}, "total_spend": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Total Spend"}, "return_on_ad_spend": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Return On Ad Spend"}, "cost_per_order": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Cost Per Order"}, "conversion_rate": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Conversion Rate"}, "average_order_value": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Average Order Value"}, "discount_code_redemption_rate": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Discount Code Redemption Rate"}}, "title": "KpiOverviewReturningSchema", "type": "object"}, "KpiOverviewSchemaOut": {"properties": {"overall": {"$ref": "#/components/schemas/KpiOverviewOverallSchema"}, "daily": {"anyOf": [{"items": {"$ref": "#/components/schemas/KpiOverviewDailySchema"}, "type": "array"}, {"type": "null"}], "title": "Daily"}, "weekly": {"anyOf": [{"items": {"$ref": "#/components/schemas/KpiOverviewWeeklySchema"}, "type": "array"}, {"type": "null"}], "title": "Weekly"}, "monthly": {"anyOf": [{"items": {"$ref": "#/components/schemas/KpiOverviewMonthlySchema"}, "type": "array"}, {"type": "null"}], "title": "Monthly"}}, "required": ["overall"], "title": "KpiOverviewSchemaOut", "type": "object"}, "KpiOverviewTotalSchema": {"properties": {"customer_purchase": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Purchase"}, "customer_revenue": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Revenue"}, "customer_num_items": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Num Items"}, "visitor_pageview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Pageview"}, "visitor_unique_pageview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Pageview"}, "customer_pageview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Pageview"}, "customer_unique_pageview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Pageview"}, "visitor_productview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Productview"}, "visitor_unique_productview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Productview"}, "customer_productview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Productview"}, "customer_unique_productview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Productview"}, "visitor_addtocart": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Addtocart"}, "visitor_unique_addtocart": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Addtocart"}, "customer_addtocart": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Addtocart"}, "customer_unique_addtocart": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Addtocart"}, "visitor_checkout": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Checkout"}, "visitor_unique_checkout": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Checkout"}, "customer_checkout": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Checkout"}, "customer_unique_checkout": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Checkout"}, "visitor_login": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Login"}, "visitor_unique_login": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Login"}, "customer_login": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Login"}, "customer_unique_login": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Login"}, "influencer_variable_commission": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Influencer Variable Commission"}, "total_spend": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Total Spend"}, "return_on_ad_spend": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Return On Ad Spend"}, "cost_per_order": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Cost Per Order"}, "conversion_rate": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Conversion Rate"}, "average_order_value": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Average Order Value"}, "discount_code_redemption_rate": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Discount Code Redemption Rate"}, "customer_acquisition_cost": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Acquisition Cost"}, "new_customer_purchase_ratio": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "New Customer Purchase Ratio"}, "new_visitor_pageview_ratio": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "New Visitor Pageview Ratio"}}, "title": "KpiOverviewTotalSchema", "type": "object"}, "KpiOverviewWeeklySchema": {"properties": {"date": {"format": "date", "title": "Date", "type": "string"}, "fixed": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewFixedSchema"}, {"type": "null"}]}, "total": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewTotalSchema"}, {"type": "null"}]}, "returning": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewReturningSchema"}, {"type": "null"}]}, "new": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewNewSchema"}, {"type": "null"}]}}, "required": ["date"], "title": "KpiOverviewWeeklySchema", "type": "object"}, "KpiChannelsSchemaIn": {"properties": {"csids": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "preset_id": {"title": "Preset Id", "type": "string"}, "start_date": {"format": "date", "title": "Start Date", "type": "string"}, "end_date": {"format": "date", "title": "End Date", "type": "string"}, "granularity": {"allOf": [{"enum": ["daily", "weekly", "monthly", "none"], "title": "Granularity", "type": "string"}], "default": "none", "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, "requested_metrics": {"description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Requested Metrics", "type": "array", "uniqueItems": true}, "granularity_only_metrics": {"description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Granularity Only Metrics", "type": "array", "uniqueItems": true}, "daily_only_metrics": {"description": "DEPRECIATED. Please begin to use granularity only metrics.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Daily Only Metrics", "type": "array", "uniqueItems": true}, "use_simple_touchpoint_window": {"default": true, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset.", "title": "Use Simple Touchpoint Window", "type": "boolean"}, "channels": {"anyOf": [{"items": {"type": "string"}, "type": "array", "uniqueItems": true}, {"type": "null"}], "description": "Specify which channels to provide in the response. Defaults to all channels configured for the organisation.", "title": "Channels"}}, "required": ["csids", "preset_id", "start_date", "end_date"], "title": "KpiChannelsSchemaIn", "type": "object"}, "KpiChannelSchema": {"properties": {"overall": {"$ref": "#/components/schemas/KpiOverviewOverallSchema"}, "daily": {"anyOf": [{"items": {"$ref": "#/components/schemas/KpiOverviewDailySchema"}, "type": "array"}, {"type": "null"}], "title": "Daily"}, "weekly": {"anyOf": [{"items": {"$ref": "#/components/schemas/KpiOverviewWeeklySchema"}, "type": "array"}, {"type": "null"}], "title": "Weekly"}, "monthly": {"anyOf": [{"items": {"$ref": "#/components/schemas/KpiOverviewMonthlySchema"}, "type": "array"}, {"type": "null"}], "title": "Monthly"}}, "required": ["overall"], "title": "KpiChannelSchema", "type": "object"}, "KpiChannelsSchemaOut": {"properties": {"overall": {"$ref": "#/components/schemas/KpiOverviewOverallSchema"}, "channels": {"additionalProperties": {"$ref": "#/components/schemas/KpiChannelSchema"}, "title": "Channels", "type": "object"}}, "required": ["overall", "channels"], "title": "KpiChannelsSchemaOut", "type": "object"}, "KpiChannelSchemaOut": {"properties": {"channel": {"title": "Channel", "type": "string"}, "overall": {"$ref": "#/components/schemas/KpiOverviewOverallSchema"}, "daily": {"anyOf": [{"items": {"$ref": "#/components/schemas/KpiOverviewDailySchema"}, "type": "array"}, {"type": "null"}], "title": "Daily"}, "weekly": {"anyOf": [{"items": {"$ref": "#/components/schemas/KpiOverviewWeeklySchema"}, "type": "array"}, {"type": "null"}], "title": "Weekly"}, "monthly": {"anyOf": [{"items": {"$ref": "#/components/schemas/KpiOverviewMonthlySchema"}, "type": "array"}, {"type": "null"}], "title": "Monthly"}}, "required": ["channel", "overall"], "title": "KpiChannelSchemaOut", "type": "object"}, "ChannelBreakdownDimension": {"description": "A channel can be broken down in different ways.", "enum": ["campaign", "adset", "ad", "keyword", "asset_group", "creative", "advertising_channel_type", "influencer", "cooperation", "cooperation_link", "influencer_channel"], "title": "ChannelBreakdownDimension", "type": "string"}, "ExportFormat": {"description": "The format to use when exporting events.", "enum": ["csv", "parquet"], "title": "ExportFormat", "type": "string"}, "ExtraSortField": {"enum": ["ad_id", "keyword_id", "asset_group_id", "adset_id", "campaign_id", "ad_name", "adset_name", "campaign_name", "asset_group_name", "keyword_text", "influencer_id", "influencer_name", "cooperation_id", "cooperation_name", "cooperation_link_id", "cooperation_link_name", "discount_code"], "title": "ExtraSortField", "type": "string"}, "KpiChannelBreakdownExportQueryParams": {"description": "Query parameters for the async KPI channel-breakdown export endpoints.\n\nExtends the non-comparison breakdown schema; pagination is overridden to export-only\nsettings so the full breakdown is materialized for the export file.", "properties": {"csids": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "preset_id": {"title": "Preset Id", "type": "string"}, "start_date": {"format": "date", "title": "Start Date", "type": "string"}, "end_date": {"format": "date", "title": "End Date", "type": "string"}, "granularity": {"allOf": [{"enum": ["daily", "weekly", "monthly", "none"], "title": "Granularity", "type": "string"}], "default": "none", "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, "requested_metrics": {"description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Requested Metrics", "type": "array", "uniqueItems": true}, "granularity_only_metrics": {"description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Granularity Only Metrics", "type": "array", "uniqueItems": true}, "daily_only_metrics": {"description": "DEPRECIATED. Please begin to use granularity only metrics.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Daily Only Metrics", "type": "array", "uniqueItems": true}, "use_simple_touchpoint_window": {"default": true, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset.", "title": "Use Simple Touchpoint Window", "type": "boolean"}, "pagination": {"allOf": [{"description": "Pagination settings for KPI channel breakdown responses.", "properties": {"offset": {"default": 0, "description": "The entry to begin providing data from.", "title": "Offset", "type": "integer"}, "limit": {"default": 25, "description": "The maximum number of entries to provide, based on the requested breakdown dimension, not on nvr_columns or date. For example, a limit of 10 with a breakdown_dimension of AD returns 10 distinct ads, though those rows may span many dates and/or new/returning/total buckets. Pagination is distinct for each channel.", "maximum": 10000, "minimum": 0, "title": "Limit", "type": "integer"}}, "title": "KpiOverviewPaginationIn", "type": "object"}]}, "sorting": {"allOf": [{"properties": {"sort_by": {"description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning). Sorting is distinct for each channel.", "items": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewMetric"}, {"$ref": "#/components/schemas/ExtraSortField"}]}, "title": "Sort By", "type": "array"}, "descending": {"default": false, "title": "Descending", "type": "boolean"}}, "title": "KpiOverviewSortingSchema", "type": "object"}]}, "filter_and_sort_target": {"allOf": [{"description": "Possible values of customer_type and visitor_type.", "enum": ["new", "returning", "total"], "title": "UserType", "type": "string"}], "default": "total", "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}, "filters": {"default": "[]", "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```", "title": "Filters", "type": "string"}, "export_format": {"allOf": [{"description": "The format to use when exporting events.", "enum": ["csv", "parquet"], "title": "ExportFormat", "type": "string"}], "default": "csv", "description": "The export file format. Defaults to CSV."}}, "required": ["csids", "preset_id", "start_date", "end_date"], "title": "KpiChannelBreakdownExportQueryParams", "type": "object"}, "KpiOverviewPaginationIn": {"description": "Pagination settings for KPI channel breakdown responses.", "properties": {"offset": {"default": 0, "description": "The entry to begin providing data from.", "title": "Offset", "type": "integer"}, "limit": {"default": 25, "description": "The maximum number of entries to provide, based on the requested breakdown dimension, not on nvr_columns or date. For example, a limit of 10 with a breakdown_dimension of AD returns 10 distinct ads, though those rows may span many dates and/or new/returning/total buckets. Pagination is distinct for each channel.", "maximum": 10000, "minimum": 0, "title": "Limit", "type": "integer"}}, "title": "KpiOverviewPaginationIn", "type": "object"}, "KpiOverviewSortingSchema": {"properties": {"sort_by": {"description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning). Sorting is distinct for each channel.", "items": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewMetric"}, {"$ref": "#/components/schemas/ExtraSortField"}]}, "title": "Sort By", "type": "array"}, "descending": {"default": false, "title": "Descending", "type": "boolean"}}, "title": "KpiOverviewSortingSchema", "type": "object"}, "UserType": {"description": "Possible values of customer_type and visitor_type.", "enum": ["new", "returning", "total"], "title": "UserType", "type": "string"}, "EventAsyncExportJobSchemaOut": {"properties": {"task_id": {"title": "Task Id", "type": "string"}, "status": {"allOf": [{"$ref": "#/components/schemas/EventsExportJobStatus"}], "default": "PENDING", "description": "The status of the export job."}, "row_count": {"anyOf": [{"type": "integer"}, {"type": "null"}], "description": "The number of rows in the export job.", "title": "Row Count"}, "estimated_size_bytes": {"anyOf": [{"type": "integer"}, {"type": "null"}], "description": "The estimated size of the export job in bytes.", "title": "Estimated Size Bytes"}, "download_url": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "The download URL of the export job.", "title": "Download Url"}, "detail": {"description": "The detailed message of the export job.", "title": "Detail", "type": "string"}}, "required": ["task_id", "detail"], "title": "EventAsyncExportJobSchemaOut", "type": "object"}, "EventsExportJobStatus": {"enum": ["PENDING", "STARTED", "COMPLETED", "FAILED"], "title": "EventsExportJobStatus", "type": "string"}, "KpiBreakdownComparison": {"properties": {"comparison_start_date": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Comparison Start Date"}, "comparison_end_date": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Comparison End Date"}}, "title": "KpiBreakdownComparison", "type": "object"}, "KpiChannelBreakdownComparisonSchemaIn": {"description": "Enables comparison of date ranges for the breakdown endpoint.", "properties": {"csids": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "preset_id": {"title": "Preset Id", "type": "string"}, "start_date": {"format": "date", "title": "Start Date", "type": "string"}, "end_date": {"format": "date", "title": "End Date", "type": "string"}, "granularity": {"allOf": [{"enum": ["daily", "weekly", "monthly", "none"], "title": "Granularity", "type": "string"}], "default": "none", "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, "requested_metrics": {"description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Requested Metrics", "type": "array", "uniqueItems": true}, "granularity_only_metrics": {"description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Granularity Only Metrics", "type": "array", "uniqueItems": true}, "daily_only_metrics": {"description": "DEPRECIATED. Please begin to use granularity only metrics.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Daily Only Metrics", "type": "array", "uniqueItems": true}, "use_simple_touchpoint_window": {"default": true, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset.", "title": "Use Simple Touchpoint Window", "type": "boolean"}, "pagination": {"allOf": [{"description": "Pagination settings for KPI channel breakdown responses.", "properties": {"offset": {"default": 0, "description": "The entry to begin providing data from.", "title": "Offset", "type": "integer"}, "limit": {"default": 25, "description": "The maximum number of entries to provide, based on the requested breakdown dimension, not on nvr_columns or date. For example, a limit of 10 with a breakdown_dimension of AD returns 10 distinct ads, though those rows may span many dates and/or new/returning/total buckets. Pagination is distinct for each channel.", "maximum": 10000, "minimum": 0, "title": "Limit", "type": "integer"}}, "title": "KpiOverviewPaginationIn", "type": "object"}]}, "sorting": {"allOf": [{"properties": {"sort_by": {"description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning). Sorting is distinct for each channel.", "items": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewMetric"}, {"$ref": "#/components/schemas/ExtraSortField"}]}, "title": "Sort By", "type": "array"}, "descending": {"default": false, "title": "Descending", "type": "boolean"}}, "title": "KpiOverviewSortingSchema", "type": "object"}]}, "filter_and_sort_target": {"allOf": [{"description": "Possible values of customer_type and visitor_type.", "enum": ["new", "returning", "total"], "title": "UserType", "type": "string"}], "default": "total", "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}, "filters": {"default": "[]", "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```", "title": "Filters", "type": "string"}, "comparison": {"allOf": [{"properties": {"comparison_start_date": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Comparison Start Date"}, "comparison_end_date": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Comparison End Date"}}, "title": "KpiBreakdownComparison", "type": "object"}]}}, "required": ["csids", "preset_id", "start_date", "end_date"], "title": "KpiChannelBreakdownComparisonSchemaIn", "type": "object"}, "KpiChannelBreakdownComparisonSchemaOut": {"properties": {"main": {"$ref": "#/components/schemas/KpiChannelBreakdownSchemaOut"}, "comparison": {"$ref": "#/components/schemas/_KpiChannelBreakdownComparisonSchemaOut"}}, "required": ["main", "comparison"], "title": "KpiChannelBreakdownComparisonSchemaOut", "type": "object"}, "KpiChannelBreakdownSchemaOut": {"properties": {"channel": {"title": "Channel", "type": "string"}, "breakdown_dimension": {"$ref": "#/components/schemas/ChannelBreakdownDimension"}, "overall": {"$ref": "#/components/schemas/KpiOverviewOverallSchema"}, "breakdown": {"$ref": "#/components/schemas/_KpiBreakdownSchemaOut"}}, "required": ["channel", "breakdown_dimension", "overall", "breakdown"], "title": "KpiChannelBreakdownSchemaOut", "type": "object"}, "KpiOverviewInfoSchema": {"additionalProperties": true, "properties": {"campaign_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Campaign Id"}, "adset_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Adset Id"}, "ad_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Ad Id"}, "campaign_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Campaign Name"}, "adset_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Adset Name"}, "ad_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Ad Name"}, "ad_status": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Ad Status"}, "adset_status": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Adset Status"}, "campaign_status": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Campaign Status"}, "advertising_channel_type": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Advertising Channel Type"}, "ads_count": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Ads Count"}, "image": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Image"}, "video": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Video"}, "image_url": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Image Url"}, "video_url": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Video Url"}, "ad_creative_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Ad Creative Id"}, "influencer_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Influencer Id"}, "influencer_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Influencer Name"}, "cooperation_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Cooperation Id"}, "cooperation_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Cooperation Name"}, "placement_type": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Placement Type"}, "placement_source": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Placement Source"}, "labels": {"anyOf": [{"items": {"type": "string"}, "type": "array"}, {"type": "null"}], "title": "Labels"}, "cooperation_link_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Cooperation Link Id"}, "cooperation_link_title": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Cooperation Link Title"}, "discount_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Discount Code"}}, "title": "KpiOverviewInfoSchema", "type": "object"}, "PaginationOut": {"properties": {"offset": {"description": "The entry from which data in the response begins.", "title": "Offset", "type": "integer"}, "limit": {"description": "The number of entries provided in the response.", "title": "Limit", "type": "integer"}, "total": {"description": "The total number of entries.", "title": "Total", "type": "integer"}, "has_next_page": {"description": "Whether more data is available beyond the current limit/offset combination.", "title": "Has Next Page", "type": "boolean"}, "detail": {"description": "Some additional information to provide context about the pagination.", "title": "Detail", "type": "string"}}, "required": ["offset", "limit", "total", "has_next_page", "detail"], "title": "PaginationOut", "type": "object"}, "_KpiBreakdownComparisonSchemaOut": {"properties": {"data": {"items": {"$ref": "#/components/schemas/_KpiBreakdownItemSchemaOut"}, "title": "Data", "type": "array"}}, "required": ["data"], "title": "_KpiBreakdownComparisonSchemaOut", "type": "object"}, "_KpiBreakdownItemSchemaOut": {"properties": {"info": {"$ref": "#/components/schemas/KpiOverviewInfoSchema"}, "fixed": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewFixedSchema"}, {"type": "null"}]}, "total": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewTotalSchema"}, {"type": "null"}]}, "returning": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewReturningSchema"}, {"type": "null"}]}, "new": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewNewSchema"}, {"type": "null"}]}, "daily": {"anyOf": [{"items": {"$ref": "#/components/schemas/KpiOverviewDailySchema"}, "type": "array"}, {"type": "null"}], "title": "Daily"}, "weekly": {"anyOf": [{"items": {"$ref": "#/components/schemas/KpiOverviewDailySchema"}, "type": "array"}, {"type": "null"}], "title": "Weekly"}, "monthly": {"anyOf": [{"items": {"$ref": "#/components/schemas/KpiOverviewDailySchema"}, "type": "array"}, {"type": "null"}], "title": "Monthly"}}, "required": ["info"], "title": "_KpiBreakdownItemSchemaOut", "type": "object"}, "_KpiBreakdownSchemaOut": {"properties": {"data": {"items": {"$ref": "#/components/schemas/_KpiBreakdownItemSchemaOut"}, "title": "Data", "type": "array"}, "pagination": {"$ref": "#/components/schemas/PaginationOut"}}, "required": ["data", "pagination"], "title": "_KpiBreakdownSchemaOut", "type": "object"}, "_KpiChannelBreakdownComparisonSchemaOut": {"properties": {"channel": {"title": "Channel", "type": "string"}, "breakdown_dimension": {"$ref": "#/components/schemas/ChannelBreakdownDimension"}, "overall": {"$ref": "#/components/schemas/KpiOverviewOverallSchema"}, "breakdown": {"$ref": "#/components/schemas/_KpiBreakdownComparisonSchemaOut"}}, "required": ["channel", "breakdown_dimension", "overall", "breakdown"], "title": "_KpiChannelBreakdownComparisonSchemaOut", "type": "object"}, "NvrDailyBreakdown": {"properties": {"csids": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "preset_id": {"title": "Preset Id", "type": "string"}, "start_date": {"format": "date", "title": "Start Date", "type": "string"}, "end_date": {"format": "date", "title": "End Date", "type": "string"}, "granularity": {"allOf": [{"enum": ["daily", "weekly", "monthly", "none"], "title": "Granularity", "type": "string"}], "default": "none", "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, "requested_metrics": {"description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Requested Metrics", "type": "array", "uniqueItems": true}, "use_simple_touchpoint_window": {"default": true, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset.", "title": "Use Simple Touchpoint Window", "type": "boolean"}, "pagination": {"allOf": [{"description": "Pagination settings for KPI channel breakdown responses.", "properties": {"offset": {"default": 0, "description": "The entry to begin providing data from.", "title": "Offset", "type": "integer"}, "limit": {"default": 25, "description": "The maximum number of entries to provide, based on the requested breakdown dimension, not on nvr_columns or date. For example, a limit of 10 with a breakdown_dimension of AD returns 10 distinct ads, though those rows may span many dates and/or new/returning/total buckets. Pagination is distinct for each channel.", "maximum": 10000, "minimum": 0, "title": "Limit", "type": "integer"}}, "title": "KpiOverviewPaginationIn", "type": "object"}]}, "sorting": {"allOf": [{"properties": {"sort_by": {"description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning). Sorting is distinct for each channel.", "items": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewMetric"}, {"$ref": "#/components/schemas/ExtraSortField"}]}, "title": "Sort By", "type": "array"}, "descending": {"default": false, "title": "Descending", "type": "boolean"}}, "title": "KpiOverviewSortingSchema", "type": "object"}]}, "filter_and_sort_target": {"allOf": [{"description": "Possible values of customer_type and visitor_type.", "enum": ["new", "returning", "total"], "title": "UserType", "type": "string"}], "default": "total", "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}, "filters": {"default": "[]", "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```", "title": "Filters", "type": "string"}, "nvr_columns": {"description": "Specify which user types should be returned. Total is the sum of new and returning. Some data is replicated across new/returning/total.", "items": {"description": "Possible values of customer_type and visitor_type.", "enum": ["new", "returning", "total"], "title": "UserType", "type": "string"}, "title": "Nvr Columns", "type": "array", "uniqueItems": true}}, "required": ["csids", "preset_id", "start_date", "end_date"], "title": "NvrDailyBreakdown", "type": "object"}, "NvrDailyBreakdownItemSchemaOut": {"additionalProperties": true, "properties": {"date": {"format": "date", "title": "Date", "type": "string"}, "new_vs_returning": {"$ref": "#/components/schemas/UserType"}, "channel": {"title": "Channel", "type": "string"}, "account_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Account Id"}, "campaign_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Campaign Id"}, "adset_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Adset Id"}, "ad_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Ad Id"}, "campaign_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Campaign Name"}, "adset_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Adset Name"}, "ad_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Ad Name"}, "ad_status": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Ad Status"}, "adset_status": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Adset Status"}, "campaign_status": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Campaign Status"}, "advertising_channel_type": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Advertising Channel Type"}, "ads_count": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Ads Count"}, "image": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Image"}, "video": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Video"}, "image_url": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Image Url"}, "video_url": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Video Url"}, "ad_creative_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Ad Creative Id"}, "influencer_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Influencer Id"}, "influencer_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Influencer Name"}, "cooperation_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Cooperation Id"}, "cooperation_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Cooperation Name"}, "placement_type": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Placement Type"}, "placement_source": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Placement Source"}, "labels": {"anyOf": [{"items": {"type": "string"}, "type": "array"}, {"type": "null"}], "title": "Labels"}, "cooperation_link_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Cooperation Link Id"}, "cooperation_link_title": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Cooperation Link Title"}, "discount_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Discount Code"}, "ad_spend": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Ad Spend"}, "influencer_fixed_commission": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Influencer Fixed Commission"}, "clicks": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Clicks"}, "link_click": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Link Click"}, "important_clicks": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Important Clicks"}, "impressions": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Impressions"}, "reach": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Reach"}, "comment": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Comment"}, "landing_page_view": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Landing Page View"}, "conversions": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Conversions"}, "all_conversions": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "All Conversions"}, "video_view": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Video View"}, "onsite_conversion_post_save": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Onsite Conversion Post Save"}, "video_avg_time_watched_actions": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Video Avg Time Watched Actions"}, "click_through_rate": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Click Through Rate"}, "frequency": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Frequency"}, "thumbstop_ratio": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Thumbstop Ratio"}, "cost_per_click": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Cost Per Click"}, "cost_per_mille": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Cost Per Mille"}, "customer_purchase": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Purchase"}, "customer_revenue": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Revenue"}, "customer_num_items": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Num Items"}, "visitor_pageview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Pageview"}, "visitor_unique_pageview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Pageview"}, "customer_pageview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Pageview"}, "customer_unique_pageview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Pageview"}, "visitor_productview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Productview"}, "visitor_unique_productview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Productview"}, "customer_productview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Productview"}, "customer_unique_productview": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Productview"}, "visitor_addtocart": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Addtocart"}, "visitor_unique_addtocart": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Addtocart"}, "customer_addtocart": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Addtocart"}, "customer_unique_addtocart": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Addtocart"}, "visitor_checkout": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Checkout"}, "visitor_unique_checkout": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Checkout"}, "customer_checkout": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Checkout"}, "customer_unique_checkout": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Checkout"}, "visitor_login": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Login"}, "visitor_unique_login": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Visitor Unique Login"}, "customer_login": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Login"}, "customer_unique_login": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Unique Login"}, "influencer_variable_commission": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Influencer Variable Commission"}, "total_spend": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Total Spend"}, "return_on_ad_spend": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Return On Ad Spend"}, "cost_per_order": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Cost Per Order"}, "conversion_rate": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Conversion Rate"}, "average_order_value": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Average Order Value"}, "discount_code_redemption_rate": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Discount Code Redemption Rate"}, "customer_acquisition_cost": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Acquisition Cost"}, "new_customer_purchase_ratio": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "New Customer Purchase Ratio"}, "new_visitor_pageview_ratio": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "New Visitor Pageview Ratio"}}, "required": ["date", "new_vs_returning", "channel"], "title": "NvrDailyBreakdownItemSchemaOut", "type": "object"}, "KpiChannelBreakdownSchemaIn": {"properties": {"csids": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "preset_id": {"title": "Preset Id", "type": "string"}, "start_date": {"format": "date", "title": "Start Date", "type": "string"}, "end_date": {"format": "date", "title": "End Date", "type": "string"}, "granularity": {"allOf": [{"enum": ["daily", "weekly", "monthly", "none"], "title": "Granularity", "type": "string"}], "default": "none", "description": "Specify the granularity to use in the breakdown. This results in either a daily/weekly/monthly key in the response, corresponding to the selected granularity. Use `none` if there should be no granularity provided beyond the detail provided in the overall key. Defaults to `none`. Daily granularity allowed up to 185 days. Weekly granularity allowed up to 104 weeks."}, "requested_metrics": {"description": "Specify which metrics to provide in the response. If you request a metric that requires other metrics in order to calculate it, those metrics will also be returned.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Requested Metrics", "type": "array", "uniqueItems": true}, "granularity_only_metrics": {"description": "Specify which metrics to provide at the level specified by <granularity>. This can be used to reduce payload response size if only a couple of daily/weekly/monthly metrics are required.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Granularity Only Metrics", "type": "array", "uniqueItems": true}, "daily_only_metrics": {"description": "DEPRECIATED. Please begin to use granularity only metrics.", "items": {"description": "A metric that a customer is interested in.\n\nPossible options based on HIVE-725 Frontend Swagger OpenAPI Specification.", "enum": ["visitor_unique_productview", "visitor_unique_pageview", "visitor_unique_checkout", "visitor_unique_addtocart", "visitor_unique_login", "visitor_productview", "visitor_pageview", "visitor_checkout", "visitor_addtocart", "visitor_login", "customer_unique_productview", "customer_unique_pageview", "customer_unique_checkout", "customer_unique_addtocart", "customer_unique_login", "customer_productview", "customer_pageview", "customer_checkout", "customer_addtocart", "customer_login", "customer_revenue", "customer_purchase", "customer_num_items", "impressions", "clicks", "link_click", "reach", "comment", "landing_page_view", "conversions", "all_conversions", "onsite_conversion_post_save", "video_avg_time_watched_actions", "video_view", "important_clicks", "total_spend", "ad_spend", "frequency", "click_through_rate", "cost_per_click", "thumbstop_ratio", "cost_per_mille", "return_on_ad_spend", "cost_per_order", "average_order_value", "conversion_rate", "influencer_fixed_commission", "influencer_variable_commission", "new_customer_purchase_ratio", "new_visitor_pageview_ratio", "customer_acquisition_cost", "discount_code_redemption_rate"], "title": "KpiOverviewMetric", "type": "string"}, "title": "Daily Only Metrics", "type": "array", "uniqueItems": true}, "use_simple_touchpoint_window": {"default": true, "description": "If True, use the same start_date and end_date for touchpoints as used for attributions. Otherwise, apply the logic defined by the preset.", "title": "Use Simple Touchpoint Window", "type": "boolean"}, "pagination": {"allOf": [{"description": "Pagination settings for KPI channel breakdown responses.", "properties": {"offset": {"default": 0, "description": "The entry to begin providing data from.", "title": "Offset", "type": "integer"}, "limit": {"default": 25, "description": "The maximum number of entries to provide, based on the requested breakdown dimension, not on nvr_columns or date. For example, a limit of 10 with a breakdown_dimension of AD returns 10 distinct ads, though those rows may span many dates and/or new/returning/total buckets. Pagination is distinct for each channel.", "maximum": 10000, "minimum": 0, "title": "Limit", "type": "integer"}}, "title": "KpiOverviewPaginationIn", "type": "object"}]}, "sorting": {"allOf": [{"properties": {"sort_by": {"description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning). Sorting is distinct for each channel.", "items": {"anyOf": [{"$ref": "#/components/schemas/KpiOverviewMetric"}, {"$ref": "#/components/schemas/ExtraSortField"}]}, "title": "Sort By", "type": "array"}, "descending": {"default": false, "title": "Descending", "type": "boolean"}}, "title": "KpiOverviewSortingSchema", "type": "object"}]}, "filter_and_sort_target": {"allOf": [{"description": "Possible values of customer_type and visitor_type.", "enum": ["new", "returning", "total"], "title": "UserType", "type": "string"}], "default": "total", "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}, "filters": {"default": "[]", "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```", "title": "Filters", "type": "string"}}, "required": ["csids", "preset_id", "start_date", "end_date"], "title": "KpiChannelBreakdownSchemaIn", "type": "object"}, "KpiDiscountCodesSchemaOut": {"properties": {"overall": {"$ref": "#/components/schemas/KpiOverviewOverallSchema"}, "breakdown": {"$ref": "#/components/schemas/_KpiBreakdownSchemaOut"}}, "required": ["overall", "breakdown"], "title": "KpiDiscountCodesSchemaOut", "type": "object"}, "AggregatedAttributionConversionSchemaIn": {"description": "Query parameters for the aggregated_attributions endpoint.\n\nThis schema is used to filter the aggregated_attributions table by conversion type.\nIt inherits pagination limit and offset from the AnalyticsDefaultPagination.Input schema.", "properties": {"limit": {"default": 100, "maximum": 2000, "minimum": 1, "title": "Limit", "type": "integer"}, "offset": {"default": 0, "minimum": 0, "title": "Offset", "type": "integer"}, "preset_id": {"description": "The id of the preset to use for the analysis.", "title": "Preset Id", "type": "string"}, "start_date": {"description": "The start date of the analysis.", "format": "date", "title": "Start Date", "type": "string"}, "end_date": {"description": "The end date of the analysis.", "format": "date", "title": "End Date", "type": "string"}, "is_conversion": {"default": false, "description": "Filter for conversions only.", "title": "Is Conversion", "type": "boolean"}}, "required": ["preset_id", "start_date", "end_date"], "title": "AggregatedAttributionConversionSchemaIn", "type": "object"}, "AggregatedAttributionSchemaOut": {"properties": {"aggregated_attribution_id": {"description": "The id of the aggregated attribution.", "format": "uuid", "title": "Aggregated Attribution Id", "type": "string"}, "site_id": {"description": "The site id.", "format": "uuid", "title": "Site Id", "type": "string"}, "preset_id": {"description": "The preset id.", "title": "Preset Id", "type": "string"}, "when": {"description": "The date of the attribution.", "format": "date", "title": "When", "type": "string"}, "dimensions": {"additionalProperties": true, "description": "The dimensions of the attribution.", "title": "Dimensions", "type": "object"}, "weights": {"additionalProperties": {"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$", "type": "string"}, "description": "The weights of the attribution.", "title": "Weights", "type": "object"}, "amount": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "The amount of the conversion.", "title": "Amount"}, "local_amount": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "The local amount of the conversion.", "title": "Local Amount"}, "currency_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "The currency code of the conversion.", "title": "Currency Code"}, "conversion_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "The conversion id.", "title": "Conversion Id"}, "timestamp": {"anyOf": [{"format": "date-time", "type": "string"}, {"type": "null"}], "description": "The timestamp of the conversion.", "title": "Timestamp"}}, "required": ["aggregated_attribution_id", "site_id", "preset_id", "when", "dimensions", "weights"], "title": "AggregatedAttributionSchemaOut", "type": "object"}, "PaginatedAggregatedAttributionSchemaOut": {"properties": {"items": {"items": {"$ref": "#/components/schemas/AggregatedAttributionSchemaOut"}, "title": "Items", "type": "array"}, "count": {"default": 0, "title": "Count", "type": "integer"}}, "title": "PaginatedAggregatedAttributionSchemaOut", "type": "object"}, "EventConversionChannel": {"description": "The source of the conversion payment.", "enum": ["direct", "web", "mobile", "amazon", "google"], "title": "EventConversionChannel", "type": "string"}, "EventConversionPaymentStatus": {"description": "The status of the conversion payment.", "enum": ["paid", "refunded", "pending", "partially_refunded", "partially_paid", "authorized", "voided"], "title": "EventConversionPaymentStatus", "type": "string"}, "EventConversionStatus": {"description": "The status of the conversion.", "enum": ["open", "delivered", "canceled", "returned"], "title": "EventConversionStatus", "type": "string"}, "EventDateRangeExportQueryParams": {"description": "Query parameters for async date-range event export.", "properties": {"format": {"allOf": [{"description": "The format to use when exporting events.", "enum": ["csv", "parquet"], "title": "ExportFormat", "type": "string"}], "default": "csv", "description": "The export format. Defaults to CSV."}, "start_date": {"description": "The start of the events to query. Accepts a date (e.g. 2025-07-17) or a datetime (e.g. 2025-07-17 00:00:00).", "format": "date-time", "title": "Start Date", "type": "string"}, "end_date": {"description": "The end of the events to query. Accepts a date (e.g. 2025-07-17) or a datetime (e.g. 2025-07-17 14:01:51).", "format": "date-time", "title": "End Date", "type": "string"}, "has_touchpoints": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "description": "Whether the events should have touchpoints. If None, all events will be returned. If True, it will only return events with touchpoints info. If False, it will only return events without touchpoints info.", "title": "Has Touchpoints"}, "event_types": {"anyOf": [{"items": {"$ref": "#/components/schemas/EventType"}, "type": "array"}, {"type": "null"}], "description": "The types of events to query. If None, all events will be returned. If provided, only events of these types will be returned.", "title": "Event Types"}, "timezone": {"anyOf": [{"format": "zoneinfo", "type": "string"}, {"type": "null"}], "description": "The timezone to use for the events. If None, the default site timezone will be used.", "examples": ["Europe/Berlin", "Europe/London", "America/New_York"], "title": "Timezone"}, "ordering": {"description": "The ordering of the events. If None, the events will be ordered by timestamp in descending order. You may also specify reverse orderings by prefixing the field name with '-'. For example, '-timestamp' will order by timestamp in ascending order.", "items": {"description": "The fields that can be used to order the events.", "enum": ["timestamp", "-timestamp"], "title": "EventOrderingField", "type": "string"}, "title": "Ordering", "type": "array"}, "payment_status": {"anyOf": [{"$ref": "#/components/schemas/EventConversionPaymentStatus"}, {"type": "null"}], "description": "The payment status of the events. If None, all payment statuses will be returned. If provided, only events with this payment status will be returned."}, "payment_source": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "The payment source of the events. If None, all payment sources will be returned. If provided, only events with this payment source will be returned.", "title": "Payment Source"}, "conversion_status": {"anyOf": [{"$ref": "#/components/schemas/EventConversionStatus"}, {"type": "null"}], "description": "The conversion status of the events. If None, all conversion statuses will be returned. If provided, only events with this conversion status will be returned."}, "conversion_channel": {"anyOf": [{"$ref": "#/components/schemas/EventConversionChannel"}, {"type": "null"}], "description": "The conversion channel of the events. If None, all conversion channels will be returned. If provided, only events with this conversion channel will be returned."}, "conversion_tags": {"anyOf": [{"items": {"type": "string"}, "type": "array"}, {"type": "null"}], "description": "The conversion tags of the events. If None, all conversion tags will be returned. If provided, only events with these conversion tags will be returned.", "title": "Conversion Tags"}, "search": {"anyOf": [{"maxLength": 255, "minLength": 1, "type": "string"}, {"type": "null"}], "description": "Search term to filter events. Searches across user group ID, URL (origin/path) and event property keys/values. Case-insensitive.", "title": "Search"}}, "required": ["start_date", "end_date"], "title": "EventDateRangeExportQueryParams", "type": "object"}, "EventOrderingField": {"description": "The fields that can be used to order the events.", "enum": ["timestamp", "-timestamp"], "title": "EventOrderingField", "type": "string"}, "EventType": {"enum": ["purchase", "pageview", "productview", "login", "addtocart", "cart", "checkout"], "title": "EventType", "type": "string"}, "CustomerJourneyOverviewSchemaIn": {"properties": {"csids": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "start_date": {"format": "date", "title": "Start Date", "type": "string"}, "end_date": {"format": "date", "title": "End Date", "type": "string"}}, "required": ["csids", "start_date", "end_date"], "title": "CustomerJourneyOverviewSchemaIn", "type": "object"}, "CustomerJourneyOverallKpisSchema": {"properties": {"touchpoints_to_purchase": {"$ref": "#/components/schemas/CustomerJourneyOverallNvrSchema", "description": "The number of touchpoints in the completed customer journey."}, "time_to_conversion": {"$ref": "#/components/schemas/CustomerJourneyOverallNvrSchema", "description": "The time taken from the first touchpoint in the completed customer journey to the conversion. Unit is seconds unless otherwise specified."}}, "required": ["touchpoints_to_purchase", "time_to_conversion"], "title": "CustomerJourneyOverallKpisSchema", "type": "object"}, "CustomerJourneyOverallNvrSchema": {"properties": {"new": {"allOf": [{"$ref": "#/components/schemas/CustomerJourneySummarySchema"}]}, "returning": {"allOf": [{"$ref": "#/components/schemas/CustomerJourneySummarySchema"}]}, "total": {"allOf": [{"$ref": "#/components/schemas/CustomerJourneySummarySchema"}]}}, "title": "CustomerJourneyOverallNvrSchema", "type": "object"}, "CustomerJourneySummarySchema": {"properties": {"mean": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Mean"}, "p25": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "P25"}, "p50": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "P50"}, "p75": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "P75"}, "p95": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "P95"}, "distribution": {"anyOf": [{"additionalProperties": {"type": "integer"}, "type": "object"}, {"type": "null"}], "description": "Puts the metric into buckets, - to enable displaying a distribution.", "title": "Distribution"}}, "title": "CustomerJourneySummarySchema", "type": "object"}, "CustomerJourneyInitiatorHolderCloserNvrSchema": {"properties": {"new": {"default": 0, "title": "New", "type": "integer"}, "returning": {"default": 0, "title": "Returning", "type": "integer"}, "total": {"default": 0, "title": "Total", "type": "integer"}}, "title": "CustomerJourneyInitiatorHolderCloserNvrSchema", "type": "object"}, "CustomerJourneyInitiatorHolderCloserSchema": {"properties": {"initiator": {"additionalProperties": {"$ref": "#/components/schemas/CustomerJourneyInitiatorHolderCloserNvrSchema"}, "description": "The number of times each channel was the first touchpoint in a completed customer journey. A completed customer journey of only a single touchpoint is categorised as both an initiator and a closer.", "title": "Initiator", "type": "object"}, "holder": {"additionalProperties": {"$ref": "#/components/schemas/CustomerJourneyInitiatorHolderCloserNvrSchema"}, "description": "The number of times each channel was a touchpoint other than the first or last touchpoint in a completed customer journey.", "title": "Holder", "type": "object"}, "closer": {"additionalProperties": {"$ref": "#/components/schemas/CustomerJourneyInitiatorHolderCloserNvrSchema"}, "description": "The number of times each channel was the last touchpoint before conversion in a completed customer journey. A completed customer journey of only a single touchpoint is categorised as both an initiator and a closer.", "title": "Closer", "type": "object"}}, "title": "CustomerJourneyInitiatorHolderCloserSchema", "type": "object"}, "ConversionPathBreakdownDimension": {"description": "Enum to control the granularity of conversion path breakdown.", "enum": ["channel", "campaign"], "title": "ConversionPathBreakdownDimension", "type": "string"}, "ConversionPathSchemaIn": {"properties": {"csids": {"items": {"format": "uuid", "type": "string"}, "minItems": 1, "title": "Csids", "type": "array"}, "start_date": {"format": "date", "title": "Start Date", "type": "string"}, "end_date": {"format": "date", "title": "End Date", "type": "string"}, "breakdown_dimension": {"$ref": "#/components/schemas/ConversionPathBreakdownDimension"}, "pagination": {"allOf": [{"properties": {"offset": {"default": 0, "description": "The entry to begin providing data from.", "title": "Offset", "type": "integer"}, "limit": {"default": 25, "description": "The maximum number of entries to provide, based on the dimension requested - not based on nvr_columns! A limit of 10, with a breakdown_dimension of CHANNEL, results in 10 different channel based customer journeys in the response; but that could be across many new/returning/total.", "maximum": 10000, "minimum": 1, "title": "Limit", "type": "integer"}}, "title": "CustomerJourneyPaginationIn", "type": "object"}]}, "sorting": {"allOf": [{"properties": {"sort_by": {"description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning)", "items": {"description": "Metrics relevant for customer journeys.", "enum": ["customer_revenue", "customer_purchase", "average_order_value", "number_of_customers", "number_of_touchpoints", "average_seconds_to_conversion"], "title": "CustomerJourneyMetric", "type": "string"}, "title": "Sort By", "type": "array"}, "descending": {"default": false, "title": "Descending", "type": "boolean"}}, "title": "CustomerJourneySortingSchema", "type": "object"}]}, "filters": {"default": "[]", "description": "A JSON-encoded list of filter clauses. Two formats are accepted:\n\nNew format (recommended): Each element has a \"logic\" key (\"and\" or \"or\") and a \"conditions\" list. Each condition has \"name\", \"operator\", and \"value\" keys.\nExample:\n```json\n{\n    \"logic\": \"or\",\n    \"clauses\": [\n        {\n            \"logic\": \"or\",\n            \"conditions\": [{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n        },\n        {\n            \"logic\": \"and\",\n            \"conditions\": [{\"name\": \"campaign_name\", \"operator\": \"icontains\", \"value\": \"summer\"}, {\"name\": \"campaign_name\", \"operator\": \"not_icontains\", \"value\": \"winter\"}]\n        }\n    ]\n}\n```\n\nOld format (deprecated): A flat list of {\"name\", \"operator\", \"value\"} objects combined with AND.\nExample:\n```json\n[{\"name\": \"customer_revenue\", \"operator\": \"gte\", \"value\": 500}, {\"name\": \"customer_revenue\", \"operator\": \"lte\", \"value\": 100}]\n```", "title": "Filters", "type": "string"}, "filter_and_sort_target": {"allOf": [{"description": "Possible values of customer_type and visitor_type.", "enum": ["new", "returning", "total"], "title": "UserType", "type": "string"}], "default": "total", "description": "Filter and sort using the specified user type. Data from other user types is still returned, but only if it successfully passes the filters for the specified `filter_and_sort_target`."}}, "required": ["csids", "start_date", "end_date", "breakdown_dimension"], "title": "ConversionPathSchemaIn", "type": "object"}, "CustomerJourneyMetric": {"description": "Metrics relevant for customer journeys.", "enum": ["customer_revenue", "customer_purchase", "average_order_value", "number_of_customers", "number_of_touchpoints", "average_seconds_to_conversion"], "title": "CustomerJourneyMetric", "type": "string"}, "CustomerJourneyPaginationIn": {"properties": {"offset": {"default": 0, "description": "The entry to begin providing data from.", "title": "Offset", "type": "integer"}, "limit": {"default": 25, "description": "The maximum number of entries to provide, based on the dimension requested - not based on nvr_columns! A limit of 10, with a breakdown_dimension of CHANNEL, results in 10 different channel based customer journeys in the response; but that could be across many new/returning/total.", "maximum": 10000, "minimum": 1, "title": "Limit", "type": "integer"}}, "title": "CustomerJourneyPaginationIn", "type": "object"}, "CustomerJourneySortingSchema": {"properties": {"sort_by": {"description": "Define which fields to sort by. Sorting is based on the total value (i.e new plus returning)", "items": {"description": "Metrics relevant for customer journeys.", "enum": ["customer_revenue", "customer_purchase", "average_order_value", "number_of_customers", "number_of_touchpoints", "average_seconds_to_conversion"], "title": "CustomerJourneyMetric", "type": "string"}, "title": "Sort By", "type": "array"}, "descending": {"default": false, "title": "Descending", "type": "boolean"}}, "title": "CustomerJourneySortingSchema", "type": "object"}, "ConversionPathBreakdownItemSchemaOut": {"properties": {"info": {"$ref": "#/components/schemas/ConversionPathInfoSchema"}, "new": {"anyOf": [{"$ref": "#/components/schemas/ConversionPathMetrics"}, {"type": "null"}]}, "returning": {"anyOf": [{"$ref": "#/components/schemas/ConversionPathMetrics"}, {"type": "null"}]}, "total": {"anyOf": [{"$ref": "#/components/schemas/ConversionPathMetrics"}, {"type": "null"}]}}, "required": ["info"], "title": "ConversionPathBreakdownItemSchemaOut", "type": "object"}, "ConversionPathInfoSchema": {"properties": {"path": {"description": "List of the touchpoints in the journey. Each may of of type `Channel` if this is a channel breakdown, or just strings if its a more granular breakdown.", "items": {"type": "string"}, "title": "Path", "type": "array"}}, "required": ["path"], "title": "ConversionPathInfoSchema", "type": "object"}, "ConversionPathMetrics": {"properties": {"customer_purchase": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Purchase"}, "customer_revenue": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Customer Revenue"}, "number_of_customers": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Number Of Customers"}, "average_seconds_to_conversion": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Average Seconds To Conversion"}, "number_of_touchpoints": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Number Of Touchpoints"}, "average_order_value": {"anyOf": [{"type": "number"}, {"type": "integer"}, {"type": "null"}], "title": "Average Order Value"}, "average_seconds_to_next": {"anyOf": [{"items": {"type": "integer"}, "type": "array"}, {"type": "null"}], "title": "Average Seconds To Next"}}, "title": "ConversionPathMetrics", "type": "object"}, "ConversionPathOverallSchemaOut": {"properties": {"new": {"anyOf": [{"$ref": "#/components/schemas/ConversionPathMetrics"}, {"type": "null"}]}, "returning": {"anyOf": [{"$ref": "#/components/schemas/ConversionPathMetrics"}, {"type": "null"}]}, "total": {"anyOf": [{"$ref": "#/components/schemas/ConversionPathMetrics"}, {"type": "null"}]}}, "title": "ConversionPathOverallSchemaOut", "type": "object"}, "ConversionPathSchemaOut": {"properties": {"breakdown_dimension": {"$ref": "#/components/schemas/ConversionPathBreakdownDimension"}, "overall": {"$ref": "#/components/schemas/ConversionPathOverallSchemaOut"}, "breakdown": {"$ref": "#/components/schemas/_ConversionPathBreakdownSchemaOut"}}, "required": ["breakdown_dimension", "overall", "breakdown"], "title": "ConversionPathSchemaOut", "type": "object"}, "_ConversionPathBreakdownSchemaOut": {"properties": {"data": {"items": {"$ref": "#/components/schemas/ConversionPathBreakdownItemSchemaOut"}, "title": "Data", "type": "array"}, "pagination": {"$ref": "#/components/schemas/PaginationOut"}}, "required": ["data", "pagination"], "title": "_ConversionPathBreakdownSchemaOut", "type": "object"}, "Input": {"properties": {"limit": {"default": 100, "maximum": 2000, "minimum": 1, "title": "Limit", "type": "integer"}, "offset": {"default": 0, "minimum": 0, "title": "Offset", "type": "integer"}}, "title": "Input", "type": "object"}, "ListCustomerJourneysByOrderSchemaIn": {"description": "Input schema for the list customer journeys by order ID endpoint.", "properties": {"order_id": {"description": "The order ID to filter the customer journeys by. This is the conversion_id within the dimensions field of the journey_touchpoints table.", "title": "Order Id", "type": "string"}}, "required": ["order_id"], "title": "ListCustomerJourneysByOrderSchemaIn", "type": "object"}, "JourneyTouchpointSchemaOut": {"description": "Single touchpoint for a customer journey.", "properties": {"journey_touchpoint_id": {"description": "The ID of the journey touchpoint.", "format": "uuid", "title": "Journey Touchpoint Id", "type": "string"}, "site_id": {"description": "The ID of the site.", "format": "uuid", "title": "Site Id", "type": "string"}, "when": {"description": "The timestamp of the touchpoint.", "format": "date-time", "title": "When", "type": "string"}, "conversion_event_id": {"description": "The ID of the conversion event.", "format": "uuid", "title": "Conversion Event Id", "type": "string"}, "conversion_when": {"description": "The timestamp of the conversion.", "format": "date-time", "title": "Conversion When", "type": "string"}, "touchpoint_index": {"description": "The index of the touchpoint in the journey.", "title": "Touchpoint Index", "type": "integer"}, "number_of_touchpoints": {"description": "The number of touchpoints in the journey.", "title": "Number Of Touchpoints", "type": "integer"}, "dimensions": {"additionalProperties": {"type": "string"}, "description": "The dimensions of the touchpoint. Includes conversion_id, channel, campaign, ad set etc.", "title": "Dimensions", "type": "object"}, "seconds_to_next": {"description": "The seconds to the next touchpoint.", "title": "Seconds To Next", "type": "integer"}, "seconds_to_conversion": {"description": "The seconds to the conversion.", "title": "Seconds To Conversion", "type": "integer"}}, "required": ["journey_touchpoint_id", "site_id", "when", "conversion_event_id", "conversion_when", "touchpoint_index", "number_of_touchpoints", "dimensions", "seconds_to_next", "seconds_to_conversion"], "title": "JourneyTouchpointSchemaOut", "type": "object"}, "PagedJourneyTouchpointSchemaOut": {"properties": {"items": {"items": {"$ref": "#/components/schemas/JourneyTouchpointSchemaOut"}, "title": "Items", "type": "array"}, "count": {"title": "Count", "type": "integer"}}, "required": ["items", "count"], "title": "PagedJourneyTouchpointSchemaOut", "type": "object"}}, "securitySchemes": {"OrgApiTokenAuth": {"type": "apiKey", "in": "header", "name": "tracify-token"}, "HiveApiKey": {"type": "apiKey", "in": "header", "name": "tracify-token"}}}, "servers": []}