Skip to content

Quickstart

This guide walks you through creating a listing and accepting your first Stripe payment. You will be up and running in under 5 minutes.

1. Get your API key

Create an account to get your API key (lb_...).

# Set your API key as an environment variable
export LISTBEE_API_KEY="lb_your_key_here"

2. Connect Stripe

Before you can accept payments, connect your Stripe account from the developer console. This is a one-time setup — ListBee uses Stripe Connect to route payments directly to your bank.

3. Create a listing

Create a listing with a name, price, and content. The listing goes live immediately and you get a checkout URL in a single API call. Pass a single content field — the type is auto-detected from the value.

curl
Python
Node.js
curl -X POST https://api.listbee.so/v1/listings \
  -H "Authorization: Bearer $LISTBEE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Ultimate Guide to Prompt Engineering",
    "description": "50-page PDF with advanced prompting techniques.",
    "price": 1900,
    "currency": "USD",
    "content": "https://example.com/guide.pdf"
  }'
import httpx

client = httpx.Client(
    base_url="https://api.listbee.so",
    headers={"Authorization": f"Bearer {api_key}"},
)

resp = client.post("/v1/listings", json={
    "name": "Ultimate Guide to Prompt Engineering",
    "description": "50-page PDF with advanced prompting techniques.",
    "price": 1900,
    "currency": "USD",
    "content": "https://example.com/guide.pdf",
})
listing = resp.json()
print(listing["url"])  # https://buy.listbee.so/abc123
const resp = await fetch("https://api.listbee.so/v1/listings", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    name: "Ultimate Guide to Prompt Engineering",
    description: "50-page PDF with advanced prompting techniques.",
    price: 1900,
    currency: "USD",
    content: "https://example.com/guide.pdf",
  }),
});

const listing = await resp.json();
console.log(listing.url); // https://buy.listbee.so/abc123

Response:

{
  "id": "lst_abc123def456",
  "slug": "abc123",
  "name": "Ultimate Guide to Prompt Engineering",
  "status": "published",
  "price": 1900,
  "currency": "USD",
  "content_type": "file",
  "has_content": true,
  "url": "https://buy.listbee.so/abc123",
  "created_at": "2026-03-20T10:00:00Z"
}

Your listing is now live. Share the URL https://buy.listbee.so/abc123 with buyers.

4. Buyer pays via Stripe

When a buyer visits the checkout URL, they are directed to a Stripe Checkout session. After successful payment, Stripe notifies ListBee and an order is created automatically. Content is delivered to the buyer immediately — no action needed on your end.

5. Receive order notifications

Set up a webhook to receive real-time order.completed events when buyers pay. This lets you sync orders to your systems, send custom emails, or trigger downstream workflows.

curl
Python
# Register a webhook endpoint
curl -X POST https://api.listbee.so/v1/webhooks \
  -H "Authorization: Bearer $LISTBEE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://your-server.com/webhooks/listbee"}'

# List completed orders
curl https://api.listbee.so/v1/orders \
  -H "Authorization: Bearer $LISTBEE_API_KEY"
import httpx

client = httpx.Client(
    base_url="https://api.listbee.so",
    headers={"Authorization": f"Bearer {api_key}"},
)

# Register a webhook endpoint
client.post("/v1/webhooks", json={
    "url": "https://your-server.com/webhooks/listbee",
})

# List completed orders
resp = client.get("/v1/orders")
orders = resp.json()["items"]

Content auto-detection

Pass a single content field — ListBee detects the type automatically:

InputDetected typeBuyer receives
URL returning a file (application/pdf, image/*, etc.)fileSecure download link after payment
URL returning HTML, a redirect, or any non-file responseurlRedirect to the URL after payment
Plain text (no http:// or https:// prefix)textText displayed in viewer after payment

Next steps