Back to rankings

QuantumNous/new-api

TypeScriptnewapi.ai

A unified AI model hub for aggregation & distribution. It supports cross-converting various LLMs into OpenAI-compatible, Claude-compatible, or Gemini-compatible formats. A centralized gateway for personal and enterprise model management. ๐Ÿฅ

claudegeminiopenairerankai-gatewaydeepseeknewapi
Star Growth
Stars
43k
Forks
10k
Weekly Growth
โ€”
Issues
625
20k40k
Nov 2023Sep 2024Aug 2025Jul 2026
Artifactsnpmnpm install new-api
README

new-api

New API

๐Ÿฅ Next-Generation LLM Gateway and AI Asset Management System

็ฎ€ไฝ“ไธญๆ–‡ | ็น้ซ”ไธญๆ–‡ | English | Franรงais | ๆ—ฅๆœฌ่ชž

license release docker GoReportCard

QuantumNous%2Fnew-api | Trendshift
Featured๏ฝœHelloGitHub New API - All-in-one AI asset management gateway. | Product Hunt

Quick Start โ€ข Key Features โ€ข Deployment โ€ข Documentation โ€ข Help

๐Ÿ“ Project Description

[!IMPORTANT]

  • This project is intended solely for lawful and authorized AI API gateway, organization-level authentication, multi-model management, usage analytics, cost accounting, and private deployment scenarios.
  • Users must lawfully obtain upstream API keys, accounts, model services, and interface permissions, and must comply with upstream terms of service and applicable laws and regulations.
  • Users should ensure their use complies with upstream terms of service and applicable laws and regulations.
  • When providing generative AI services to the public, users should comply with applicable regulatory requirements and fulfill all filing, licensing, content safety, real-name verification, log retention, tax, and upstream authorization obligations required by their jurisdiction.

๐Ÿค Trusted Partners

No particular order

Cherry Studio Aion UI Peking University UCloud Alibaba Cloud IO.NET


๐Ÿ™ Special Thanks

JetBrains Logo

Thanks to JetBrains for providing free open-source development license for this project


๐Ÿš€ Quick Start

# Clone the project
git clone https://github.com/QuantumNous/new-api.git
cd new-api

# Edit docker-compose.yml configuration
nano docker-compose.yml

# Start the service
docker-compose up -d
Using Docker Commands
# Pull the latest image
docker pull calciumion/new-api:latest

# Using SQLite (default)
docker run --name new-api -d --restart always \
  -p 3000:3000 \
  -e TZ=Asia/Shanghai \
  -v ./data:/data \
  calciumion/new-api:latest

# Using MySQL
docker run --name new-api -d --restart always \
  -p 3000:3000 \
  -e SQL_DSN="root:123456@tcp(localhost:3306)/oneapi" \
  -e TZ=Asia/Shanghai \
  -v ./data:/data \
  calciumion/new-api:latest

๐Ÿ’ก Tip: -v ./data:/data will save data in the data folder of the current directory, you can also change it to an absolute path like -v /your/custom/path:/data


๐ŸŽ‰ After deployment is complete, visit http://localhost:3000 to start using!

[!WARNING] When operating this project as a public generative AI service or API resale service, users should first complete all required filing, licensing, content safety, real-name verification, log retention, tax, payment, and upstream authorization obligations.

๐Ÿ“– For more deployment methods, please refer to Deployment Guide


๐Ÿ“š Documentation

Quick Navigation:

Category Link
๐Ÿš€ Deployment Guide Installation Documentation
โš™๏ธ Environment Configuration Environment Variables
๐Ÿ“ก API Documentation API Documentation
โ“ FAQ FAQ
๐Ÿ’ฌ Community Interaction Communication Channels

โœจ Key Features

For detailed features, please refer to Features Introduction

๐ŸŽจ Core Functions

Feature Description
๐ŸŽจ New UI Modern user interface design
๐ŸŒ Multi-language Supports Simplified Chinese, Traditional Chinese, English, French, Japanese
๐Ÿ”„ Data Compatibility Fully compatible with the original One API database
๐Ÿ“ˆ Data Dashboard Visual console and statistical analysis
๐Ÿ”’ Permission Management Token grouping, model restrictions, user management

๐Ÿ’ฐ Authorized Usage Accounting and Billing

  • โœ… Internal top-up and quota allocation for lawful authorized scenarios (EPay, Stripe)
  • โœ… Organization-level per-request, usage-based, and cache-hit cost accounting
  • โœ… Cache billing statistics for OpenAI, Azure, DeepSeek, Claude, Qwen, and supported models
  • โœ… Flexible billing policies for internal management or authorized enterprise customers

๐Ÿ” Authorization and Security

  • ๐Ÿ˜ˆ Discord authorization login
  • ๐Ÿค– LinuxDO authorization login
  • ๐Ÿ“ฑ Telegram authorization login
  • ๐Ÿ”‘ OIDC unified authentication
  • ๐Ÿ” Key quota query usage (with new-api-key-tool)

๐Ÿš€ Advanced Features

API Format Support:

Intelligent Routing:

  • โš–๏ธ Channel weighted random
  • ๐Ÿ”„ Automatic retry on failure
  • ๐Ÿšฆ User-level model rate limiting

Format Conversion:

  • ๐Ÿ”„ OpenAI Compatible โ‡„ Claude Messages
  • ๐Ÿ”„ OpenAI Compatible โ†’ Google Gemini
  • ๐Ÿ”„ Google Gemini โ†’ OpenAI Compatible - Text only, function calling not supported yet
  • ๐Ÿšง OpenAI Compatible โ‡„ OpenAI Responses - In development
  • ๐Ÿ”„ Thinking-to-content functionality

Reasoning Effort Support:

View detailed configuration

OpenAI series models:

  • o3-mini-high - High reasoning effort
  • o3-mini-medium - Medium reasoning effort
  • o3-mini-low - Low reasoning effort
  • gpt-5-high - High reasoning effort
  • gpt-5-medium - Medium reasoning effort
  • gpt-5-low - Low reasoning effort

Claude thinking models:

  • claude-3-7-sonnet-20250219-thinking - Enable thinking mode

Google Gemini series models:

  • gemini-2.5-flash-thinking - Enable thinking mode
  • gemini-2.5-flash-nothinking - Disable thinking mode
  • gemini-2.5-pro-thinking - Enable thinking mode
  • gemini-2.5-pro-thinking-128 - Enable thinking mode with thinking budget of 128 tokens
  • You can also append -low, -medium, or -high to any Gemini model name to request the corresponding reasoning effort (no extra thinking-budget suffix needed).

๐Ÿค– Model Support

For details, please refer to API Documentation - Gateway Interface

Model Type Description Documentation
๐Ÿค– OpenAI-Compatible OpenAI compatible models Documentation
๐Ÿค– OpenAI Responses OpenAI Responses format Documentation
๐ŸŽจ Midjourney-Proxy Midjourney-Proxy(Plus) Documentation
๐ŸŽต Suno-API Suno API Documentation
๐Ÿ”„ Rerank Cohere, Jina Documentation
๐Ÿ’ฌ Claude Messages format Documentation
๐ŸŒ Gemini Google Gemini format Documentation
๐Ÿ”ง Dify ChatFlow mode -
๐ŸŽฏ Custom upstream Supports configuring legally authorized upstream endpoints -

๐Ÿ“ก Supported Interfaces

View complete interface list

๐Ÿšข Deployment

[!TIP] Latest Docker image: calciumion/new-api:latest

๐Ÿ“‹ Deployment Requirements

Component Requirement
Local database SQLite (Docker must mount /data directory)
Remote database MySQL โ‰ฅ 5.7.8 or PostgreSQL โ‰ฅ 9.6
Container engine Docker / Docker Compose
System architecture 64-bit only (amd64 / arm64); 32-bit systems are not supported

โš™๏ธ Environment Variable Configuration

Common environment variable configuration
Variable Name Description Default Value
SESSION_SECRET Authentication signing secret; must be identical on every node -
SESSION_COOKIE_SECURE false/unset disables the refresh/logout OriginGuard for local HTTP dev proxies; true enables the Secure cookie and strict Origin checks false
SESSION_COOKIE_TRUSTED_URL Required with Secure mode: comma-separated exact HTTPS Origins allowed to call refresh/logout; not a relay CORS allowlist -
TRUSTED_PROXIES Unset/blank trusts loopback, RFC 1918 and IPv6 ULA with a startup warning; none trusts no proxies; an explicit proxy IP/CIDR list replaces the defaults 127.0.0.0/8, ::1, 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, fc00::/7
USER_SESSION_ACTIVE_LIMIT Maximum active login Sessions per user 50
USER_SESSION_ISSUANCE_LIMIT Maximum Sessions created per user within the issuance window, including revoked Sessions 100
USER_SESSION_ISSUANCE_WINDOW_SECONDS Per-user Session issuance window; clamped to the revoked retention period when configured higher 86400
USER_SESSION_REVOKED_RETENTION_DAYS Days to retain revoked Session rows for audit and issuance accounting 7
USER_SESSION_HOURLY_ALERT_THRESHOLD Global Sessions created per hour that triggers an alert only; it never blocks login 5000
CRYPTO_SECRET HMAC secret for cache keys; nodes sharing Redis must use the same effective value Defaults to SESSION_SECRET
SQL_DSN Database connection string -
REDIS_CONN_STRING Redis connection string -
RELAY_IDLE_CONN_TIMEOUT Idle keep-alive timeout for relay HTTP clients, seconds. Defaults to Go standard library behavior; set 0 to disable 90
STREAMING_TIMEOUT Streaming timeout (seconds) 300
STREAM_SCANNER_MAX_BUFFER_MB Max per-line buffer (MB) for the stream scanner; increase when upstream sends huge image/base64 payloads 64
MAX_REQUEST_BODY_MB Max request body size (MB, counted after decompression; prevents huge requests/zip bombs from exhausting memory). Exceeding it returns 413 32
AZURE_DEFAULT_API_VERSION Azure API version 2025-04-01-preview
ERROR_LOG_ENABLED Error log switch false
PYROSCOPE_URL Pyroscope server address -
PYROSCOPE_APP_NAME Pyroscope application name new-api
PYROSCOPE_BASIC_AUTH_USER Pyroscope basic auth user -
PYROSCOPE_BASIC_AUTH_PASSWORD Pyroscope basic auth password -
PYROSCOPE_MUTEX_RATE Pyroscope mutex sampling rate 5
PYROSCOPE_BLOCK_RATE Pyroscope block sampling rate 5
HOSTNAME Hostname tag for Pyroscope new-api

๐Ÿ“– Complete configuration: Environment Variables Documentation

๐Ÿ”ง Deployment Methods

Method 1: Docker Compose (Recommended)
# Clone the project
git clone https://github.com/QuantumNous/new-api.git
cd new-api

# Edit configuration
nano docker-compose.yml

# Start service
docker-compose up -d
Method 2: Docker Commands

Using SQLite:

docker run --name new-api -d --restart always \
  -p 3000:3000 \
  -e TZ=Asia/Shanghai \
  -v ./data:/data \
  calciumion/new-api:latest

Using MySQL:

docker run --name new-api -d --restart always \
  -p 3000:3000 \
  -e SQL_DSN="root:123456@tcp(localhost:3306)/oneapi" \
  -e TZ=Asia/Shanghai \
  -v ./data:/data \
  calciumion/new-api:latest

๐Ÿ’ก Path explanation:

  • ./data:/data - Relative path, data saved in the data folder of the current directory
  • You can also use absolute path, e.g.: /your/custom/path:/data
Method 3: BaoTa Panel
  1. Install BaoTa Panel (โ‰ฅ 9.2.0 version)
  2. Search for New-API in the application store
  3. One-click installation

๐Ÿ“– Tutorial with images

โš ๏ธ Multi-machine Deployment Considerations

[!WARNING]

  • All nodes must use the same primary database and the same SESSION_SECRET; otherwise Access Tokens, refresh sessions, and temporary authentication flows cannot be verified consistently.
  • Nodes connected to the same Redis must also use the same CRYPTO_SECRET, or their cache-key digests will differ and shared entries cannot be reused consistently.

The database is authoritative for login Sessions and for the per-user active/issuance limits. Redis Session entries are short-lived caches whose TTL follows SYNC_FREQUENCY (60 seconds by default) and never exceeds the Session's remaining lifetime.

Redis topology Session propagation Rate limiting
Shared Redis Revocations and version publications normally propagate immediately Redis limits are shared across nodes
Independent Redis per node Nodes converge from the database within the effective SYNC_FREQUENCY; a newly rotated token may receive a temporary 401 on a node with stale cache Each node has its own allowance, so aggregate capacity can reach roughly the configured limit multiplied by the node count
No Redis Every Session validation reads the database In-memory limits are independent per node

A shorter SYNC_FREQUENCY reduces the independent-Redis staleness window but causes one additional primary-key Session lookup per active SID, per node, per TTL. These guarantees make Session authentication bounded-stale across the supported topologies; rate limits and other Redis-backed control-plane caches remain topology-dependent.

See User authentication and login sessions for the token, Origin-check and PAT contracts.

๐Ÿ”„ Channel Retry and Cache

Retry configuration: Settings โ†’ Operation Settings โ†’ General Settings โ†’ Failure Retry Count

Cache configuration:

  • REDIS_CONN_STRING: Redis cache (recommended)
  • MEMORY_CACHE_ENABLED: Memory cache

Upstream Projects

Project Description
One API Original project base
Midjourney-Proxy Midjourney interface support

Supporting Tools

Project Description
new-api-key-tool Key quota query tool
new-api-horizon New API high-performance optimized version

๐Ÿ’ฌ Help Support

๐Ÿ“– Documentation Resources

Resource Link
๐Ÿ“˜ FAQ FAQ
๐Ÿ’ฌ Community Interaction Communication Channels
๐Ÿ› Issue Feedback Issue Feedback
๐Ÿ“š Complete Documentation Official Documentation

๐Ÿค Contribution Guide

Welcome all forms of contribution!

  • ๐Ÿ› Report Bugs
  • ๐Ÿ’ก Propose New Features
  • ๐Ÿ“ Improve Documentation
  • ๐Ÿ”ง Submit Code

๐Ÿ“œ License

This project is licensed under the GNU Affero General Public License v3.0 (AGPLv3).

Additional terms under AGPLv3 Section 7 apply. Modified versions must preserve the author attribution notice Frontend design and development by New API contributors. in the appropriate legal notices and in any prominent about, legal, footer, or attribution location presented by the user interface.

Modified versions that present a user interface must also preserve a visible link to the original project: https://github.com/QuantumNous/new-api.

This is an open-source project developed based on One API (MIT License).

If your organization's policies do not permit the use of AGPLv3-licensed software, or if you wish to avoid the open-source obligations of AGPLv3, please contact us at: support@quantumnous.com


๐ŸŒŸ Star History

Star History Chart


๐Ÿ’– Thank you for using New API

If this project is helpful to you, welcome to give us a โญ๏ธ Star๏ผ

Official Documentation โ€ข Issue Feedback โ€ข Latest Release

Built with โค๏ธ by QuantumNous

Related repositories
affaan-m/ECC

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

JavaScriptnpmMIT Licenseai-agentsanthropic
ecc.tools
231.9k35.4k
NousResearch/hermes-agent

The agent that grows with you

PythonPyPIMIT Licenseaiai-agent
hermes-agent.nousresearch.com
218.5k41.3k
Significant-Gravitas/AutoGPT

AutoGPT is the vision of accessible AI for everyone, to use and to build on. Our mission is to provide the tools, so that you can focus on what matters.

PythonPyPIOtheraiopenai
agpt.co
185.6k46.1k
f/prompts.chat

f.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the community. Free and open source โ€” self-host for your organization with complete privacy.

HTMLOtherchatgptai
prompts.chat
166.2k21.5k
langgenius/dify

Build Agentic workflows, RAG pipelines, with rich AI model and tool support on one collaborative workspace. Deploy on cloud, VPC, or self-hosted, so teams move from prototype to production without rebuilding the stack.

TypeScriptnpmOtheraigpt
dify.ai
149.7k23.6k
nextlevelbuilder/ui-ux-pro-max-skill

An AI SKILL that provide design intelligence for building professional UI/UX multiple platforms

PythonPyPIMIT Licenseai-skillsantigravity
uupm.cc
108.6k11.6k
JuliusBrussee/caveman

๐Ÿชจ why use many token when few token do trick โ€” Claude Code skill that cuts 65% of tokens by talking like caveman

JavaScriptnpmMIT Licenseaianthropic
caveman.so
91.8k5.2k
ChatGPTNextWeb/NextChat

โœจ Light and Fast AI Assistant. Support: Web | iOS | MacOS | Android | Linux | Windows

TypeScriptnpmMIT Licensechatgptnextjs
nextchat.club
88.5k59.4k
thedotmack/claude-mem

Persistent Context Across Sessions for Every Agent โ€“ Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More

JavaScriptnpmApache License 2.0aiai-agents
claude-mem.ai
88.2k7.7k
DietrichGebert/ponytail

Makes your AI agent think like the laziest senior dev in the room. The best code is the code you never wrote.

JavaScriptnpmMIT Licenseagent-skillsai-agents
ponytail.dev
87.4k4.8k
ruvnet/RuView

ฯ€ RuView turns commodity WiFi signals into real-time spatial intelligence, vital sign monitoring, and presence detection โ€” all without a single pixel of video.

Rustcrates.ioMIT Licensedenseposewifi
cognitum.one/RuView
82.8k11.1k
lobehub/lobehub

๐Ÿคฏ LobeHub is your Chief Agent Operator, organizing your agents into 7ร—24 operations by hiring, scheduling, and reporting on your entire AI team.

TypeScriptnpmOtherchatgptopenai
lobehub.com
80.6k15.7k