API 文档
完整的API参考和使用说明
快速开始
认证方式
所有API请求都需要在请求头中包含您的API密钥:
Authorization: Bearer YOUR_API_KEY基础URL
https://api.aoxsi.com响应格式
所有API响应都采用统一的JSON格式:
{
"success": true,
"data": {
// 响应数据
}
}文本翻译
POST将文本从一种语言翻译为另一种语言
端点
POST /api/ai/translate请求参数
| 参数 | 类型 | 必需 | 说明 |
|---|---|---|---|
text | string | 是 | 要翻译的文本 |
sourceLang | string | 是 | 源语言代码 |
targetLang | string | 是 | 目标语言代码 |
请求示例
curl -X POST https://api.aoxsi.com/api/ai/translate \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": "Hello, world!",
"sourceLang": "english",
"targetLang": "chinese"
}'响应示例
{
"success": true,
"data": {
"translatedText": "你好,世界!",
"model": "translation-model-v1"
}
}文本向量化
POST将文本转换为向量表示,用于语义搜索和相似度计算
端点
POST /api/ai/embeddings请求参数
| 参数 | 类型 | 必需 | 说明 |
|---|---|---|---|
text | string | string[] | 是 | 要向量化的文本或文本数组 |
请求示例
curl -X POST https://api.aoxsi.com/api/ai/embeddings \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": "This is a test sentence"
}'响应示例
{
"success": true,
"data": {
"embeddings": [[0.1, 0.2, 0.3, ...]],
"model": "embedding-model-v1",
"shape": [1, 768]
}
}语音转文字
POST将音频文件转换为文本
端点
POST /api/ai/whisper请求参数
使用 multipart/form-data 格式上传音频文件
| 参数 | 类型 | 必需 | 说明 |
|---|---|---|---|
audio | file | 是 | 音频文件(支持mp3, wav, m4a等格式) |
请求示例
curl -X POST https://api.aoxsi.com/api/ai/whisper \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "audio=@/path/to/audio.mp3"响应示例
{
"success": true,
"data": {
"text": "这是转写的文本内容",
"model": "whisper-model-v1"
}
}错误处理
当请求失败时,API会返回错误响应:
{
"success": false,
"error": {
"code": "E1004",
"message": "API Key 无效"
}
}常见错误码
| 错误码 | 说明 | HTTP状态码 |
|---|---|---|
E1001 | 余额不足 | 400 |
E1002 | 未授权访问 | 401 |
E1004 | API Key 无效 | 401 |
E1006 | 请求参数验证失败 | 400 |
E5001 | 上游服务暂时不可用 | 503 |
E5002 | 服务器内部错误 | 500 |
速率限制
为确保服务质量,我们对API请求实施速率限制:
- 免费计划:每分钟10次请求
- 基础计划:每分钟60次请求
- 专业计划:每分钟300次请求
- 企业计划:自定义限制
响应头中会包含速率限制信息:
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 59
X-RateLimit-Reset: 1640995200SDK和代码示例
Python
import requests
api_key = "YOUR_API_KEY"
url = "https://api.aoxsi.com/api/ai/translate"
headers = {
"Authorization": f"Bearer {api_key}",
"Content-Type": "application/json"
}
data = {
"text": "Hello, world!",
"sourceLang": "english",
"targetLang": "chinese"
}
response = requests.post(url, json=data, headers=headers)
print(response.json())JavaScript
const apiKey = "YOUR_API_KEY";
const url = "https://api.aoxsi.com/api/ai/translate";
const response = await fetch(url, {
method: "POST",
headers: {
"Authorization": `Bearer ${apiKey}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
text: "Hello, world!",
sourceLang: "english",
targetLang: "chinese"
})
});
const data = await response.json();
console.log(data);