GloStream Tech

Substack API/Docs

Substack API docs

Unofficial live read API. Subscribe on RapidAPI, send the key on every request. Successful responses wrap Substack JSON as { "data": ... }. Missing parameters return 400. Unknown resources return 404. Upstream timeouts return 504.

Quickstart

Host is substack-live.p.rapidapi.com. IDs come from search or feed: posts as post_id, comments as comment_id. Publication handles are the subdomain or host.

curl --request GET \
  --url 'https://substack-live.p.rapidapi.com/search/post?query=newsletter&language=en' \
  --header 'x-rapidapi-host: substack-live.p.rapidapi.com' \
  --header 'x-rapidapi-key: YOUR_RAPIDAPI_KEY'

Search

GET /search/top

Ranked posts and comments for a keyword.

  • queryrequiredSearch text
  • languageISO code that boosts ranking, e.g. en

GET /search/post

Search posts. Paginate with page.

  • queryrequiredSearch text
  • pageStarts at 0
  • languageISO code, e.g. en

GET /search/people

Search public profiles.

  • queryrequiredSearch text
  • pageStarts at 0
  • languageISO code, e.g. en

GET /search/publication

Search publications.

  • queryrequiredSearch text
  • pageStarts at 0
  • languageISO code, e.g. en

GET /search/explore

Explore tabs and items.

  • tabe.g. explore
  • typee.g. base
  • queryOptional filter
  • cursorPagination cursor
  • languageISO code, e.g. en

Feed

GET /feed

Feed of posts and comments by category tab.

  • tabDefault for-you
  • cursorPagination cursor
  • limitPage size

GET /feed/tabs

List available feed tabs.

  • surfacee.g. explore
  • selectedTabe.g. explore
  • typee.g. base

Publication

GET /publication/archive

Posts in a publication archive.

  • publicationrequiredSubdomain (platformer) or host (platformer.substack.com)
  • sortDefault new
  • limitPage size
  • offsetPagination offset

GET /publication/recommendations

Publications recommended from one publication.

  • publicationIdrequiredNumeric publication id

Reader

GET /reader/post

One post by id, or by publication plus slug.

  • postIdFrom search or feed as post_id
  • publicationRequired with slug
  • slugRequired with publication

GET /reader/comment

One comment by id.

  • commentIdrequiredFrom search or feed as comment_id

GET /reader/comment-replies

Replies to a comment.

  • commentIdrequiredComment id
  • cursorPagination cursor

GET /reader/post-comments

Comments on a post.

  • publicationrequiredSubdomain or host
  • postIdrequiredPost id

Discover

GET /categories

All public categories.

GET /category

Publications in a category.

  • categoryIdrequirede.g. 96
  • tierDefault all
  • pageStarts at 0

Profile

GET /profile/public-profile

Public profile for a handle.

  • handlerequirede.g. scottstillman

GET /profile/activity

A user's public activity.

  • profileIdrequiredNumeric profile id
  • cursorPagination cursor

GET /profile/posts

Posts by a user.

  • profileIdrequiredNumeric profile id
  • offsetPagination offset
  • limitPage size

Health

GET /health

Service health. Returns {"status":"ok"}.