It's not just an API... It's ATPI - GET it?

ATPI

Resolve any AT Protocol URI and get JSON data instantly.

Prefix atpi. to any AT Protocol URL to view JSON

at://alice.bsky.socialhttps://atpi.at://alice.bsky.social

Access Methods

Browser / Postman / Code

Direct URL access. Just prefix atpi. to any AT URI and get JSON data instantly. No authentication needed.

Browser Demo
# Direct browser access https://atpi.at://sri.xyz https://atpi.at://alice.bsky.social/app.bsky.feed.post https://atpi.at://did:plc:7gm5ejhut7kia2kzglqfew5b/app.bsky.feed.post/3lszcx7zf622q # With parameters https://atpi.at://alice.bsky.social/app.bsky.feed.post?limit=10 https://atpi.at/?uri=at://alice.bsky.social

cURL

Perfect for scripts and automation. Pipe to jq, grep, or your favorite tools.

cURL Demo
# Basic GET request curl https://atpi.at://sri.xyz # With collection and parameters curl "https://atpi.at://alice.bsky.social/app.bsky.feed.post?limit=10" # Pretty print with jq curl https://atpi.at://sri.xyz | jq '.repoInfo.handle'

NPM CLI

Full-featured terminal tool with tab completion. Resolve and explore AT Protocol URLs with formatted JSON output.

When curl https://atpi. feels too long, just type atpi

NPM CLI Demo
npm install -g atpi
# Basic resolution atpi at://sri.xyz atpi at://alice.bsky.social/app.bsky.feed.post # Tab completion for everything atpi at://sri.xyz/ # Lists all collections atpi at://sri.xyz/app.bsky.feed.post/ # Lists all records atpi at://sri.xyz/app.bsky.gr # Completes to app.bsky.graph # Multiple URLs at once atpi at://sri.xyz at://alice.bsky.social # Process with jq atpi at://sri.xyz | jq '.repoInfo.handle'
View on NPM

Chrome Extension

Hover over at:// URLs on any webpage for instant JSON previews. No context switching required.

Chrome Extension Demo
# Works on any webpage • Automatically detects all AT URIs • Hover for instant JSON preview • Local/Remote resolution modes • Enable/disable per domain
Install Extension

VS Code Extension

Hover for instant JSON previews and smart autocompletion. Resolve AT URIs without leaving your editor.

VS Code Extension Demo
# Key features: • Hover over at:// URLs for instant JSON preview • IntelliSense dropdown shows collections/records after each "/" • Smart autocompletion for AT Protocol paths

Email API

WHY?

Send an email with an AT URI in the subject line, get JSON data as reply.

Latency: 1-2 minutes

Email API Demo
To: [email protected] Subject: at://sriganesh.bsky.social
Send Email

Snail Mail API

SERIOUSLY?

JSON via USPS. Maybe the only GET API that requires a "POST".

Latency: 3-5 business days

Send SASE to:

ATPI
PO BOX 2
HOLMDEL, NJ 07733

Include your AT Protocol URL request

How it works:
1. Write your AT Protocol URL on paper
2. Include a self-addressed stamped envelope
3. Mail it to our PO Box (Box 2, same as @ key)
4. Receive printed JSON response
Bonus: You might also receive some stickers!

SASE API Response Example

ATPI Reference

URL Formats

https://atpi.at://[at-uri] https://atpi.at/at://[at-uri] https://atpi.at/[did-or-handle]/[collection]/[rkey] https://atpi.at/?uri=[at-uri]

Parameters

cursor
Pagination cursor for collections
limit
Records per page (1-100, default: 50)

Example Response

{ "uri": "at://did:plc:dcy5vn7o7vh7xi6qktrgpj7w/app.bsky.feed.post/3lry27bsx2s2z", "cid": "bafyreibfv3y6spvvi742kv3xsiqinoomixbkzhlzwetcqmgpk5ifoy7kfu", "value": { "text": "Test Post", "$type": "app.bsky.feed.post", "langs": ["en"], "createdAt": "2025-06-19T17:26:07.872Z" } }

Source Code

Explore the code, contribute, or build your own integrations.

ATPI Server

Core ATPI service and API

View Source Code

NPM Package

CLI tool for terminal

View Source Code

Chrome Extension

Browser extension

View Source Code

VS Code Extension

Code Editor integration

View Source Code

Try It Now