Skip to main content
Paid article-summary routes support two payment models:
  • Wallet-aware clients use x402 with USDC on Base or Solana, or MPP on Tempo. A plain request returns HTTP 402, then the client retries with payment credentials.
  • API-key clients authenticate with Authorization: Bearer pk_drip_... and spend pre-purchased credits. API keys do not use the 402 wallet handshake.
Each successful paid request returns a robust synthesized summary. Payment does not grant permanent access, and a later request to the same paid route is charged again.

The 402 handshake for wallet clients

  1. A plain request to a paid route returns 402 with two headers:
    • WWW-Authenticate: Payment ... — the MPP challenge
    • PAYMENT-REQUIRED — the x402 v2 challenge
  2. Retry the same request through a payment-aware client, or manually with:
    • Authorization: Payment <credential> for MPP, or
    • a PAYMENT-SIGNATURE header for x402 v2.
  3. On success (200), the response includes synthesizedSummary and paymentInfo.
The 402 response lets a wallet-aware client inspect the exact runtime price before authorizing payment. For discovery-time estimates, publication post listings include priceCents. The runtime challenge is authoritative.
Treat a 402 as a “pay and retry” signal, not a failure. If a plain HTTP request returns 402, retry it through the payment-aware client rather than surfacing an error.
A plain request returns a challenge rather than the paid summary:
After a successful payment, the response identifies how the request was paid:

API-key credits

API keys are traditional bearer tokens created from the Drip dashboard. Use them when your agent or backend service should spend an account balance instead of holding a wallet.
API keys spend purchased credits only. If the balance is too low, the paid route returns 403 with reason: "insufficient_credits" instead of issuing a 402 payment challenge. See the API-key quickstart for the full setup and request examples.

Inspect pricing before payment

List a publication’s recent posts to compare prices before selecting one:
priceCents is useful for selection and agent spending limits. When requesting the paid route with a wallet, inspect the returned 402 challenge before authorizing payment because it contains the live price.

Discovery pricing vs runtime pricing

The OpenAPI discovery document exposes x-payment-info.offers[] on paid routes. These offers are advisory — they may list Base or Solana USDC (x402), Tempo, and Stripe charges, or catalog floor prices. The runtime 402 challenge is authoritative. Per-post pricing comes from the live challenge, and the price may scale with content — for example, stock-picks are priced by the number of distinct attributed source articles in the response. Always trust the live 402 over publication listings or discovery offers.

Status codes

A 404 and a 503 never carry a payment challenge — do not pay on either. 503 means the summary is still being generated; retry shortly.
For production handling, see Errors & Retries.

Discovery

Prefer GET /openapi.json (OpenAPI 3.1) for route shapes, JSON schemas, and paid-route x-payment-info.offers[] metadata. If OpenAPI is unavailable, use GET /.well-known/x402 for the paid resource list in METHOD /path form. The root x-discovery.ownershipProofs field is a Drip vendor extension, not part of core MPP discovery.