Unified model API with transparent usage pricing

OpenAI and Claude compatible, with Singapore and Bangkok nodes. Model pricing, wallet settlement, and developer entry points live on one page.

Model Pricing

USD / Million Tokens
ModelInputOutputCache ReadCache WriteOfficial I/OSavings
Claude Fable 5$5$25$0.5$6.25$10 / $50-50%
Claude Opus 4.8$2.5$12.5$0.25$3.125$5 / $25-50%
Claude Opus 4.7$2.5$12.5$0.25$3.125$5 / $25-50%
Claude Opus 4.6$2.5$12.5$0.25$3.125$5 / $25-50%
Claude Sonnet 4.6$1.5$7.5$0.15$1.875$3 / $15-50%
Claude Haiku 4.5$0.5$2.5$0.05$0.625$1 / $5-50%
GPT-5.5$2.5$15$0.25$3.125$5 / $30-50%
GPT-5.4$1.25$7.5$0.125$1.5625$2.5 / $15-50%
GPT-5.3 Codex$0.875$7$0.0875$1.0938$1.75 / $14-50%

Funding, nodes, and access

WeChat Pay to USD wallet

CNY orders show a live FX rate when the payment is created, then post to the USD wallet after successful payment.

Payment methodWeChat PaySettlement unitUSD wallet credit

Singapore and Bangkok nodes

The public gateway provides APAC node access while continuously syncing model catalog, pricing, and availability.

CoverageSingapore and Bangkok.

API and Web Chat

One account, wallet, and request log support both programmatic model calls and browser chat in the same control surface.

Programmatic API

Use OpenAI- or Claude-compatible protocols with one place for API keys, idempotency, wallet balance, and request logs.

Web Chat

Browser sessions do not store runtime keys; server-side relay credentials call the same gateway for lightweight chat and model checks.

Built for Developers

Integrate directly with existing workflows. Nodex AI provides drop-in compatibility with OpenAI and Anthropic SDKs, unified API keys, and infrastructure management.

  • Drop-in SDK replacement
  • Universal API keys
  • Web Chat shares the same billing boundary
Read the Docs
app.py
import openai

# Just change the base_url
client = openai.OpenAI(
    base_url="https://api.nodex-ai.net/v1",
    api_key=NODEX_API_KEY,
)

response = client.chat.completions.create(
    model="gpt-5.3-codex",
    messages=[...],
)