Public partner feed of buying-intent signals with cursor pagination and entity grouping.
{ signals, pagination }. One entry per signal, ordered by created_at desc (or score desc with sort=score).group_by=entity) — { entities, pagination }. One entry per entity, each with the top 25 signals for that entity ranked by score.since / until (ISO 8601), signal_type (comma-separated labels), source (comma-separated source IDs), and entity_id (UUID). The cursor field on the response echoes back into the next request.
/api/v1/* endpoints rather than the internal /api/signals/* surface — v1 is versioned, contract-stable, and rate-limited at 100 req/min per key.Polling cadence — the daily scan runs in the background. For most agents, polling once an hour with since=<last_fetched_at> is sufficient. Going faster than every 5 min will mostly return empty pages.Pagination loop. Keep calling with the returned pagination.cursor until has_more is false. Don’t rely on count for totals — it’s the page size.Grouped feed trade-off. group_by=entity returns the top 25 signals per entity to keep responses bounded. If you need every signal for a specific entity, switch to the flat feed with entity_id=<uuid>.No side effects. GET is safe to call as often as needed, but respect the overall 100 req/min rate limit.Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Page size. Default 100, max 100.
1 <= x <= 100Opaque cursor from a previous response's pagination.cursor.
ISO 8601 — only return signals created on or after this time.
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$ISO 8601 — only return signals created on or before this time.
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$Comma-separated type labels (e.g. hiring,funding). Case-insensitive. Unknown labels yield an empty page.
Comma-separated source IDs (e.g. reddit,news). Only signals from these sources are returned.
Filter to signals attached to a specific entity.
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$Set to entity to receive an entity-grouped response instead of a flat list.
entity date (default) — newest first. score — highest score first.
date, score