最后更新: 2024年11月16日

API 参考文档

UnlimitBytes 云平台完整 API 文档。

身份验证

所有 API 请求都需要使用 API 密钥进行身份验证。

API 密钥认证

在请求头中包含您的 API 密钥:

curl -H "Authorization: Bearer YOUR_API_KEY" \
  https://api.unlimitbytes.com/v1/projects

获取 API 密钥

  1. 登录您的控制台
  2. 导航至 设置 > API 密钥
  3. 点击 创建新密钥
  4. 复制并安全存储您的密钥

基础 URL

https://api.unlimitbytes.com/v1

速率限制

  • 免费版: 1,000 次请求/小时
  • 专业版: 10,000 次请求/小时
  • 企业版: 自定义限制

速率限制响应头:

X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 999
X-RateLimit-Reset: 1640995200

项目管理

列出项目

获取账户中的所有项目。

端点: GET /projects

响应:

{
  "projects": [
    {
      "id": "proj_abc123",
      "name": "我的项目",
      "region": "us-east-1",
      "created_at": "2024-01-01T00:00:00Z",
      "status": "active"
    }
  ],
  "total": 1
}

创建项目

创建新项目。

端点: POST /projects

请求:

{
  "name": "我的新项目",
  "region": "us-east-1",
  "plan": "pro"
}

响应:

{
  "id": "proj_abc123",
  "name": "我的新项目",
  "region": "us-east-1",
  "plan": "pro",
  "created_at": "2024-01-01T00:00:00Z"
}

获取项目详情

获取特定项目的详细信息。

端点: GET /projects/:id

响应:

{
  "id": "proj_abc123",
  "name": "我的项目",
  "region": "us-east-1",
  "plan": "pro",
  "resources": {
    "deployments": 5,
    "databases": 2,
    "storage_gb": 50
  },
  "created_at": "2024-01-01T00:00:00Z"
}

应用部署

部署应用

将应用程序部署到项目。

端点: POST /projects/:project_id/deployments

请求:

{
  "name": "my-app",
  "git_url": "https://github.com/username/repo",
  "branch": "main",
  "env_vars": {
    "NODE_ENV": "production"
  }
}

响应:

{
  "id": "dep_xyz789",
  "name": "my-app",
  "status": "building",
  "url": "https://my-app-abc123.unlimitbytes.app",
  "created_at": "2024-01-01T00:00:00Z"
}

列出部署

获取项目的所有部署。

端点: GET /projects/:project_id/deployments

响应:

{
  "deployments": [
    {
      "id": "dep_xyz789",
      "name": "my-app",
      "status": "running",
      "url": "https://my-app-abc123.unlimitbytes.app",
      "created_at": "2024-01-01T00:00:00Z"
    }
  ]
}

数据库服务

创建数据库

创建新的数据库实例。

端点: POST /projects/:project_id/databases

请求:

{
  "name": "my-db",
  "type": "postgresql",
  "version": "15",
  "plan": "starter"
}

响应:

{
  "id": "db_def456",
  "name": "my-db",
  "type": "postgresql",
  "version": "15",
  "connection_string": "postgresql://user:pass@host:5432/dbname",
  "status": "provisioning"
}

对象存储

上传文件

上传文件到云存储。

端点: POST /projects/:project_id/storage/upload

请求: Multipart form data

响应:

{
  "id": "file_ghi789",
  "name": "image.png",
  "url": "https://cdn.unlimitbytes.com/files/abc123/image.png",
  "size": 1024000,
  "uploaded_at": "2024-01-01T00:00:00Z"
}

错误响应

所有错误遵循以下格式:

{
  "error": {
    "code": "invalid_request",
    "message": "项目名称为必填项",
    "details": {
      "field": "name"
    }
  }
}

错误代码

代码状态码说明
invalid_request400无效的请求参数
unauthorized401缺少或无效的 API 密钥
forbidden403权限不足
not_found404资源未找到
rate_limit_exceeded429请求过多
server_error500服务器内部错误

SDK

官方 SDK:

Webhook

配置 Webhook 接收实时通知。

Webhook 载荷示例:

{
  "event": "deployment.succeeded",
  "timestamp": "2024-01-01T00:00:00Z",
  "data": {
    "deployment_id": "dep_xyz789",
    "project_id": "proj_abc123",
    "url": "https://my-app-abc123.unlimitbytes.app"
  }
}

技术支持