| Parameter | Description |
|---|---|
| `brand_ids` | Brand IDs from the UI. Separate multiple brands with commas (e.g., `144,145,146`) |
| `channels` | Social platforms to include: * Instagram: `INSTAGRAM` * TikTok: `TIKTOK` * Facebook: `FACEBOOK` * YouTube: `YOUTUBE` * X: `TWITTER` Request multiple channels by separating with commas (e.g., `INSTAGRAM,TIKTOK,FACEBOOK`) |
| `metrics` | Community metrics to return: * Messages Received: `MESSAGES_RECEIVED` - Total messages received * Reply Rate: `REPLY_RATE` - Percentage of messages replied to by your team * Response Time: `RESPONSE_TIME` - Average time to respond to messages Request multiple metrics by separating with commas (e.g., `MESSAGES_RECEIVED,REPLY_RATE,RESPONSE_TIME`) |
| `start_date` / `end_date` | Reporting date range in YYYY-MM-DD format |
| `context_start_date` / `context_end_date` | Comparison date range for period-over-period analysis. Use same dates if no comparison needed |
| `report_type` | Set to `TOTAL_METRIC` for aggregated totals |
| Parameter | Description |
|---|---|
| `brand_ids` | Brand IDs from the UI. Separate multiple brands with commas (e.g., `144,145,146`) |
| `channels` | Social platforms to include: * Instagram: `INSTAGRAM` * TikTok: `TIKTOK` * Facebook: `FACEBOOK` * YouTube: `YOUTUBE` * X: `TWITTER` Request multiple channels by separating with commas (e.g., `INSTAGRAM,TIKTOK,FACEBOOK`) |
| `metrics` | Community metrics to track over time: * Messages Received: `MESSAGES_RECEIVED` - Total messages received * Reply Rate: `REPLY_RATE` - Percentage of messages replied to by your team * Response Time: `RESPONSE_TIME` - Average time to respond to messages Request multiple metrics by separating with commas (e.g., `MESSAGES_RECEIVED,REPLY_RATE,RESPONSE_TIME`) |
| `start_date` / `end_date` | Reporting date range in YYYY-MM-DD format |
| `context_start_date` / `context_end_date` | Comparison date range for period-over-period analysis. Use same dates if no comparison needed |
| `report_type` | Set to `GRAPH` for time-series data |
| Parameter | Description |
|---|---|
| `brand_ids` | Your brand ID. |
| `channels` | Competitive channel to report on: * Instagram: `INSTAGRAM_COMPETITIVE` * Facebook: `FACEBOOK_COMPETITIVE` * YouTube: `YOUTUBE_COMPETITIVE` * Twitter (X): `TWITTER_COMPETITIVE` Use the `_COMPETITIVE` suffix for competitor reports. |
| `metrics` | Metric to rank posts by. See [Metrics](#metrics) section below for all options. Request multiple metrics by separating with commas (e.g., `TOTAL_ENGAGEMENTS,REACH,VIEWS`) |
| `competitor_source_account_ids` | Comma-separated IDs from Step 1: `2306810931,230344968,232342925` |
| `start_date` / `end_date` | Reporting period in `YYYY-MM-DD` format |
| `context_start_date` / `context_end_date` | Comparison date range for period-over-period analysis. Use same dates as `start_date` / `end_date` if no comparison needed |
| `report_type` | Set to `COMPETITIVE_MULTI_BRAND_METRIC` for this report |
| Parameter | Description |
|---|---|
| `brand_ids` | Your brand ID. |
| `channels` | Competitive channel to report on: * Instagram: `INSTAGRAM_COMPETITIVE` * Facebook: `FACEBOOK_COMPETITIVE` * YouTube: `YOUTUBE_COMPETITIVE` * Twitter (X): `TWITTER_COMPETITIVE` Use the `_COMPETITIVE` suffix for competitor reports. |
| `metrics` | Metric to rank posts by. See [Metrics](#metrics) section below for all options. Request multiple metrics by separating with commas (e.g., `LIKES,TOTAL_ENGAGEMENTS,REACH`) |
| `competitor_source_account_ids` | Comma-separated IDs from Step 1: `2306810931,230344968,232342925` |
| `start_date` / `end_date` | Reporting period in `YYYY-MM-DDTHH:MM:SSZ` format (ISO 8601 with timezone) |
| `context_start_date` / `context_end_date` | Comparison period for trend analysis in `YYYY-MM-DDTHH:MM:SSZ` format. |
| `report_type` | Set to `COMPETITIVE_CONTENT` for this report |
| `limit` | Number of posts to return per competitor. Defaults to 6 if not specified. |
| Parameter | Description |
|---|---|
| `brand_ids` | Your brand ID. |
| `channels` | Competitive channel to report on: * Instagram: `INSTAGRAM_COMPETITIVE` * Facebook: `FACEBOOK_COMPETITIVE` * YouTube: `YOUTUBE_COMPETITIVE` * Twitter (X): `TWITTER_COMPETITIVE` Use the `_COMPETITIVE` suffix for competitor reports. |
| `metrics` | Metric to track over time. See [Metrics](#metrics) section below for all options. Request multiple metrics by separating with commas (e.g., `NUMBER_OF_POSTS,TOTAL_ENGAGEMENTS,REACH`) |
| `competitor_source_account_ids` | Comma-separated IDs from Step 1: `2306810931,230344968,232342925` |
| `start_date` / `end_date` | Reporting period in `YYYY-MM-DD` format. The graph report returns daily data points for each date in this range. |
| `context_start_date` / `context_end_date` | Comparison date range for period-over-period analysis. Use same dates as `start_date` / `end_date` if no comparison needed |
| `report_type` | Set to `COMPETITIVE_GRAPH` for time-series data |
| `time_scale` | Time granularity for data aggregation: * `DAILY` - Daily data points (default) * `MONTHLY` - Monthly data points Optional. Defaults to `DAILY` if not specified. |
| Parameter | Description |
|---|---|
| `brand_ids` | Brand IDs from the UI. Separate multiple brands with commas (e.g., `144,145`) |
| `channels` | UGC platforms to include: * Instagram: `INSTAGRAM_UGC` * Instagram Stories: `INSTAGRAM_STORIES_UGC` * TikTok: `TIKTOK_UGC` **Note:** Make separate API calls for each channel |
| `metrics` | UGC metrics to return (e.g., `UGC_COMMENTS`, `UGC_LIKES`, `UGC_REACH`). See [Metrics section](#metrics) for available options per channel |
| `start_date` / `end_date` | Reporting date range in `YYYY-MM-DD` format |
| `context_start_date` / `context_end_date` | Comparison date range for trend analysis. Use same dates as `start_date` / `end_date` if no comparison needed |
| `report_type` | Set to `CONTENT` for ranked post lists |
| `limit` | Number of posts to return. Useful for "top performers" dashboards |
| Parameter | Description |
|---|---|
| `brand_ids` | Brand IDs from the UI. Separate multiple brands with commas (e.g., `144,145`) |
| `channels` | UGC platforms to include: * Instagram: `INSTAGRAM_UGC` * Instagram Stories: `INSTAGRAM_STORIES_UGC` * TikTok: `TIKTOK_UGC` **Note:** Make separate API calls for each channel |
| `metrics` | UGC metrics to return (e.g., `UGC_COMMENTS`, `UGC_LIKES`, `UGC_REACH`). See [Metrics section](#metrics) for available options per channel |
| `start_date` / `end_date` | Reporting date range in `YYYY-MM-DD` format |
| `context_start_date` / `context_end_date` | Comparison date range for trend analysis. Use same dates if no comparison needed |
| `report_type` | Set to `TOTAL_METRIC` for aggregated totals |
| Parameter | Description |
|---|---|
| `brand_ids` | Brand IDs from the UI. Separate multiple brands with commas (e.g., `144,145`) |
| `channels` | UGC platforms to include: * Instagram: `INSTAGRAM_UGC` * Instagram Stories: `INSTAGRAM_STORIES_UGC` * TikTok: `TIKTOK_UGC` **Note:** Make separate API calls for each channel |
| `metrics` | UGC metrics to track over time (e.g., `UGC_COMMENTS`, `UGC_LIKES`, `UGC_REACH`). See [Metrics section](#metrics) for available options per channel |
| `start_date` / `end_date` | Reporting date range in YYYY-MM-DD format |
| `context_start_date` / `context_end_date` | Comparison date range for trend analysis. Use same dates if no comparison needed |
| `report_type` | Set to `GRAPH` for time-series data |
| `time_scale` *(optional)* | Choose `DAILY` (default) or `MONTHLY` granularity |
| Parameter | Description |
|---|---|
| `brand_ids` | Brand IDs from the UI. Separate multiple brands with commas (e.g., `12345,67890`) |
| `channels` | Social platforms to include: * Instagram: `INSTAGRAM` * Instagram Stories: `INSTAGRAM_STORIES` * TikTok: `TIKTOK` * Facebook: `FACEBOOK` * Pinterest: `PINTEREST` * YouTube: `YOUTUBE` * LinkedIn: `LINKEDIN` * X: `TWITTER` |
| `metrics` | Metric to rank posts by. See [Available Metrics](#metrics) section below for all options. Request multiple metrics by separating with commas (e.g., `TOTAL_ENGAGEMENTS,REACH,VIEWS`) |
| `start_date` / `end_date` | Reporting date range in YYYY-MM-DD format |
| `context_start_date` / `context_end_date` | Comparison date range for period-over-period analysis. Use same dates if no comparison needed |
| `report_type` | Set to `CONTENT` for ranked post lists |
| `limit` | Number of posts to return. Defaults to 6 if not specified |
| Parameter | Description |
|---|---|
| `brand_ids` | Your brand ID. Use comma-separated values for multiple brands (e.g., `144,256`). |
| `channels` | Social platform to report on. Options: * `INSTAGRAM` - Feed posts * `INSTAGRAM_STORIES` - Stories * `FACEBOOK` - Facebook posts * `TIKTOK` - TikTok videos * `TWITTER` - X posts * `YOUTUBE` - YouTube videos * `PINTEREST` - Pinterest pins * `LINKEDIN` - LinkedIn posts |
| `metrics` | Time-series metrics to track. See the Metrics section below for all available options. Track multiple metrics by separating with commas (e.g., `VIEWS,REACH,TOTAL_ENGAGEMENTS`). |
| `report_type` | Set to `GRAPH` to return time-series values grouped by date rather than aggregated totals. |
| `time_scale` | Time granularity for your data: * `DAILY` (default) - Breakdown by day * `MONTHLY` - Breakdown by month |
| `start_date` / `end_date` | Your reporting period in `YYYY-MM-DD` format. |
| `context_start_date` / `context_end_date` | Optional comparison period for trend analysis in `YYYY-MM-DD` format. Compare current performance against a previous time range. |
| Parameter | Description |
|---|---|
| `brand_ids` | Brand IDs from the UI. Separate multiple brands with commas (e.g., `144,145`) |
| `channels` | Social platforms to include: * Instagram: `INSTAGRAM` * Instagram Stories: `INSTAGRAM_STORIES` * TikTok: `TIKTOK` * Facebook: `FACEBOOK` * YouTube: `YOUTUBE` * Pinterest: `PINTEREST` * Twitter (X): `TWITTER` * LinkedIn: `LINKEDIN` |
| `metrics` | Metrics to return (e.g., views, followers, engagements) |
| `start_date` / `end_date` | Reporting date range in YYYY-MM-DD format |
| `context_start_date` / `context_end_date` | Comparison date range for trend analysis. Use same dates if no comparison needed |
| `report_type` | Set to `TOTAL_METRIC` for aggregated totals |
| `aggregate_by` | Primary grouping dimension for the response. Use when querying multiple brands or channels (e.g., `BRAND`). See [accepted values](/changelog/reports-data-response-structured-by-aggregate-by-and-secondary-aggregate-by). |
| `secondary_aggregate_by` | Optional second grouping dimension. Set to `CHANNEL` to break down each brand by channel. When included, the response adds a `breakdowns` level inside each primary group. See [Querying multiple brands and channels](#querying-multiple-brands-and-channels). |
| Parameter | Description |
|---|---|
| `brand_ids` | Your brand ID. |
| `channels` | Ad platform to report on: * Meta Ads: `META_ADS` * TikTok Ads: `TIKTOK_ADS` Only one channel can be specified per request. |
| `metrics` | Metric to report on. See [Metrics](#metrics) section below for all options. Request multiple metrics by separating with commas (e.g., `LINK_CLICKS,IMPRESSIONS,SPEND`) |
| `source_ad_account_ids` | Comma-separated ad account IDs from Step 1: `1368643043296927,7113956961980284930` |
| `source_campaign_ids` | Comma-separated campaign IDs from Step 2: `120236587787680490,120236587787680491` |
| `start_date` / `end_date` | Reporting period in `YYYY-MM-DD` format |
| `context_start_date` / `context_end_date` | Comparison date range for period-over-period analysis. Use same dates as `start_date` / `end_date` if no comparison needed |
| `report_type` | Set to `ADS_TOTAL_METRIC` for this report |
| Parameter | Description |
|---|---|
| `brand_ids` | Your brand ID. |
| `channels` | Ad platform to report on: * Meta Ads: `META_ADS` * TikTok Ads: `TIKTOK_ADS` Only one channel can be specified per request. |
| `metrics` | Metric to track over time. See [Metrics](#metrics) section below for all options. Request multiple metrics by separating with commas (e.g., `LINK_CLICKS,IMPRESSIONS,SPEND`) |
| `source_ad_account_ids` | Comma-separated ad account IDs from Step 1: `1368643043296927,7113956961980284930` |
| `source_campaign_ids` | Comma-separated campaign IDs from Step 2: `120236587787680490,120236587787680491` |
| `start_date` / `end_date` | Reporting period in `YYYY-MM-DD` format. The graph report returns daily data points for each date in this range. |
| `context_start_date` / `context_end_date` | Comparison date range for period-over-period analysis. Use same dates as `start_date` / `end_date` if no comparison needed |
| `report_type` | Set to `ADS_GRAPH` for time-series data |
| `time_scale` | Time granularity for data aggregation: * `DAILY` - Daily data points (default) * `MONTHLY` - Monthly data points Optional. Defaults to `DAILY` if not specified. |
| Parameter | Description |
|---|---|
| `brand_ids` | Your brand ID from the UI |
| `channels` | Platform to query: * Instagram: `INSTAGRAM` * TikTok: `TIKTOK` * Facebook: `FACEBOOK` * YouTube: `YOUTUBE` * LinkedIn: `LINKEDIN` * X: `TWITTER` * Web: `WEB` * Reddit: `REDDIT` |
| `metrics` | Social listening metrics available for all channels: * Avg. Engagements: `AVERAGE_ENGAGEMENTS_PER_POST` * Avg. Mentions: `AVG_MENTIONS_TOPIC` * Engagements: `TOTAL_ENGAGEMENTS_TOPIC` * Mentions: `TOTAL_MENTIONS_TOPIC` * Net Sentiment: `NET_SENTIMENT` See [Available Metrics](#available-metrics) for full descriptions. Request multiple metrics by separating with commas |
| `start_date` / `end_date` | Reporting date range in YYYY-MM-DD format |
| `context_start_date` / `context_end_date` | Comparison date range for period-over-period analysis. Optional |
| `report_type` | Set to `TOTAL_METRIC` for aggregated totals |
| `listening.topic_ids` *(body)* | Array of topic IDs from Step 1 (e.g., `[11423]`). Pass multiple IDs to query multiple topics at once |
| Parameter | Description |
|---|---|
| `brand_ids` | Your brand ID from the UI |
| `channels` | Platform to query: * Instagram: `INSTAGRAM` * TikTok: `TIKTOK` * Facebook: `FACEBOOK` * YouTube: `YOUTUBE` * LinkedIn: `LINKEDIN` * X: `TWITTER` * Web: `WEB` * Reddit: `REDDIT` |
| `metrics` | Social listening metrics available for all channels: * Avg. Engagements: `AVERAGE_ENGAGEMENTS_PER_POST` * Avg. Mentions: `AVG_MENTIONS_TOPIC` * Engagements: `TOTAL_ENGAGEMENTS_TOPIC` * Mentions: `TOTAL_MENTIONS_TOPIC` * Net Sentiment: `NET_SENTIMENT` See [Available Metrics](#available-metrics) for full descriptions. Request multiple metrics by separating with commas |
| `start_date` / `end_date` | Reporting date range in YYYY-MM-DD format |
| `context_start_date` / `context_end_date` | Comparison date range for period-over-period analysis. Optional |
| `report_type` | Set to `TOTAL_METRIC` for aggregated totals |
| `listening.topic_ids` *(body)* | Array of topic IDs from Step 1 (e.g., `[11423]`). Pass multiple IDs to query multiple topics at once |
| Parameter | Description |
|---|---|
| `brand_ids` | Brand IDs from the UI. Separate multiple brands with commas (e.g., `144,145,146`) |
| `channels` | Social platforms to include: * Instagram: `INSTAGRAM` * Instagram Stories: `INSTAGRAM_STORIES` * Instagram UGC: `INSTAGRAM_UGC` * TikTok: `TIKTOK` * TikTok UGC: `TIKTOK_UGC` * Facebook: `FACEBOOK` * Pinterest: `PINTEREST` * YouTube: `YOUTUBE` * LinkedIn: `LINKEDIN` * X: `TWITTER` Include both owned and UGC channels for complete TSI (e.g., `INSTAGRAM,INSTAGRAM_UGC,TIKTOK,TIKTOK_UGC`) |
| `metrics` | Set to `TOTAL_TSI` - measures your unified social presence by combining impressions from owned content (posts you publish) and earned content (brand mentions by others) |
| `start_date` / `end_date` | Reporting date range in YYYY-MM-DD format |
| `context_start_date` / `context_end_date` | Comparison date range for period-over-period analysis. Optional |
| `report_type` | Set to `TOTAL_METRIC` for aggregated totals |
| Parameter | Description |
|---|---|
| `brand_ids` | Brand IDs from the UI. Separate multiple brands with commas (e.g., `144,145,146`) |
| `channels` | Social platforms to include: * Instagram: `INSTAGRAM` * Instagram Stories: `INSTAGRAM_STORIES` * Instagram UGC: `INSTAGRAM_UGC` * TikTok: `TIKTOK` * TikTok UGC: `TIKTOK_UGC` * Facebook: `FACEBOOK` * Pinterest: `PINTEREST` * YouTube: `YOUTUBE` * LinkedIn: `LINKEDIN` * X: `TWITTER` Include both owned and UGC channels for complete TSI (e.g., `INSTAGRAM,INSTAGRAM_UGC,TIKTOK,TIKTOK_UGC`) |
| `metrics` | Set to `TOTAL_TSI` - measures your unified social presence by combining impressions from owned content (posts you publish) and earned content (brand mentions by others) |
| `start_date` / `end_date` | Reporting date range in YYYY-MM-DD format |
| `context_start_date` / `context_end_date` | Comparison date range for period-over-period analysis. Optional |
| `report_type` | Set to `GRAPH` for time-series data |
| Field | Type | Description |
|---|---|---|
| override | string | The name of the locale, country code, and language code to which the product belongs. Using ISO standards for locales/country codes/language codes is recommended but not enforced. * *Note:*\* If you do not provide this field in the product feed, you must communicate with your account representative about the country or language code for which each feed is for. When using Product Page Gallery, this value can be passed to `data-override` parameter to display the localized product data. See [Product Page Gallery guide](https://developer.dashsocial.com/docs/product-page-gallery) . |
| url | string | A URL that links to the product. |
| title | string | The product name |
| image\_url | string | A URL that links to an image of the product |
| price | string/number | The price of the product. You can provide a price including the currency symbol/code (e.g., "\$80.99") or a numeric price (e.g., "80.99"). When providing a price without the currency symbol/code, it is highly recommended that the `currency_code` field also be provided. |
| currency\_code | string | A 3-letter code specifying the type of currency used for the product's price. The `currency_code` is appended to the price when displayed in the media popup only if the price is numeric (e.g., "5.99"). If the price is non-numeric (e.g., "\$5.99"), then currency\_code will not be appended. For example, if the `price` is specified as "5.99" and the `currency_code` is "CAD," the `price` will be displayed as "5.99 CAD" in the media popup. If the `price` is specified as "$5.99" with the currency symbol/code and `currency_code` is "CAD", the `price` will show as "$5.99" in the media pop-up. |
| availability | string | The current availability of the product. Acceptable values are: in stock, out of stock, preorder, available for order, discontinued. |
| description | string | The description of the product. |
| Field | Type | Description |
|---|---|---|
| id | string | A unique identifier for the product. It can be SKU, external system product ID, etc. |
| image\_url | string | A URL that links to an image of the product. If this field is not provided, we will automatically source the product image from the URL's metadata. |
| price | string/number | The price of the product. You can provide a price including the currency symbol/code, e.g., "\$80.99," or a numeric price, e.g., "80.99." When providing a price without the currency symbol/code, it is highly recommended that the `currency_code` field also be provided. |
| currency\_code | string | A 3-letter code specifying the type of currency used for the product's price. The `currency_code` is appended to the price when displayed in the media popup only if the price is numeric (e.g., "5.99"). If the price is non-numeric (e.g., "\$5.99"), then currency\_code will not be appended. For example, if the `price` is specified as "5.99" and the `currency_code` is "CAD," the `price` will be displayed as "5.99 CAD" in the media popup. If the `price` is specified as "$5.99" with the currency symbol/code and `currency_code` is "CAD", the `price` will show as "$5.99" in the media pop-up. |
| availability | string | The current availability of the product. Acceptable values are: in stock, out of stock, preorder, available for order, discontinued. |
| description | string | The description of the product. |
| source\_group\_id | string | The product group ID, which is useful when product variants are displayed as separate products in the feed. The `source_group_id` should be used as the parent product ID for all variants, helping to establish the relationship between the main product and its variants. |