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 top-performing posts from tracked competitors. Use the data to identify winning content formats and inform your creative strategy.

Use cases

Manually reviewing competitor content across platforms wastes hours each week. Competitive content reports surface top posts instantly.

Creative inspiration

Surface top-performing competitor posts to inspire your creative team with proven formats and themes

Competitive benchmarking

Benchmark your brand’s best posts against what’s resonating with competitor audiences

Format analysis

Identify which post formats or topics drive results for competitors to inform your strategy

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 content 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": "FACEBOOK"
}

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": "FACEBOOK",
        "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": "scaniagroup",
        "source": "FACEBOOK",
        "source_account_id": "230344968"
    }
]
Collect each source_account_id value. Format as comma-separated: 2306810931,230344968,232342925.

Track multiple platforms

To analyze competitor content across Instagram and Facebook, 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 content report

Send a GET request using the parameters from Step 2. This example gets top Facebook posts from tracked competitors during October 2025, ranked by likes:
GET https://dashboard.dashsocial.com/reports/data?brand_ids=144&
		channels=FACEBOOK_COMPETITIVE&
		metrics=LIKES&
		start_date=2025-10-01T07:00:00Z&
		end_date=2025-10-30T07:00:00Z&
		context_start_date=2025-09-01T07:00:00Z&
		context_end_date=2025-09-30T07:00:00Z&
		report_type=COMPETITIVE_CONTENT&
		competitor_source_account_ids=2306810931,230344968,232342925

Rank by multiple metrics

Request multiple metrics by separating with commas (e.g., LIKES,TOTAL_ENGAGEMENTS,REACH). Posts will be ranked by each metric separately.
Sample response:
{
    "data": {
        "2306810931": {
            "avatar": "https://cdn.dashsocial.com/avatars/2306810931.jpeg",
            "content": [
                {
                    "id": "18123456789012345",
                    "caption": "New fall collection drops tomorrow!",
                    "created_at": "2025-10-15T14:22:00+00:00",
                    "media_type": "IMAGE",
                    "media_url": "https://cdn.dashsocial.com/media/12345.jpg",
                    "permalink": "https://www.facebook.com/sunny.today/posts/123456",
                    "metrics": {
                        "LIKES": 1247,
                        "COMMENTS": 89,
                        "SHARES": 34,
                        "TOTAL_ENGAGEMENTS": 1370
                    }
                }
            ],
            "data_type": "COMPETITOR",
            "name": "sunny.today",
            "user_has_access": false
        },
        "230344968": {
            "avatar": "https://cdn.dashsocial.com/avatars/230344968.jpeg",
            "content": [
                {
                    "id": "18345678901234567",
                    "caption": "Monday motivation: Your journey starts with a single step",
                    "created_at": "2025-10-21T09:30:00+00:00",
                    "media_type": "IMAGE",
                    "media_url": "https://cdn.dashsocial.com/media/34567.jpg",
                    "permalink": "https://www.facebook.com/scaniagroup/posts/345678",
                    "metrics": {
                        "LIKES": 2103,
                        "COMMENTS": 156,
                        "SHARES": 78,
                        "TOTAL_ENGAGEMENTS": 2337
                    }
                }
            ],
            "data_type": "COMPETITOR",
            "name": "scaniagroup",
            "user_has_access": false
        }
    },
    "product_category": "COMPETITIVE"
}

Step 4: Interpret the response

The response includes top-performing posts for each competitor, sorted by your chosen metric.

Response structure

Each competitor includes:
  • content: Array of posts, ranked highest to lowest by the selected metric
  • id: Unique post identifier from the social platform
  • caption: The post text/caption
  • created_at: When the post was published
  • media_type: Type of content (IMAGE, VIDEO, CAROUSEL, etc.)
  • media_url: URL to the media file
  • permalink: Direct link to the post on the social platform
  • metrics: Performance data for each post
  • name: The competitor’s social media handle
  • avatar: URL to their profile picture
  • data_type: Always COMPETITOR for tracked competitor accounts
Common errors:
  • Invalid channel name - Use FACEBOOK_COMPETITIVE, not FACEBOOK. 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.

Metrics

Metric NameDescriptionMetric API Name
Engagement RateThe percentage of people who engaged with your competitors’ posts, based on their follower countENGAGEMENT_RATE
CommentsThe number of comments your competitors’ posts receivedORGANIC_COMMENTS
LikesThe number of likes your competitors’ posts receivedORGANIC_LIKES
Estimated ReachThe estimated number of unique accounts that saw your competitors’ postsREACH

Next steps

With your competitive content data, you can:
  • Inspire creative strategy - Share top posts with your content team to identify successful themes and formats
  • Benchmark performance - Compare your best posts against competitor performance to set realistic engagement goals
  • Track content trends - Query weekly or monthly to spot emerging content trends in your industry
  • Inform content calendar - Analyze which post types and topics resonate to guide your publishing strategy
Related guides: