Skip to content

Constellation

An API for understanding online narratives, the posts that make them, and the actors who shape them

The Constellation API provides endpoints that let you analyze social posts, the accounts behind them, and the narratives connecting them. Using advanced AI, the API organizes raw social data into structured insights—showing what is being said, who is amplifying it, how it is propagating across platforms, and what potential risks it may pose to your organization.

The Posts endpoint returns post-level content such as text, author information, engagement metadata, and AI-generated enrichments including risk metrics and narrative identifiers. The Authors endpoint provides account-level context, including cohort membership and other actor-intelligence indicators. The Narratives endpoint returns clusters of related content, an AI-generated assessment of potential risk, a narrative summary, and a description of the narrative itself.

This API is ideal for customers who want to embed Constellation enrichments directly into their own products, dashboards, or analytical workflows.

Download OpenAPI description
Languages
Servers
https://api-prd.infra-prod.blackbird.ai/v1/

Project

Operations

find_projects

Request

Query
projectIdstring

If provided, will filter the projects to only include the project with the given projectId

curl -i -X GET \
  'https://api-prd.infra-prod.blackbird.ai/v1/projects?projectId=string'

Responses

Bodyapplication/json
dataArray of objectsrequired
data[].​namestringrequired
data[].​slugstringrequired
data[].​postCountnumber
data[].​displayNamestringrequired
data[].​dataAvailableboolean
data[].​jobScheduleobject
data[].​lastAccessedstring(date-time)^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[...
Example: "2025-12-01T18:21:40.516Z"
Response
application/json
{ "data": [ {} ] }

find_projects_by_id

Request

Path
idstringrequired
curl -i -X GET \
  'https://api-prd.infra-prod.blackbird.ai/v1/projects/{id}'

Responses

Bodyapplication/json
namestringrequired
slugstringrequired
postCountnumber
displayNamestringrequired
dataAvailableboolean
jobScheduleobject
lastAccessedstring(date-time)^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[...
Example: "2025-12-01T18:21:40.516Z"
Response
application/json
{ "name": "string", "slug": "string", "postCount": 0, "displayName": "string", "dataAvailable": true, "jobSchedule": { "enabled": true, "schedule": {}, "dataSources": [], "updatedAt": "2025-12-01T18:21:40.516Z" }, "lastAccessed": "2025-12-01T18:21:40.516Z" }

Posts

Operations

Narratives

Operations