All tools visible to all users. Content gated by plan at execution time.
synorb-stream-catalog
List all streams with metadata, volume metrics, and available filters.
synorb-stream-details
Filters, schema, and allowed values for a specific stream.
synorb-stream-signals
Structured claims for reasoning systems completing workflows.
Example: "Get signals from the federal-reserve stream this week"
synorb-stream-briefs
Structured narratives for reasoning systems delivering information to human operators.
synorb-stream-records
Full canonical JSON payloads with tags, topics, provenance, and lineage. Enterprise only.
synorb-stream-manifests
Signal + Brief on all plans. Record included at Enterprise.
synorb-account
Account info, plan, quota, access level, and available endpoints.
synorb-digests
List your digests — both Synorb Digests (subscribed) and User Digests (org-built).
synorb-stream-digest
Fetch manifests from any digest across all its streams.
synorb-sync-list
List syncs with optional filters by object type, tag type, or label.
synorb-label-create
Create a custom label for organizing syncs.
synorb-labels-list
List all custom labels for your organization.
synorb-tag-search
Fuzzy search across entity tags (people, orgs, places, data sources).
synorb-topics-browse
Browse topic hierarchy with optional search filter.
synorb-related-tags
Find tags co-occurring with a given tag in recent manifests.
synorb-tag-sync
Create or update a sync between a Synorb tag and your internal identifier.
synorb-tag-unsync
Remove a sync.
04
Key Glossary
Ten terms that appear everywhere in Synorb. Learn these first.
Term
What it is
Manifest
A content package containing a Signal, Brief, and Record. The unit Synorb delivers to you.
Signal
Structured claims extraction for reasoning systems completing workflows. Included on all plans.
Brief
Structured narrative for reasoning systems delivering information to human operators. Headline, summary, sentiment, significance.
Record
Source content — one article, one podcast episode, one data release. Enterprise plans only.
Claim
An atomic assertion extracted from a record. 15–50 per record. Each has a type, confidence level, and evidence classification.
Stream
A filtered delivery view. Streams organize content by theme — "Federal Reserve Watch", "AI Infrastructure", etc.
Tag
A resolved entity — person, organization, place, or data source. Tags link claims across records.
Topic
A curated thematic category from Synorb’s topic taxonomy, organized by domain. Used to filter streams by subject area.
Digest
A grouping of manifests. Synorb Digests are pre-curated ($5/mo). User Digests are built by your org (included in plan). Query either type for aggregated content.
Source Channel
A specific content feed within a stream. Each channel has an ID and display name (e.g. "Federal Reserve Bank of St. Louis"). Filter manifests by source_channel_ids.
Domain
One of 12 canonical knowledge domains. Every stream has a home domain and up to three cross-domains.
05
Authentication
Token
Append ?token=YOUR_TOKEN to the MCP server URL. For REST API calls, send an access_token header.
Key + Secret
Send api-key and secret headers with every request.
Your plan determines which manifest types you can access.
Signals Structured claims for reasoning systems All plansBriefs Structured narratives for reasoning systems All plansRecords Structured content objects, enriched with entity tags and topics Enterprise only
06
REST API test live now ↓
All require authentication. Base URL: https://api.synorb.ai
Full manifests — source + signal + brief triplets in one call. Paginated and date-filtered. Signal and brief included on all plans. Record (structured enriched objects) at Enterprise only.
Param
Type
Description
published_date_from
date
Start date (YYYY-MM-DD)
published_date_to
date
End date (YYYY-MM-DD)
tag_ids
string
Comma-separated tag IDs to filter by (e.g. "123,456"). Returns manifests mentioning ANY of these tags.
tag_type
string
Filter by tag type: person, organization, place, topic, data
page
int
Page number, 0-indexed
page_size
int
Results per page, max 200
GET /streams/17723038993540102/manifests?page_size=1
{
"manifests": [
{
"manifest_id": 1772303896681792043,
"record_id": 1772303895259186451,
"stream_ids": [17723038993540102],
"stream_names": ["Federal Reserve Bank of St. Louis"],
"matched_at": "2026-03-04T14:22:01",
"source": {
"record_title": "The End of Rapid Population Growth",
"source_url": "https://stlouisfed.org/on-the-economy/2023/mar/end-rapid-population-growth",
"source_published_date": "2023-03-06",
"source_name": "fed-stlouis-blog",
"source_type": "organization",
"media_format": "text",
"claim_type": "publication",
"author": "Charles S. Gascon",
"source_channel_ids": ["17732516384529123"],
"source_channel_display": "Federal Reserve Bank of St. Louis"
},
"signal": {
Signal"story_id": 17737682899496764,
"headline": "The End of Rapid Population Growth",
"summary": "Analysis of demographic shifts as global population growth decelerates...",
"body": {
"signal": { "source_url": "...", "claim_count": 18, "featured_count": 4 },
"claims": [
{
"claim_text": "Global population growth rate fell below 1% for the first time since 1950",
"claim_type": "data",
"confidence": "measured",
"evidence": "derived",
"signal": "Historic demographic inflection point with broad economic implications.",
"featured": true,
"entities": [{ "name": "United Nations", "type": "organization", "role": "source_org" }]
},
... 17 more claims
],
"entity_details": [{ "tag_type": "Organization", "tag_value": "Federal Reserve Bank of St. Louis" }, { "tag_type": "Person", "tag_value": "Charles S. Gascon" }],
"topics": ["demographics", "population", "economics"],
"domain_classification": { "home_domain": "economics-business-work", "cross_domains": ["health-medicine", "society-law-government"] }
},
"sentiment": "neutral",
"significance": "high",
"version": 1,
"claim_count": 18,
"reading_time_minutes": 4.5
},
"brief": {
Brief"story_id": 17737682899496765,
"headline": "The End of Rapid Population Growth",
"summary": "The world's population recently reached 8 billion, but the growth rate has slowed dramatically...",
"body": {
"key_insights": [
"Global population growth rate fell below 1% for the first time since 1950",
"Fertility rates declining in both developed and developing nations",
"Economic implications include labor shortages and pension system strain"
],
"notable_quotes": [
{ "text": "We are witnessing a historic demographic transition...", "speaker": "Charles S. Gascon", "context": "Author's analysis in the St. Louis Fed report." }
],
"entity_details": [{ "tag_type": "Organization", "tag_value": "Federal Reserve Bank of St. Louis" }],
"topics": ["demographics", "population", "economics"],
"domain_classification": { "home_domain": "economics-business-work", "cross_domains": ["health-medicine", "society-law-government"] }
},
"sentiment": "neutral",
"significance": "high",
"version": 1,
"reading_time_minutes": 3.0,
"key_points_count": 3,
"quote_count": 1
},
"record": {
Record"record_id": "17731495170319394",
"title": "Global Population Growth Falls Below 1% for First Time Since 1950",
"url": "https://fredsource.stlouisfed.org/population-growth-2026",
"source_published_date": "2026-03-18",
"source_name": "Federal Reserve Bank of St. Louis",
"source_type": "organization",
"media_format": "text",
"claim_type": "publication",
"content": "Is the thought of transitioning into retirement stressing you out? You're not alone. According to the Federal Reserve Bank of St. Louis, global population growth rate fell below 1% for the first time since 1950, signaling a historic demographic shift...",
"extra_data": {
"extraction": {
"entity_details": [{ "tag_type": "Organization", "tag_value": "Federal Reserve Bank of St. Louis" }],
"topics": ["demographics", "population", "economics"],
"domain_classification": { "home_domain": "economics-business-work", "cross_domains": ["health-medicine"] }
}
}
Single manifest lookup by record ID. Returns the same nested structure as the stream manifests endpoint — source, signal, brief, and record. Signal and Brief on all plans; Record included at Enterprise.
Param
Type
Description
record_id
int
The record's unique ID (string)
GET /manifests/1772303895259186451
{
"manifest_id": 1772303896681792043,
"record_id": 1772303895259186451,
"stream_ids": [17723038993540102],
"stream_names": ["Federal Reserve Bank of St. Louis"],
"source": {
"record_title": "The End of Rapid Population Growth",
"source_url": "https://stlouisfed.org/on-the-economy/2023/mar/end-rapid-population-growth",
"source_published_date": "2023-03-06",
"source_name": "fed-stlouis-blog",
"source_type": "organization",
"media_format": "text",
"claim_type": "publication",
"author": "Charles S. Gascon",
"source_channel_ids": ["17732516384529123"],
"source_channel_display": "Federal Reserve Bank of St. Louis"
},
"signal": {
"story_id": 17737682899496764,
"headline": "The End of Rapid Population Growth",
"summary": "Analysis of demographic shifts...",
"body": { "claims": [{ "claim_text": "...", "claim_type": "data", "confidence": "measured", "evidence": "derived", ... }] },
"sentiment": "neutral",
"significance": "high",
"version": 1,
"claim_count": 18
},
"brief": {
"story_id": 17737682899496765,
"headline": "The End of Rapid Population Growth",
"summary": "The world's population recently reached 8 billion...",
"body": { "key_insights": ["..."], "notable_quotes": [{ "text": "...", "speaker": "..." }] },
"body_markdown": "## Key Insights\n- ...",
"sentiment": "neutral",
"significance": "high",
"version": 1,
"key_points_count": 3,
"quote_count": 1
},
"record": { // Enterprise only"record_id": "17731495170319394",
"title": "Global Population Growth Falls Below 1% for First Time Since 1950",
"url": "https://fredsource.stlouisfed.org/population-growth-2026",
"source_published_date": "2026-03-18",
"source_name": "Federal Reserve Bank of St. Louis",
"source_type": "organization",
"media_format": "text",
"claim_type": "publication",
"content": "Is the thought of transitioning into retirement stressing you out? You're not alone...",
"extra_data": null
}
}
Firehose Endpoints Platform plans only
Firehose customers receive manifest_id via WebSocket delivery. Use these endpoints to pull individual components by manifest ID.
GET /signal/{manifest_id}
Signal by manifest ID.
GET /brief/{manifest_id}
Brief by manifest ID.
GET /record/{manifest_id}
Record by manifest ID. Streams customers on Enterprise plans get records within the /manifests endpoint response.
Digest Builder Pro Developer | Startup | Enterprise
Digests are custom groupings of manifests. Build your own using stream IDs, dynamic filter rules (topics, tags, domains, sources), or both. Included in Pro Developer, Startup, and Enterprise plans at no extra cost.
Full manifests across all streams in a digest. Same nested structure as /streams/{id}/manifests — source, signal, and brief on all plans. Record at Enterprise.
Param
Type
Description
published_date_from
date
Start date (YYYY-MM-DD)
published_date_to
date
End date (YYYY-MM-DD)
tag_ids
string
Comma-separated tag IDs to filter by
tag_type
string
Filter by tag type: person, organization, place, topic, data
page
int
Page number, 0-indexed
page_size
int
Results per page, max 200
Ontology Sync Enterprise
Map Synorb tags and topics to your internal identifiers. Once synced, every delivery payload automatically includes your IDs alongside Synorb’s.
Create or update a sync. Re-syncing the same object overwrites the previous one.
Param
Type
Description
object_type
string
What to sync — tag, topic, or stream
object_id
int
The Synorb object ID (from tag search or topic browse)
external_id
string
Your internal ID (e.g. CRM-TSLA-001, ticker:TSLA)
external_name
string
Your display name (optional)
labels
string
Comma-separated labels (optional)
POST /ontology/sync?object_type=tag&object_id=1234&external_id=CRM-TSLA-001&external_name=Tesla+Corp&labels=watchlist,buy-side
→ { "id": 42, "status": "created" }
DELETE/ontology/sync/{id}
Remove a sync. Soft-deletes the record, which can be re-created later.
GET /ontology/syncs
List active syncs for your organization with Synorb names resolved.
Param
Type
Description
object_type
string
Filter by type: tag, topic, or stream
label
string
Filter by label
page
int
Page number, 0-indexed
page_size
int
Results per page, max 200
GET /ontology/tags
Search the Synorb tag catalog with fuzzy matching. Returns tags with canonical name, type, and aliases.
Param
Type
Description
search
string
Fuzzy search term
type
string
Filter: person, organization, place, topic
GET /ontology/topics
Browse the Synorb topic catalog by name and domain.
Param
Type
Description
search
string
Search term
domain
string
Filter by domain
POST/ontology/labels
Create a custom label for organizing syncs (e.g. ‘buy-side’, ‘watchlist’).
GET /ontology/labels
List all custom label definitions for your organization.
Python SDK
Manage syncs programmatically. Install via pip install synorb.
# Initialize
from synorb import Synorb
client = Synorb(api_key="YOUR_KEY", api_secret="YOUR_SECRET")
# Search tags
results = client.ontology.search("Tesla", tag_type="organization")
# Create a sync
client.ontology.sync(tag_id=1234, external_id="CRM-TSLA-001",
external_name="Tesla Corp", labels=["watchlist", "buy-side"])
# List syncs
for s in client.ontology.syncs():
print(f"{b.tag_name} → {b.external_id}")
# Remove a sync
client.ontology.unsync(tag_id=1234)
07
Webhooks test live now ↓
Push notifications when events happen in your streams. Startup and above. Webhook payloads contain metadata only — fetch full content via the REST API.
Event Types
Event
Trigger
Description
manifest.matched
Real-time
A new manifest was delivered to one of your subscribed streams
digest.new_content
Real-time
A new manifest was delivered to a stream in your user digest
digest.created
On action
A Synorb Digest was added to your account
digest.updated
On action
A digest was updated — payload includes message describing what changed (streams added/removed, metadata, filters)
digest.removed
On action
A Synorb Digest was removed from your account
stream.created
On publish
A new stream went live on the platform
stream.removed
On action
A stream was permanently deactivated — payload includes reason
stream.unpublished
On action
A stream was temporarily unpublished (may return) — payload includes reason
Register a Webhook
POST /webhooks
{
"url": "https://your-app.com/webhook",
"label": "Production alerts",
"events": ["manifest.matched", "stream.created"]
}
→ { "id": 7, "secret": "whsec_..." }
Save the secret — it is shown only once.
Default events: ["manifest.matched"]. Add "stream.created" to get notified about new streams.
Payload: manifest.matched
{
"event": "manifest.matched",
"webhook_id": 7,
"timestamp": "2026-03-04T14:30:00.000Z",
"data": {
"manifest_id": 1772434238663730227,
"stream_id": 17723038993540102,
"stream_name": "federal-reserve",
"headline": "The End of Rapid Population Growth",
"published_date": "2026-03-04",
"claim_count": 7,
"tags": ["Federal Reserve", "United Nations"],
"home_domain": "society-law-government"
}
}
Metadata only. Call GET /streams/{stream_id}/manifests for full content.
Get notified when new content lands in your user digest. Register a webhook scoped to a specific digest — it fires digest.new_content every time a manifest is delivered to any stream in that digest.
POST /digests/{digest_id}/webhook
{
"url": "https://your-app.com/digest-hook",
"label": "Federal Reserve alerts"
}
→ { "id": 12, "digest_id": 42, "secret": "whsec_..." }
Save the secret — it is shown only once. Max 5 webhooks per digest.
Payload: digest.new_content
{
"event": "digest.new_content",
"webhook_id": 12,
"timestamp": "2026-03-13T14:30:00.000Z",
"data": {
"digest_id": 42,
"digest_name": "Federal Reserve",
"manifest_id": 1772434238663730227,
"stream_id": 17723038993540102,
"stream_name": "federal-reserve",
"headline": "The End of Rapid Population Growth",
"published_date": "2026-03-13",
"available": ["signal", "brief"]
}
}
Metadata only. Call GET /digests/{digest_id}/manifests for full content.
Filter by stream IDs, domains, or tag types. All filters are OR — a manifest matching any filter is delivered. Update subscriptions anytime by sending a new subscribe message.
Featured claims are linked to brief key points via key_point_index.
Briefs
Structured narratives for reasoning systems delivering information to human operators. Headline, summary, body, sentiment, significance score, and reading time.
Records
Source content with full provenance — source URL, publication date, author, content type, and metadata. Enterprise plans only.
Source Types
Every source is classified as one of three types:
person — an individual (founder, researcher, executive).
organization — a company, publication, government body, or institution.
data — a statistical or data feed (indices, filings, datasets).
Media Formats
Every record carries a media format describing the original medium:
text — articles, blog posts, essays, reports, press releases, white papers.
audio — podcasts, earnings calls, conference talks, radio interviews.
video — YouTube, keynotes, TV interviews, webinars, demos.
social — tweets/X posts, threads, short-form social content.
data — statistical releases, datasets, indices, API data feeds.
Source Channels
Each stream is fed by one or more source channels. A source channel represents a specific content feed — e.g. "OpenAI Blog", "Federal Reserve Bank of St. Louis", "Jim Fan on X".
Every manifest includes source_channel_ids (list) and source_channel_display in the source object. Use source_channel_ids as a query parameter to filter manifests by channel.
Streams
Filtered views over content. Three types:
Discovery — structured summaries from web content (news, blogs, reports).
Narrative — machine-written narratives from numerical and statistical data.
Research — analysis reports written for machine consumption.
Domains
Every stream has one home domain and three cross-domains. 12 canonical domains:
arts-culture-entertainment
economics-business-work
engineering-technology
everyday-life-practical-knowledge
health-medicine
people-biography-history
language-literature
life-environment
physical-sciences-mathematics
places-geography
society-law-government
universe-earth
12
Full Glossary
Every term in the Synorb system. Click a category to expand.
Term
Definition
Manifest
A content package containing a Signal, Brief, and Record. The unit Synorb delivers to you.
Signal
Structured claims extraction for reasoning systems completing workflows. body contains: claims (array), entity_details (array of {tag_type, tag_value} objects), topics (array of strings), domain_classification (object). Available on all plans.
Brief
Structured narrative for reasoning systems delivering information to human operators. body contains: key_insights (array of strings), notable_quotes (array of objects), entity_details (array of {tag_type, tag_value} objects), topics (array of strings), domain_classification (object), sentiment, significance. Available on all plans. Audio manifests include 4 additional fields: actionable_takeaways, guest_details (name/title/affiliation), cross_promotion, cultural_relevance.
Record
Source content enriched with entity tags, topics, and domain classification in extra_data.extraction. Enterprise plans only.
Claim
Atomic assertion extracted from a record. 15–50 per record. The fundamental unit of Synorb intelligence.
Source
A tracked publication. Each source has a category and crawl frequency.
Term
Definition
Stream
Filtered delivery view. Organizes content by theme. Three types: Discovery, Narrative, Research.
Digest
Grouping of manifests. Synorb Digests (pre-curated, free on Pro Developer | Startup | Enterprise) and User Digests (org-built, included in plan).
Term
Definition
Tag
A resolved entity — person, organization, place, or data source. Tags link claims across records.
Tag Type
One of five: person, organization, place, topic, data.
Tag Alias
Alternate name for a tag. "Elon Musk" and "Musk" resolve to the same tag.
Topic
A curated thematic category from Synorb’s topic taxonomy. Topics are organized by domain and used to filter streams by subject area.
Topic Domain
Top-level grouping for topics. Maps to the 12 canonical domains (e.g. economics-business-work, engineering-technology).
Content available as it's produced. No batching delay.
Enterprise
Daily
Previous day's content delivered at 0 UTC. Today's content appears tomorrow.
Vibe Coder, Pro Developer, Startup
Weekly
Previous week's content delivered Monday at 0 UTC. This week's content appears next Monday.
Vibe Coder, Pro Developer, Startup
Monthly
Previous month's content delivered on the 1st at 0 UTC. This month's content appears on the 1st of next month.
Free, Vibe Coder, Pro Developer, Startup
Delivery cadence is selectable — choose the tier that fits your workflow. All plans share the same 4-month data window; cadence controls freshness, not depth. Free plan is monthly only.
Term
Definition
source_type
person (individual) · organization (company, government) · data (statistical feed)
media_format
text · audio · video · social · data · transcript
available
Formats included in your plan. All plans include signal + brief. Enterprise adds record (structured enriched objects).
Term
Definition
Discovery
Structured summaries from human web content — news, blogs, podcasts, reports.
Narrative
Machine-written narratives generated from numerical and statistical data sources.
Research
Analysis reports and research written specifically for machine consumption.
Term
Definition
significance
0–100 score. How important the content is within its domain. Used for ranking and filtering.
sentiment
-1.0 to 1.0. Directional sentiment of the overall content.
13
Plans & Limits
STREAMS PRODUCTFree$01,000 manifests/mo
MCP Server + REST API.
Signals + Briefs.
Vibe Coder$10–$18/mo10,000 manifests/mo
MCP Server + REST API.
Signals + Briefs.
Pro Developer$50–$90/mo100,000 manifests/mo
MCP Server + REST API + Digest Builder + Synorb Digests.
Signals + Briefs.
Startup$250–$450/mo1,000,000 manifests/mo
MCP Server + REST API + Digest Builder + Synorb Digests + Webhooks + S3.
Signals + Briefs.
EnterpriseContact usCustom
MCP Server + REST API + Digest Builder + Synorb Digests + Webhooks + Sync Ontology + Support.
Signals + Briefs + Records.
MANIFEST ACCESSSignal Structured claims extraction All plans
Brief Structured narrative summary All plans
Record Structured content objects, enriched with entity tags and topics Enterprise only
FEATURE GATINGMCP Server All plans
REST API All plans
Digest Builder Pro Developer | Startup | Enterprise
Synorb Digests Pro Developer | Startup | Enterprise (free)
Webhooks Startup | Enterprise
S3 Export Startup | Enterprise
Records Enterprise only
Sync Ontology Enterprise only
Support Enterprise only
OVERAGE
Free: hard cap. Vibe Coder | Pro Developer | Startup: $0.001/manifest. Enterprise: negotiated.
REFRESH CADENCE
Manifests are produced continuously but delivered in batches at 0 UTC.
Monthly Batch on the 1st at 0 UTC. Last month's manifests available on the 1st.
Weekly Batch on Monday at 0 UTC. Last week's manifests available Monday.
Daily Batch at 0 UTC. Yesterday's manifests available today.
Continuous Real-time. Manifests available as produced.
Free: monthly only.
Vibe Coder | Pro Developer | Startup: choose monthly, weekly, or daily.
Enterprise: continuous.
PAYMENT
Free: none. Vibe Coder | Pro Developer: Credit Card. Startup: ACH. Enterprise: Wire.
Platform (Firehose)Contact usCustom
All channels + WebSocket. Sync Ontology. Signals + Briefs + Records.
Quotas reset monthly. Free plans have a hard cap. Paid plans allow overage at per-manifest rates. Backfills available as one-time purchases via S3 (up to 3 years).
Every response includes usage headers: X-Synorb-Quota-Limit, X-Synorb-Quota-Used, X-Synorb-Quota-Remaining, X-Synorb-Period, X-Synorb-Content-Level.
14
Synorb Digests $5/mo each — free on Startup & Enterprise
Pre-curated intelligence bundles built by Synorb. Each digest groups streams around a theme. Pay $5/mo per digest, or get them all free on Startup and Enterprise plans. 5,000 manifests/month hard cap per digest. Different from the Digest Builder, which lets you build your own on Pro Developer | Startup | Enterprise plans.
Requires authentication. Starts a $5/mo Stripe subscription tied to your org.
POST /digests/subscribe?digest_slug=federal-reserve-watch
→ { "subscription_id": 42, "status": "active" }
2b. Add (Startup & Enterprise — free)
Startup and Enterprise plans get all Synorb Digests free. No billing, no clones — the canonical digest is shared read-only. Changes flow through automatically.
Once subscribed or added, pull manifests via REST API or MCP — same signal + brief structure as stream manifests.
# REST APIGET /digests/{id}/manifests?published_date_from=2026-03-01&published_date_to=2026-03-09
→ Same manifest structure: source + signal + brief (record at Enterprise).
# MCPsynorb-digests List your subscribed/added digests
synorb-stream-digest Fetch manifests from a digest
4. Unsubscribe
POST /digests/unsubscribe?subscription_id=42
→ { "status": "canceled" }