API Reference

Get stream information.

get

Gets basic information about the specified stream.

Header parameters
x-api-keystringRequired

API key for authentication

Responses
get
/v1/streams/{streamId}
GET /v1/streams/{streamId} HTTP/1.1
Host: api.synoptic.com
x-api-key: text
Accept: */*
default
{
  "id": "01J366WJBXF6BN036SXVNRAP8A",
  "name": "Crypto Legal Updates",
  "description": "This stream covers the latest updates in cryptocurrency regulations and legal developments.",
  "customTargetsData": {},
  "label": "text",
  "paidStreamData": {},
  "packageOnly": false,
  "isFeatured": true,
  "customTargets": [
    "SynopticCom",
    "SummersThings"
  ]
}

Get streams list.

get

Returns a paginated list of public streams with optional filtering.

Query parameters
limitnumber · min: 1 · max: 50Optional

Limit of streams to return.

Default: 10
nextTokenstringOptional

Token to get the next page of streams.

streamStatestring · enumOptional

State of the stream.

Possible values:
streamCategorystring · enumOptional

Category of the stream.

Possible values:
isFeaturedbooleanOptional

Whether the stream is featured.

sortBystring · enumOptional

Sort by.

Possible values:
pricingTypestring · enumOptional

Pricing type.

Possible values:
custombooleanOptional

Whether to return custom streams.

minFollowersnumberOptional

Minimum number of followers.

Default: 0
Header parameters
x-api-keystringRequired

API key for authentication

Responses
get
/v1/streams
GET /v1/streams HTTP/1.1
Host: api.synoptic.com
x-api-key: text
Accept: */*
default
{
  "streams": [
    {
      "id": "01J366WJBXF6BN036SXVNRAP8A",
      "name": "Crypto Legal Updates",
      "description": "This stream covers the latest updates in cryptocurrency regulations and legal developments.",
      "customTargetsData": {},
      "label": "text",
      "paidStreamData": {},
      "packageOnly": false,
      "isFeatured": true,
      "customTargets": [
        "SynopticCom",
        "SummersThings"
      ]
    }
  ],
  "nextToken": "text"
}

Get stream posts.

get

Gets posts from the specified stream. You must be a follower of the stream.

Query parameters
limitnumberOptional

Limit of posts to retrieve.

Default: 50
nextTokenstringOptional

Cursor for pagination (base64-encoded LastEvaluatedKey).

Header parameters
x-api-keystringRequired

API key for authentication

Responses
get
/v1/streams/{streamId}/posts
GET /v1/streams/{streamId}/posts HTTP/1.1
Host: api.synoptic.com
x-api-key: text
Accept: */*
default
{
  "posts": [
    {
      "id": "01JWEX3G5B1P2FMXKPJAHEMTTH",
      "streamId": "01J366WJBXF6BN036SXVNRAP8A",
      "text": "SECURITIES AND EXCHANGE COMMISSION v. BINANCE HOLDINGS LIMITED et al (1:23-cv-01599-ABJ-ZMF)\n\n05/29/2025301 STIPULATION of Dismissal And Releases by SECURITIES AND EXCHANGE COMMISSION. (Scarlato, Matthew) (Entered: 05/29/2025)",
      "createdAt": "2025-05-29T20:52:55.083Z",
      "markdown": "# SECURITIES AND EXCHANGE COMMISSION v. BINANCE HOLDINGS LIMITED et al (1:23-cv-01599-ABJ-ZMF)\n\n05/29/2025301 STIPULATION of Dismissal And Releases by SECURITIES AND EXCHANGE COMMISSION. (Scarlato, Matthew) (Entered: 05/29/2025)",
      "customTarget": "SynopticCom",
      "metadata": {
        "type": "Post",
        "tickers": [
          "text"
        ],
        "pairs": [
          {
            "exchange": "BINANCE_PERPS",
            "value": "BTCUSDT"
          }
        ],
        "machineReadableText": "text",
        "tags": [
          "text"
        ],
        "sourceLink": "text",
        "sourceName": "text",
        "summary": "text",
        "headline": "text",
        "media": [
          {
            "type": "image",
            "url": "text",
            "caption": "text",
            "credit": "text"
          }
        ],
        "icon": {
          "url": "text"
        },
        "sourceTimestamp": "1764894848760"
      },
      "vendorMetadata": {
        "ANY_ADDITIONAL_PROPERTY": "text"
      },
      "mediaUploadURLs": [
        {
          "type": "image/jpeg",
          "url": "https://s3.us-east-1.amazonaws.com/bucket/key?..."
        }
      ],
      "failedUploadURLs": [
        {
          "mimeType": "image/jpeeeg",
          "message": "Unsupported MIME type"
        }
      ]
    }
  ],
  "nextToken": "text"
}

Add a post to a stream.

post

Adds a post to the specified stream. You must use the stream publisher key for this stream.

Header parameters
x-api-keystringRequired

API key for authentication

Body
contentstringRequired

Content of the post.

contentTypestring · enumOptional

Specify how to process the content.

Default: rawtextPossible values:
releaseAtstring · date-timeOptional

Scheduled release date. Provide a date in ISO 8601 format.

customTargetstringOptional

Custom target. Required iff posting to a custom stream.

idempotencyKeystringOptional

Idempotency key. If provided, the post will be ignored if a post for the same stream and idempotencyKey already exists.

metadataall ofOptional

Metadata for the post. This is optional and can include various details like tags, source link, etc.

Responses
post
/v1/streams/{streamId}/post
POST /v1/streams/{streamId}/post HTTP/1.1
Host: api.synoptic.com
x-api-key: text
Content-Type: application/json
Accept: */*
Content-Length: 573

{
  "content": "text",
  "contentType": "rawtext",
  "releaseAt": "2025-12-06T03:27:07.316Z",
  "customTarget": "text",
  "idempotencyKey": "text",
  "uploadMedia": [
    {
      "mimeType": "image/jpeg"
    }
  ],
  "metadata": {
    "type": "Post",
    "tickers": [
      "text"
    ],
    "pairs": [
      {
        "exchange": "BINANCE_PERPS",
        "value": "BTCUSDT"
      }
    ],
    "machineReadableText": "text",
    "tags": [
      "text"
    ],
    "sourceLink": "text",
    "sourceName": "text",
    "summary": "text",
    "headline": "text",
    "media": [
      {
        "type": "image",
        "url": "text",
        "caption": "text",
        "credit": "text"
      }
    ],
    "icon": {
      "url": "text"
    },
    "sourceTimestamp": "1764894848760"
  },
  "vendorMetadata": {
    "ANY_ADDITIONAL_PROPERTY": "text"
  }
}
default
{
  "id": "01JWEX3G5B1P2FMXKPJAHEMTTH",
  "streamId": "01J366WJBXF6BN036SXVNRAP8A",
  "text": "SECURITIES AND EXCHANGE COMMISSION v. BINANCE HOLDINGS LIMITED et al (1:23-cv-01599-ABJ-ZMF)\n\n05/29/2025301 STIPULATION of Dismissal And Releases by SECURITIES AND EXCHANGE COMMISSION. (Scarlato, Matthew) (Entered: 05/29/2025)",
  "createdAt": "2025-05-29T20:52:55.083Z",
  "markdown": "# SECURITIES AND EXCHANGE COMMISSION v. BINANCE HOLDINGS LIMITED et al (1:23-cv-01599-ABJ-ZMF)\n\n05/29/2025301 STIPULATION of Dismissal And Releases by SECURITIES AND EXCHANGE COMMISSION. (Scarlato, Matthew) (Entered: 05/29/2025)",
  "customTarget": "SynopticCom",
  "metadata": {
    "type": "Post",
    "tickers": [
      "text"
    ],
    "pairs": [
      {
        "exchange": "BINANCE_PERPS",
        "value": "BTCUSDT"
      }
    ],
    "machineReadableText": "text",
    "tags": [
      "text"
    ],
    "sourceLink": "text",
    "sourceName": "text",
    "summary": "text",
    "headline": "text",
    "media": [
      {
        "type": "image",
        "url": "text",
        "caption": "text",
        "credit": "text"
      }
    ],
    "icon": {
      "url": "text"
    },
    "sourceTimestamp": "1764894848760"
  },
  "vendorMetadata": {
    "ANY_ADDITIONAL_PROPERTY": "text"
  },
  "mediaUploadURLs": [
    {
      "type": "image/jpeg",
      "url": "https://s3.us-east-1.amazonaws.com/bucket/key?..."
    }
  ],
  "failedUploadURLs": [
    {
      "mimeType": "image/jpeeeg",
      "message": "Unsupported MIME type"
    }
  ]
}

Set custom targets for a stream

post

Sets custom targets for the specified stream. You must be a follower of the stream.

Header parameters
x-api-keystringRequired

API key for authentication

Body
customTargetsstring[]Required

Custom targets to set for the stream.

Responses
post
/v1/streams/{streamId}/custom-targets
POST /v1/streams/{streamId}/custom-targets HTTP/1.1
Host: api.synoptic.com
x-api-key: text
Content-Type: application/json
Accept: */*
Content-Length: 26

{
  "customTargets": [
    "text"
  ]
}
default
[
  "text"
]

Last updated