Data API
Every endpoint, one page each
All 127 calls in the CRM Solid Data API, grouped the way the API groups them. Each one has its own reference page with the parameters it takes, a request you can paste, the real response body it returns and the errors it can answer with. 45 of them read the platform at request time and are marked Live; the rest are served from our catalog in milliseconds.
- Base URL
- https://crmsolid.com/data-api/v2
- Version
- 2.0.0
- Endpoints
- 127
- Groups
- 13
Accounts5 endpoints
Check one account, on any of the seven platforms, in one shape: does it exist, how big is it, is it verified, when was it created, is it in our catalog and how stale is that reading. The catalog checks are index probes and cost nothing; add /live to read the platform itself.
- GET/accounts/platformsWhat a check can answer, per platform
- GET/accounts/{platform}/{handle}Check one account against our catalog
- GET/accounts/{platform}/{handle}/liveLiveCheck one account live, at the source
- POST/accounts/checkCheck up to 50 accounts at once
- GET/accounts/resolveFind one handle on every platform at once
Directory9 endpoints
The account and channel catalog the crawlers maintain across X, Instagram, TikTok, YouTube, Telegram and Bluesky. Reads are served from our own Postgres, so they are fast, cheap and bounded only by your tier.
- GET/directoryCatalog capability map
- GET/directory/{platform}List and filter a catalog
- GET/directory/{platform}/{id}One account or channel
- GET/directory/{platform}/{id}/growthDaily audience history
- GET/directory/{platform}/{id}/followersInbound graph edges
- GET/directory/{platform}/{id}/followingOutbound graph edges
- POST/directory/{platform}/bulkResolve up to 100 records at once
- GET/directory/{platform}/facetsDistribution of the catalog
- GET/directory/searchSearch every platform at once
X25 endpoints
The raw X (Twitter) surface, read live: profiles, timelines, followers and following, single posts with their replies, quotes, reposts and full threads, advanced search, list timelines and community feeds. Where Insights answers how an account is performing off our own catalog, this group answers what X says right now - and it is the one place the post layer itself is published rather than measured. Every call spends a slot on a finite scraper pool, so it is metered as a live call and paginated with cursors rather than offsets.
- GET/x/users/{handle}LiveOne X profile, live
- GET/x/users/{handle}/aboutLiveX's About this account panel
- GET/x/users/{handle}/tweetsLiveAn account's timeline
- GET/x/users/{handle}/mediaLiveAn account's media timeline
- GET/x/users/{handle}/mentionsLivePosts mentioning an account
- GET/x/users/{handle}/followersLiveFollowers, newest first
- GET/x/users/{handle}/verified-followersLiveVerified followers only
- GET/x/users/{handle}/followers/idsLiveFollower ids in bulk
- GET/x/users/{handle}/followingLiveWho an account follows
- GET/x/users/{handle}/relationshipLiveDoes one account follow another
- GET/x/tweets/{id}LiveOne post
- GET/x/tweetsLivePosts by id, batched
- GET/x/tweets/{id}/repliesLiveDirect replies to a post
- GET/x/tweets/{id}/threadLiveThe whole conversation
- GET/x/tweets/{id}/quotesLiveQuote posts of a post
- GET/x/tweets/{id}/retweetersLiveWho reposted a post
- GET/x/search/tweetsLiveAdvanced post search
- GET/x/search/usersLivePeople search
- GET/x/lists/{id}/tweetsLiveA list's timeline
- GET/x/lists/{id}/membersLiveWho is on a list
- GET/x/communities/{id}LiveOne X community
- GET/x/communities/{id}/membersLiveA community's members
- GET/x/communities/{id}/moderatorsLiveA community's moderators
- GET/x/communities/{id}/tweetsLiveA community's posts
- GET/x/trendsLiveWhat is trending, by location
People2 endpoints
Cross-catalog people search: one handle looked up in every catalog at once, or accounts matched by audience size, engagement, language and category across platforms.
Live scrape5 endpoints
On-demand reads that skip the catalog and fetch from the source right now. Slower and separately metered, because every call costs upstream work. Reach for these when you need one handle fresh, not for bulk enrichment.
Insights32 endpoints
Derived engagement intelligence: engagement rates, top and viral posts, posting patterns and cohort benchmarks computed over the post layer.
- GET/insights/x/{handle}Complete intelligence dossier for one X account
- GET/insights/x/{handle}/engagementEngagement metrics for one X account
- GET/insights/x/{handle}/top-tweetsThe account's permanently kept best posts
- GET/insights/x/{handle}/viral-patternsWhat makes this account's posts perform
- GET/insights/x/{handle}/benchmarkThis account against its follower cohort
- GET/insights/x/leadersAccounts ranked by how well they engage
- GET/insights/x/coverageHow much of the catalog has tweet-level coverage
- POST/insights/x/compareSide-by-side metrics for up to ten accounts
- GET/insights/audienceWho follows an account, and what they have in common
- GET/insights/instagram/{handle}/top-postsAn account's best performing posts
- GET/insights/instagram/{handle}/content-mixWhich post format actually works on this account
- GET/insights/instagram/{handle}/cadenceHow often an account posts, and whether it has gone quiet
- GET/insights/instagram/benchmarksMeasured engagement rates by follower band
- GET/insights/instagram/{handle}/coverageWhat we hold on a handle, before you pay for a lookup
- GET/insights/tiktok/{handle}/growthFollower, like and posting velocity from the snapshot series
- GET/insights/tiktok/benchmarksMeasured likes per video by follower band
- GET/insights/tiktok/{handle}/coverageWhat we hold on a handle, before you pay for a lookup
- GET/insights/telegram/{username}/audience-qualityWhether a channel's subscribers and its post views moved together
- GET/insights/telegram/{username}/name-historyEvery username a channel has held, and which ones it gave up
- GET/insights/youtube/{handle}/benchmarkA channel's view velocity, ranked against channels its own size
- GET/insights/youtube/view-velocity-bandsThe view-velocity ladders every YouTube benchmark is read against
- GET/insights/bluesky/{handle}/posting-impactWhat an account gains on the days it posts against the days it does not
- GET/insights/instagram/{handle}Measured Instagram engagement, placed against its cohort
- GET/insights/telegram/{username}/reachHow many subscribers actually see a Telegram post
- GET/insights/telegram/reach-bandsThe reach percentile ladders every Telegram score is read against
- GET/insights/youtube/{handle}/activityDaily views earned by one account
- GET/insights/tiktok/{handle}/activityDaily likes earned by one account
- GET/insights/bluesky/{handle}/activityDaily posts earned by one account
- GET/insights/telegram/{username}/activityHow a channel's per-post reach has moved, day by day
- GET/insights/telegram/{username}/growth-qualityThe shape of a channel's subscriber growth
- GET/insights/bluesky/{handle}/growth-qualityThe shape of an account's follower growth
- GET/insights/activity/platformsWhat each platform measures, how precise it is, and how deep
Trends2 endpoints
Discovery rather than lookup: who gained or lost the most audience on a given day, ranked from the same daily series the growth history is built on. The catalog answers questions about a handle you already have; this answers the question you ask before you have one.
Identity5 endpoints
The same entity seen from more than one place: the social accounts a company publishes, the company behind a handle, and the several usernames a Telegram channel can hold at once. Every other surface here describes an account you already identified; this one closes the loop between an organisation and its presence.
- GET/identity/graphOne organisation's accounts across every network, from any one of them
- POST/identity/graph/bulkResolve up to 100 handles to their companies in one call
- GET/identity/company/{slug}Every social account a company publishes
- GET/identity/resolveWhich company publishes this handle
- GET/identity/telegram/{username}/aliasesEvery username a Telegram channel holds
Graph4 endpoints
The X follow graph: audience overlap between two accounts, lookalike accounts by shared audience, and an account's followers ranked by their own influence.
Watch10 endpoints
Webhooks. Register a destination, prove you control it, watch accounts for audience change, and read or replay every delivery.
- POST/watch/endpointsRegister a webhook destination
- POST/watch/endpoints/{id}/verifyProve you control a destination and activate it
- GET/watch/endpointsList destinations and their health
- GET/watch/endpoints/{id}Read one destination
- POST/watchWatch an account for audience change
- GET/watchList watched accounts
- GET/watch/{id}Read or remove one watch
- GET/watch/deliveriesDelivery history and failures
- GET/watch/deliveries/{id}One delivery, with every attempt
- POST/watch/deliveries/{id}/retryReplay a failed delivery
Research4 endpoints
Findings, runs and events from the autonomous research engine, which decides on its own which pools to expand and reports what it learned.
Tools18 endpoints
The analysis tools behind the public free-tool pages, callable directly: valuation, follower audit, scoring and the rest. Metered like a live call, because each run costs compute or an upstream fetch.
- GET/toolsList every analysis tool
- POST/tools/valuationLiveValue an X account
- POST/tools/shadowban-checkLiveCheck an X account for visibility filtering
- POST/tools/follower-auditLiveAudit an X account's followers for fakes
- POST/tools/engagement-calculatorLiveMeasure an X account's engagement rate
- POST/tools/best-posting-timeLiveFind when an X account should post
- POST/tools/algorithm-scoreLiveScore an X account against the ranking signals
- POST/tools/tweet-analyzerLiveAnalyze a single X post
- POST/tools/mention-checkerLiveSee who is mentioning an X account
- POST/tools/growth-simulatorProject how long a follower target takes
- GET/tools/profile-picLiveFetch an X profile picture URL
- GET/tools/audience-finderSearch the Telegram, TikTok and X catalog
- POST/tools/instagram/engagementLiveMeasure an Instagram account's engagement
- POST/tools/instagram/moneyLiveEstimate Instagram sponsorship earnings
- POST/tools/tiktok/engagementLiveMeasure a TikTok account's engagement
- POST/tools/tiktok/moneyLiveEstimate TikTok brand-deal earnings
- POST/tools/youtube/moneyLiveEstimate YouTube ad earnings
- POST/tools/youtube/channel-valueLiveEstimate what a YouTube channel is worth
Leads6 endpoints
B2B lead data: LinkedIn companies and decision makers, plus X follower-graph exports. Sensitive by nature, separately scoped, and never granted by default.
- GET/leads/linkedin/domains/{domain}Enrich a company from its website domain
- GET/leads/linkedin/segmentsFirmographic market sizing with real counts
- GET/leads/linkedin/companiesLinkedIn company records, filterable
- GET/leads/linkedin/companies/{id}One company with socials, contacts and decision makers
- GET/leads/linkedin/peopleNamed people and decision makers
- GET/leads/x/followersFollower-graph export for one X account
Before the first call
Authentication, the response envelope, cursor pagination, scopes, rate limits and every error code are on one page. A key takes a minute to mint in the panel and needs no card.