API setup

Connect Luma Cloud as an OpenAI-compatible provider.

Use one public endpoint and a named bearer key for each app, environment, or team. Builder subscription quota and API Wallet usage remain separate ledgers.

Connection fields

Copy these values into any OpenAI-compatible provider form.

Provider ID

luma-cloud

Display name

Luma Cloud

Provider type

OpenAI-compatible

Base URL

https://api.lumaos.cloud/v1

Health URL

https://api.lumaos.cloud/healthz

Readiness URL

https://api.lumaos.cloud/readyz

API key env

LUMA_CLOUD_API_KEY

Default model

gpt-5.5

First smoke model

gpt-5.5-medium

Metered path

API is not just Builder renamed.

Builder includes up to three external keys against subscription quota. API Wallet is available independently on every account: create multiple named keys, all sharing one prepaid balance and account limit.

Pricing rule

Each family uses its own OpenAI standard token rate divided by 10. Effort changes token burn, not the per-token price.

Settlement mechanism

Use API balance/top-up ledger first; wire Stripe metered billing only after reconciliation and abuse caps are locked.

Flow

Four checks before giving a key to a client.

This keeps customer setup short while preserving the difference between product subscription quota and API token spend.

Create an API key

Open App → API. Add prepaid credit when needed, name the key, and copy the secret when it is shown once.

Use the /v1 endpoint

Set the provider base URL to https://api.lumaos.cloud/v1. Do not paste bridge, shard, VPS, or localhost OmniRoute URLs into customer tools.

Start with the smoke model

Run the first request with gpt-5.5-medium; switch the default to gpt-5.5 after streaming and quota state are confirmed.

Read the right ledger

Builder-key traffic burns subscription quota. API Wallet keys burn one shared prepaid balance and stay separate from every Plus/Pro/Builder subscription.

Plan split

Subscriptions and API balance stay readable.

The public docs should not imply that Plus or Pro are generic resale API products. Builder starts external keys; standalone API is priced by actual token usage.

Plus

SuperCodex-only subscription quota. No self-service external API keys.

Pro

3x Plus quota for heavier SuperCodex work. External API keys still start at Builder.

Builder

$49/mo, 5x Plus quota for SuperCodex plus self-service external API keys for the user's own CLI agents and tools.

Metered API

Separate prepaid API wallet. Each accepted request attempt is protected from double dispatch. To deduplicate a retry after an uncertain network result, reuse a stable optional Idempotency-Key.

Reasoning effort

Choose the family and effort; the Gateway preserves that exact public identity.

Base family ids default to medium. Chat Completions accepts reasoning_effort; Responses accepts reasoning.effort. Private provider qualification and capacity selection are intentionally not part of the customer contract.

Supported effort matrix

Model suffixes and effort fields express the same choice. Canonical ids stay public and provider-neutral.

gpt-5.5

default medium

low, medium, high, xhigh

Metered API: $0.50 input / $3.00 output per 1M tokens.

Cached input $0.05 / 1M; cache write not published. Above 272K input, the full request is charged at 2× input and 1.5× output.

gpt-5.6-sol

default medium

low, medium, high, xhigh, max, ultra

Metered API: $0.50 input / $3.00 output per 1M tokens.

Cached input $0.05 / 1M; cache write $0.625 / 1M. Above 272K input, the full request is charged at 2× input and 1.5× output.

gpt-5.6-terra

default medium

low, medium, high, xhigh, max, ultra

Metered API: $0.25 input / $1.50 output per 1M tokens.

Cached input $0.025 / 1M; cache write $0.3125 / 1M. Above 272K input, the full request is charged at 2× input and 1.5× output.

gpt-5.6-luna

default medium

low, medium, high, xhigh, max

Metered API: $0.10 input / $0.60 output per 1M tokens.

Cached input $0.01 / 1M; cache write $0.125 / 1M. Above 272K input, the full request is charged at 2× input and 1.5× output.

Fail-closed resolution

A base id with no effort uses medium. An explicit suffix is authoritative. A suffix that conflicts with the body returns HTTP 400 before any provider request.

gpt-5.6-terra + xhigh resolves to the effective public id gpt-5.6-terra-xhigh.

gpt-5.6-terra-high + xhigh fails with reasoning_effort_conflict.

Clients select only public model ids and efforts. Private capacity classes, cells, accounts, proxies, and provider ids are never request parameters.

Chat Completions

Use the top-level reasoning_effort field.

curl https://api.lumaos.cloud/v1/chat/completions \
  -H "Authorization: Bearer $LUMA_CLOUD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-5.6-terra",
    "reasoning_effort": "xhigh",
    "messages": [
      { "role": "user", "content": "Review this patch." }
    ],
    "stream": true
  }'

Responses

Use the nested reasoning.effort field.

curl https://api.lumaos.cloud/v1/responses \
  -H "Authorization: Bearer $LUMA_CLOUD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-5.6-sol",
    "reasoning": { "effort": "ultra" },
    "input": "Plan and implement the requested change.",
    "stream": true
  }'

Copy blocks

Use the same shape in terminals and SDKs.

The key is secret; examples use environment variables. The base URL always ends at /v1, not at a specific completion route.

Environment

Recommended local shell shape.

export LUMA_CLOUD_API_KEY="lc_live_..."
export LUMA_CLOUD_BASE_URL="https://api.lumaos.cloud/v1"
export LUMA_CLOUD_MODEL="gpt-5.5"

Streaming smoke

Use this before switching a client to xHigh by default.

curl https://api.lumaos.cloud/v1/chat/completions \
  -H "Authorization: Bearer $LUMA_CLOUD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-5.5-medium",
    "messages": [
      { "role": "user", "content": "Reply with one short sentence." }
    ],
    "max_tokens": 80,
    "stream": true
  }'

Client guides

Pick the smallest working path for each tool.

Native listings come later; these guides are the current customer-safe setup routes.

Provider submissions are gated.

Do not request native marketplace listings until public conformance, request-id support, and pricing copy are reviewed.

Provider adoption