Skip to content
x.md
Esc
↑↓navigate↵open⌘Jpreview
On this page

Profiles and connections

Read an account's profile and posts, import its whole history in bulk, and list followers and following.

Read a profile

GET /{handle} — the permalink form. It returns the profile and its recent posts: original posts only by default, up to 100 per page with limit. Add with_replies=true and with_reposts=true to get the account’s replies and reposts too. The response contains at most limit posts. Filtering, deduplication, upstream depth and a bounded page budget can produce a shorter response; follow nextCursor even after a short page.

curl -sS 'https://x.pcstyle.dev/vercel?full=true'

GET /api/v1/profiles/{handle} — the same read on the versioned surface.

curl -sS 'https://x.pcstyle.dev/api/v1/profiles/vercel?full=true'

Read connections

GET /{handle}/followers and GET /{handle}/following list who follows an account and who it follows, up to 100 per page, raw JSON with format=json, and no ceiling on how far a cursor goes.

curl -sS 'https://x.pcstyle.dev/vercel/followers'

The same two lists sit under /api/v1/profiles/{handle}:

curl -sS 'https://x.pcstyle.dev/api/v1/profiles/vercel/following?format=json'
Permalink route Versioned route JSON fields
/{handle} /api/v1/profiles/{handle} profile and posts
/{handle}/followers /api/v1/profiles/{handle}/followers users
/{handle}/following /api/v1/profiles/{handle}/following users

Both forms take the same options and return the same body; the versioned ones are the stable machine surface. Use a handle without @ in the URL. Connection data depends on upstream availability.

Options

Parameter Default Behavior
include_posts true Set false to fetch only identity/profile, including avatar_url, without reading a timeline. Useful for circle enrichment.
limit 20 Items per response, maximum 100. An upper bound, not a promised count. Follow nextCursor until absent.
with_replies false Profile only. true includes the account’s replies.
with_reposts false Profile only. true includes reposts. A repost is the original post with reposted_by set, so it carries the original’s id and created_at.
until — Profile only. ISO date, ISO datetime, or unix timestamp: the page starts just below that instant, so you can jump to a date without walking cursors. Ignored when cursor is present.
cursor — Opaque nextCursor from the previous response. No page ceiling: keep following it.
page 1 Page 1–10; prefer cursors. Ignored when cursor is present.
full false true or 1 adds dates, metrics, and expanded profile details.
format markdown markdown or json. Browse routes do not accept obsidian.
nocache false true or 1 bypasses the application cache.

Follow nextCursor to continue. See pagination.

Import a post history

For hundreds or thousands of posts at once — replies included, raw JSON, streamed — use the bulk route instead of paging:

curl -sS 'https://x.pcstyle.dev/api/v1/profiles/paulg/posts?since=2025-09-01&max_posts=2000'

It walks the timeline in parallel, remembers what it collected, and answers repeat imports from that archive. Import a post history covers it end to end.

Last updated on

Was this page helpful?