Skip to main content
GET
/
v1
/
signal
/
all
Get All Signals
curl --request GET \
  --url https://api.shoal.xyz/v1/signal/all \
  --header 'Authorization: Bearer <token>'

Documentation Index

Fetch the complete documentation index at: https://docs.shoal.xyz/llms.txt

Use this file to discover all available pages before exploring further.

Signal events are radar events that have been scored for market relevance. The canonical significance field is a numeric score indicating how significant the event is — higher scores mean greater potential market impact. Signals are a subset of radar: not every radar event qualifies as a signal. The live API returns both canonical field names and legacy compatibility fields during the schema transition. New integrations should build against the canonical names:
  • summary
  • bullets
  • owners
  • participants
  • evidence
  • latestEvidenceTimestamp
  • significance
Use this endpoint to pull a complete scored feed since a given timestamp.
This is a bulk feed endpoint intended for higher-tier polling and export workflows. For most applications, prefer /v1/signal/top, /v1/signal/byOrganizationId, or /v1/signal/byCategory.

Query Parameters

  • since (string, required) — ISO 8601 timestamp. Only return events newer than this time. See Polling Guide.
  • limit (integer, default: 25, max: 25)
  • offset (integer, default: 0, max: 250)
  • cursor (string, optional) — Opaque cursor token from a previous next_cursor response. When provided, since is required and offset is ignored.
The since parameter is required. Requests without it return 400:
{ "error": "The 'since' parameter is required. Use an ISO 8601 timestamp (e.g. 2026-02-01T00:00:00Z)." }
Invalid timestamps (e.g. since=garbage) are also rejected with 400.This endpoint is for recent monitoring, not deep historical replay. The since timestamp cannot be older than 7 days. For deeper history, use scoped routes or contact Shoal about export access.

Request

cURL
curl -X GET "https://api.shoal.xyz/v1/signal/all?since=2026-04-04T00:00:00Z&limit=25&offset=0" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response (200)

{
  "limit": 25,
  "offset": 0,
  "since": "2026-04-04T00:00:00Z",
  "next_cursor": "eyJ0cyI6IjIwMjYtMDItMjhUMDY6MTg6NDQuMDAwWiIsImlkIjo3MDd9",
  "data": [
    {
      "id": 707,
      "title": "Event Title",
      "eventCategory": "partnership",
      "eventSubcategory": "acquisition",
      "summary": "Summary of the event.",
      "bullets": ["Bullet point 1.", "Bullet point 2."],
      "owners": [
        {
          "id": 965,
          "label": "Organization Name",
          "type": "project",
          "aliases": []
        }
      ],
      "participants": [
        {
          "id": 765,
          "label": "Participant Name",
          "type": "project",
          "aliases": ["Alias"]
        }
      ],
      "evidence": [
        {
          "id": 46970,
          "content": "Post content",
          "url": "https://x.com/...",
          "timestamp": "2026-02-28T06:18:44+00:00"
        }
      ],
      "latestEvidenceTimestamp": "2026-02-28T06:18:44.000Z",
      "significance": 7.01,
      "globalSummary": "Summary of the event.",
      "bulletSummary": ["Bullet point 1.", "Bullet point 2."],
      "eventOwner": [
        {
          "id": 965,
          "label": "Organization Name",
          "type": "project",
          "aliases": []
        }
      ],
      "eventParticipants": [
        {
          "id": 765,
          "label": "Participant Name",
          "type": "project",
          "aliases": ["Alias"]
        }
      ],
      "posts": [
        {
          "id": 46970,
          "content": "Post content",
          "url": "https://x.com/...",
          "timestamp": "2026-02-28T06:18:44+00:00"
        }
      ],
      "latestPostTimestamp": "2026-02-28T06:18:44.000Z",
      "signal": 7.01
    }
  ]
}
Legacy compatibility fields are still present for existing clients:
  • globalSummary -> summary
  • bulletSummary -> bullets
  • eventOwner -> owners
  • eventParticipants -> participants
  • posts -> evidence
  • latestPostTimestamp -> latestEvidenceTimestamp
  • signal -> significance