Skip to main content

Documentation Index

Fetch the complete documentation index at: https://developer.dashsocial.com/llms.txt

Use this file to discover all available pages before exploring further.

Pull time-series competitor data to track performance trends over time. Use the data to visualize day-by-day metrics and identify patterns in competitor activity.

Use cases

Tracking competitor trends manually across weeks or months wastes hours. Graph reports give you time-series data ready to visualize instantly.

Benchmark posting frequency

Track when competitors ramp up posting frequency to anticipate market moves or product launches

Prioritize platform investments

Compare competitor performance trends on YouTube vs TikTok to guide your channel strategy

Track engagement trends

Monitor seasonal patterns in competitor reach to inform your content calendar

Before you start

Prerequisites:
  • API Key - Your authentication token - Get your API key from the API Quickstart.
  • Brand ID - Your brand’s unique ID
  • Tracked Competitors - Competitors added in Dash Social
Supported platforms:
  • Instagram
  • Facebook
  • YouTube
  • X
Add competitors first: Report on competitors tracked in Dash Social only. Add competitors in Dash Social → Settings → Competitor Management before using this API.

Test in the dashboard first

Preview competitive graph reports in the Dash Social Dashboard to understand the data structure before pulling via API.

Implementation

Step 1: Get competitor account IDs

Get source account IDs for your tracked competitors. Each competitor has a unique ID per platform. Send a POST request:
POST https://library-backend.dashsocial.com/competitors/search
body = {
  "source": "INSTAGRAM"
}

Key query parameters

  • source: Platform to search:
    • Instagram: INSTAGRAM
    • Facebook: FACEBOOK
    • YouTube: YOUTUBE
    • Twitter (X): TWITTER
Sample response:
[
    {
        "avatar_url": "https://cdn.dashsocial.com/avatars/2306810931.jpeg",
        "brand_details": [
            {
                "brand_id": 144,
                "created_at": "2019-10-22T21:02:14+00:00"
            }
        ],
        "handle": "sunny.today",
        "source": "INSTAGRAM",
        "source_account_id": "2306810931"
    },
    {
        "avatar_url": "https://cdn.dashsocial.com/avatars/230344968.jpeg",
        "brand_details": [
            {
                "brand_id": 144,
                "created_at": "2020-03-15T10:22:33+00:00"
            }
        ],
        "handle": "fashionista_brand",
        "source": "INSTAGRAM",
        "source_account_id": "230344968"
    }
]
Collect each source_account_id value. Format as comma-separated: 2306810931,230344968.

Compare across platforms

To compare multiple platforms, call /competitors/search separately for each platform.

Step 2: Map your report parameters

Map the available parameters before making the API call:

Step 3: Request the graph report

Send a GET request using the parameters from Step 2. This example gets daily engagement metrics for competitors on Instagram during October 2025:
GET https://dashboard.dashsocial.com/reports/data?brand_ids=144&
		channels=INSTAGRAM_COMPETITIVE&
		metrics=TOTAL_ENGAGEMENTS&
		start_date=2025-10-01&
		end_date=2025-10-30&
		context_start_date=2025-09-01&
		context_end_date=2025-09-30&
		report_type=COMPETITIVE_GRAPH&
		competitor_source_account_ids=2306810931,230344968,232342925

Compare multiple platforms

Make separate requests for each channel: INSTAGRAM_COMPETITIVE, FACEBOOK_COMPETITIVE, etc. Combine results in your dashboard or analytics tool.
Sample response:
{
    "data": {
        "144": {
            "INSTAGRAM_COMPETITIVE": {
                "TOTAL_ENGAGEMENTS": {
                    "2025-10-01": 0.0,
                    "2025-10-02": 4.0,
                    "2025-10-07": 27.0,
                    "2025-10-08": 8.0
                }
            },
            "avatar": "https://cdn.dashsocial.com/avatars/2306810931.jpeg",
            "data_type": "BRAND",
            "name": "Your Brand",
            "user_has_access": true
        },
        "2306810931": {
            "INSTAGRAM_COMPETITIVE": {
                "TOTAL_ENGAGEMENTS": {
                    "2025-10-01": 120.0,
                    "2025-10-02": 98.0,
                    "2025-10-03": 145.0,
                    "2025-10-05": 203.0
                }
            },
            "avatar": "https://cdn.dashsocial.com/avatars/2306810931.jpeg",
            "data_type": "COMPETITOR",
            "name": "sunny.today",
            "user_has_access": true
        },
        "competitor_average": {
            "data_type": "COMPETITOR_AVERAGE",
            "name": "Competitor Average",
            "user_has_access": true
        }
    },
    "product_category": "COMPETITIVE"
}

Step 4: Interpret the response

The response includes time-series data for each competitor plus a competitor_average summary.

Response structure

Each account includes:
  • data_type: BRAND (your brand), COMPETITOR, or COMPETITOR_AVERAGE
  • name: Account handle
  • Date-keyed metrics: Each metric is organized by date (e.g., "2025-10-01": 120.0). This makes it easy to plot on line charts or trend graphs.
Common errors:
  • Invalid channel name - Use INSTAGRAM_COMPETITIVE, not INSTAGRAM. Competitive channels require the _COMPETITIVE suffix.
  • Invalid source account ID - Verify IDs match the /competitors/search response from Step 1.
  • Missing context dates - Include context_start_date and context_end_date for trend analysis.
  • Sparse data - Not all dates have values. Competitors only appear on dates when they posted content.

Metrics

Metric NameDescriptionMetric API Name
Avg. Engagement Rate - PublicThe average percentage of people who engaged with your competitors’ posts, based on their follower countAVG_ENGAGEMENT_RATE_PUBLIC
Avg. Estimated ReachThe average number of unique accounts that saw your posts published during the Reporting Period. The average estimated number of unique accounts that saw competitor’s posts based on their number of followers during the Reporting Period.AVG_REACH
Followers - Growth RateThe percentage of your competitors’ followers increased by over the comparison periodFOLLOWER_GROWTH_RATE
Followers - Net NewThe net new number of people who followed your competitors’ accountsNET_NEW_FOLLOWERS
Number of PostsThe number of posts you’ve published during the reporting periodNUMBER_OF_POSTS
CommentsThe number of comments your competitors’ posts receivedORGANIC_COMMENTS
LikesThe number of likes your competitors’ posts receivedORGANIC_LIKES
FollowersThe total number of followers your competitors have on this channelTOTAL_FOLLOWERS

Next steps

With your competitive graph data, you can:
  • Build trend visualizations - Plot each competitor as a separate line on a chart
  • Identify posting patterns - Spot seasonal or weekly patterns in competitor activity
  • Track peak performance days - See when competitors get the most engagement
  • Compare against your brand - Benchmark your performance against competitor trends
Related guides: