GET /api/v1/me/unlocks lists lifetime unlocks for the Drip user identified
by the API key or MCP OAuth token. Keys and tokens for the same user share this
list. Wallet and MPP unlocks belong to their payment identities and are not
included. Use it to answer “what has this account already bought?”
Requires Authorization: Bearer pk_drip_… or an MCP OAuth access token with
mcp:unlock. Session JWTs are rejected (401).
MCP: list_unlocked_posts.
This route does not return synthesizedSummary. Re-read with
GET /api/v1/publications/{publicationSlug}/{postSlug} (or MCP
unlock_post) — free after the first unlock for this Drip user. See
Payment Flow.
List
limit (1-50, default 20) and
cursor (pass the previous nextCursor). nextCursor is null when
exhausted. A bad limit returns 400 with field issues; an unknown
cursor returns 400 with error: "Invalid cursor.". Both include
code: "bad_request" and hint. See Errors & Retries.
amountUsd is the credits charged on first unlock, or null when no spend
row exists. isPodcast is true for episodes.
To unlock a new post, confirm $X.XX from discovery priceCents, then
call the paid publication-post route (HTTP) or unlock_post with
confirmSpend: true (MCP). MCP re-reads of an already-unlocked post do not
require confirmSpend.
