Sen descrición

feitianbubu 2a77453e1a feat: all video preview use videos/:id/content hai 3 meses
.github f47d473e63 fix: release workflow show version hai 3 meses
bin d84b0b0f5d chore: add model parameter to the time_test script (#245) %!s(int64=2) %!d(string=hai) anos
common 2f80e3fba1 Merge pull request #2261 from wzxjohn/hotfix/analytic hai 3 meses
constant 0952973887 feat: Add CountToken configuration and update token counting logic hai 3 meses
controller 2a77453e1a feat: all video preview use videos/:id/content hai 3 meses
docs 87811a0493 feat: 关联 discord 账号 hai 3 meses
dto d859872e0d feat: gemini-3-pro-image-preview add extra param hai 3 meses
electron c1a696e6f0 chore(deps-dev): bump js-yaml from 4.1.0 to 4.1.1 in /electron hai 3 meses
logger a9a8676f7c fix: logger hai 4 meses
middleware 50e8639a40 feat: add environment variable switch for critical rate limit hai 4 meses
model 5f27edcd19 fix: IsDiscordIdAlreadyTaken 应该检查软删除记录 hai 3 meses
relay b47cf4efb3 Merge pull request #2321 from feitianbubu/pr/gemini-image-edit hai 3 meses
router 2a77453e1a feat: all video preview use videos/:id/content hai 3 meses
service 0952973887 feat: Add CountToken configuration and update token counting logic hai 3 meses
setting bff04514a8 feat: support gemini-3-pro-image-preview via images/generations hai 3 meses
types df2ee649ab feat: claude 1h cache (#2155) hai 4 meses
web 2a77453e1a feat: all video preview use videos/:id/content hai 3 meses
.dockerignore fe9b305232 fix: legal setting hai 4 meses
.env.example efb8f1f5b8 fix: Update GET_MEDIA_TOKEN_NOT_STREAM default value to false hai 3 meses
.gitignore 7598753f4e Merge pull request #2238 from seefs001/feature/doubao-coding-plan hai 3 meses
Dockerfile 2b70095b47 feat: implement audio duration retrieval without ffmpeg dependencies hai 4 meses
LICENSE 4d8189f21b ⚖️ docs(LICENSE): update license information from Apache 2.0 to New API Licensing hai 7 meses
README.en.md 87811a0493 feat: 关联 discord 账号 hai 3 meses
README.fr.md d56e162c99 同步多语言README文档 hai 3 meses
README.ja.md d56e162c99 同步多语言README文档 hai 3 meses
README.md 87811a0493 feat: 关联 discord 账号 hai 3 meses
VERSION 7e80e2da3a fix: add a blank VERSION file (#135) %!s(int64=2) %!d(string=hai) anos
docker-compose.yml 67c321c4fb feat: add Umami and Google Analytics integration hai 4 meses
go.mod 0b37bdddc6 chore(deps): bump golang.org/x/crypto from 0.42.0 to 0.45.0 hai 3 meses
go.sum 0b37bdddc6 chore(deps): bump golang.org/x/crypto from 0.42.0 to 0.45.0 hai 3 meses
main.go 67c321c4fb feat: add Umami and Google Analytics integration hai 4 meses
makefile 27bbd951f0 feat: use bun when develop locally hai 9 meses
new-api.service e1c7a4f41f format: package name -> github.com/QuantumNous/new-api (#2017) hai 4 meses

README.en.md

![new-api](/web/public/logo.png) # New API 🍥 **Next-Generation Large Model Gateway and AI Asset Management System**

中文 | English | Français | 日本語

license release docker docker GoReportCard

Quick StartKey FeaturesDeploymentDocumentationHelp

📝 Project Description

[!NOTE]
This is an open-source project developed based on One API

[!IMPORTANT]


🤝 Trusted Partners

No particular order

Cherry Studio 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

Using Docker Compose (Recommended)

# 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!

📖 For more deployment methods, please refer to Deployment Guide


📚 Documentation

### 📖 [Official Documentation](https://docs.newapi.pro/) | [![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/QuantumNous/new-api)

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 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

💰 Payment and Billing

  • ✅ Online recharge (EPay, Stripe)
  • ✅ Pay-per-use model pricing
  • ✅ Cache billing support (OpenAI, Azure, DeepSeek, Claude, Qwen and all supported models)
  • ✅ Flexible billing policy configuration

🔐 Authorization and Security

  • 😈 Discord authorization login
  • 🤖 LinuxDO authorization login
  • 📱 Telegram authorization login
  • 🔑 OIDC unified authentication

🚀 Advanced Features

API Format Support:

Intelligent Routing:

  • ⚖️ Channel weighted random
  • 🔄 Automatic retry on failure
  • 🚦 User-level model rate limiting

Format Conversion:

  • 🔄 OpenAI ⇄ Claude Messages
  • 🔄 OpenAI ⇄ Gemini Chat
  • 🔄 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


🤖 Model Support

For details, please refer to API Documentation - Relay Interface

Model Type Description Documentation
🤖 OpenAI GPTs gpt-4-gizmo-* series -
🎨 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 Supports complete call address -

📡 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

⚙️ Environment Variable Configuration

Common environment variable configuration
Variable Name Description Default Value
SESSION_SECRET Session secret (required for multi-machine deployment) -
CRYPTO_SECRET Encryption secret (required for Redis) -
SQL_DSN Database connection string -
REDIS_CONN_STRING Redis connection string -
STREAMING_TIMEOUT Streaming timeout (seconds) 300
AZURE_DEFAULT_API_VERSION Azure API version 2025-04-01-preview
ERROR_LOG_ENABLED Error log switch false

📖 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]

  • Must set SESSION_SECRET - Otherwise login status inconsistent
  • Shared Redis must set CRYPTO_SECRET - Otherwise data cannot be decrypted

🔄 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

🔗 Related Projects

Upstream Projects

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

Supporting Tools

Project Description
neko-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

🌟 Star History

[![Star History Chart](https://api.star-history.com/svg?repos=Calcium-Ion/new-api&type=Date)](https://star-history.com/#Calcium-Ion/new-api&Date)

### 💖 Thank you for using New API If this project is helpful to you, welcome to give us a ⭐️ Star! **[Official Documentation](https://docs.newapi.pro/)** • **[Issue Feedback](https://github.com/Calcium-Ion/new-api/issues)** • **[Latest Release](https://github.com/Calcium-Ion/new-api/releases)** Built with ❤️ by QuantumNous