GET
/
posts
/
latest
curl --request GET \
  --url https://api.substackapi.dev/posts/latest \
  --header 'X-API-Key: <api-key>'
[
  {
    "slug": "my-post",
    "url": "https://example.substack.com/p/my-post",
    "title": "My Post",
    "description": "This is a description of my post",
    "excerpt": "This is an excerpt of my post",
    "body_html": "<p>This is the body of my post</p>",
    "reading_time_minutes": 5,
    "audio_url": "https://example.com/my-post.mp3",
    "date": "2025-03-20T15:30:00Z",
    "likes": 100,
    "paywall": false,
    "cover_image": {
      "original": "https://example.com/my-post.jpg",
      "og": "https://example.com/my-post.jpg",
      "small": "https://example.com/my-post.jpg",
      "medium": "https://example.com/my-post.jpg",
      "large": "https://example.com/my-post.jpg"
    },
    "cover_image_color_palette": {
      "vibrant": "rgb(0, 0, 0)",
      "light_vibrant": "rgb(0, 0, 0)",
      "dark_vibrant": "rgb(0, 0, 0)",
      "muted": "rgb(0, 0, 0)",
      "light_muted": "rgb(0, 0, 0)",
      "dark_muted": "rgb(0, 0, 0)"
    },
    "author": "John Doe",
    "author_image": {
      "original": "https://example.com/my-post.jpg",
      "small": "https://example.com/my-post.jpg",
      "medium": "https://example.com/my-post.jpg",
      "large": "https://example.com/my-post.jpg"
    }
  }
]

Authorizations

X-API-Key
string
header
required

Test key: sk_test_9b0j6a1bdbf4f38b1 Get production key at auth.substackapi.dev

Query Parameters

publication_url
string
required

The URL of the publication to retrieve posts from (e.g. example.substack.com)

limit
integer
default:10

The maximum number of results to return (default: 10)

Required range: 1 <= x <= 50
offset
integer
default:0

The offset of the results to return (default: 0)

Required range: x >= 0

Response

200
application/json
A list of posts
slug
string
Example:

"my-post"

url
string
Example:

"https://example.substack.com/p/my-post"

title
string
Example:

"My Post"

description
string
Example:

"This is a description of my post"

excerpt
string | null
Example:

"This is an excerpt of my post"

body_html
string | null
Example:

"<p>This is the body of my post</p>"

reading_time_minutes
number | null
Example:

5

audio_url
string | null
Example:

"https://example.com/my-post.mp3"

date
string
Example:

"2025-03-20T15:30:00Z"

likes
number
Example:

100

paywall
boolean
Example:

false

cover_image
object
cover_image_color_palette
object
author
string
Example:

"John Doe"

author_image
object