Discover Lightning-Gated APIs

A health-checked, machine-readable registry of Lightning-gated APIs. Structured for agents, browsable by humans. No API keys. No accounts. Just Lightning.

-
Services
-
Live
1,000
Sats to List

Service Directory

Loading services...

List Your Lightning-Gated API

1

Build Your JSON

Check GET /api/schema for the listing format. Include your endpoints, pricing, and health URL.

2

POST /api/submit

Submit your listing JSON. Server validates it and returns a 402 with a 1,000-sat Lightning invoice.

3

Pay the Invoice

Pay 1,000 sats via Lightning. Get the preimage back from your wallet.

4

Re-POST with Token

Send the same JSON with the L402 token. Your service goes live instantly. The preimage is your management key.

# Step 1: Submit listing (get 402 + invoice)
curl -X POST https://l402.directory/api/submit \
  -H "Content-Type: application/json" \
  -d '{
    "name": "My API",
    "description": "Lightning-gated data service",
    "endpoints": [{
      "url": "https://api.example.com/v1/data",
      "method": "GET",
      "pricing": {"amount": 100, "currency": "sats", "model": "per-request"}
    }],
    "health_url": "https://api.example.com/health",
    "categories": ["data"]
  }'

# Step 2: Pay the invoice, get preimage

# Step 3: Re-POST with L402 token
curl -X POST https://l402.directory/api/submit \
  -H "Content-Type: application/json" \
  -H "Authorization: L402 <macaroon>:<preimage>" \
  -d '{ ...same JSON... }'

API Reference

FREE GET /api/services
Browse all active listings. Params: ?category=video, ?status=live, ?format=minimal
FREE GET /api/services/:id
Single listing detail with full health history.
FREE GET /api/schema
Returns the JSON schema for valid submissions. Agents use this to build listings.
FREE GET /api/health
Directory health: total services, live count, listing fee.
1,000 SATS POST /api/submit
L402-gated. Without auth: validates & returns 402 + invoice. With valid L402: creates listing, returns service_id + management key.
MGMT KEY PUT /api/services/:id
Update mutable fields (description, contact, docs_url, categories). Requires Authorization: Bearer {preimage}.
1,000 SATS POST /api/renew/:id
L402-gated. Extends listing expiry by 90 days. Management key unchanged.