Elimapi Docs

系统身份验证

Elim Taobao & 1688 API 系统支持两种主要的身份验证方式,以根据您的需求访问 API 资源:

  1. 访问令牌 (JWT): 适用于具有用户界面、需要定期登录的应用。
  2. API 密钥 (API Key): 适用于自动化系统集成(服务器对服务器),无需管理登录会话。

1. 通过访问令牌 (JWT) 进行验证

此方法要求您执行登录以获取短期访问令牌 (JWT)。

登录以获取令牌

查看 API 详情:登录

向以下端点发送 POST 请求:

POST /v1/auth/login
Content-Type: application/json
Accept: application/json

如何使用访问令牌

成功登录后,您将收到一个 access_token。随后的所有 API 请求都需要在请求头中包含此令牌:

Authorization: Bearer {access_token}
Accept: application/json
Content-Type: application/json

重要说明:

  • 令牌有效期为 30 天
  • 建议将令牌存储在系统缓存中(如 Redis/Memcached)以获得最佳性能。
  • 不要与第三方共享令牌。

2. 通过 API 密钥进行验证

API 密钥是一种身份验证方法,允许您通过应用程序或源代码自动访问系统,而无需管理 JWT 代码。

什么是 API 密钥?

API 密钥是与您的账户关联的唯一标识符字符串。您在每个 HTTP 请求的 x-api-key 请求头中附加此密钥。

[!IMPORTANT] 安全至关重要: API 密钥具有与您账户等效的访问权限。切勿在公共平台(GitHub、论坛)或向不受信任的第三方公开此密钥。

管理 API 密钥

  1. 新建: 在控制面板中设置一个助记名称(例如:Production Server)并点击 Generate。系统 仅显示一次 完整的密钥。
  2. 列表: 您可以查看活动密钥列表、其创建日期和最后使用时间。
  3. 吊销 (Revoke): 如果发现密钥泄露,请立即执行 Revoke 以取消其访问权限。

如何使用 API 密钥

在发送的每个请求的 HTTP 请求头中添加 x-api-key 字段。

cURL 示例:

curl -X GET "https://openapi.elim.asia/v1/products/search" \
     -H "x-api-key: your_api_key_here" \
     -H "Content-Type: application/json"

3. 配额与限制 (Quotas & Limits)

所有身份验证方法均遵循用户账户的资源配额:

  • 订阅 (Subscription): 如果套餐(免费版、专业版、企业版)过期,API 请求将被拒绝。
  • 使用配额 (Usage Quota): 每个成功的请求都将从您套餐的月度总配额中扣除。
  • 积分 (Credits): 如果套餐配额用完,系统将自动从您的积分余额中扣除(如果有)。
  • 频率限制 (Rate Limit): 应用 API 调用频率限制以确保系统稳定性。

4. 常见错误代码

错误代码含义解决方法
401 Unauthorized令牌或 API 密钥缺失、错误或已过期。检查 Authorizationx-api-key 请求头。
403 Forbidden账户已锁定或权限不足。在控制面板中检查账户状态。
429 Too Many Requests超出频率限制 (Rate Limit)。降低调用频率或升级套餐。
402 Payment Required配额已用完且无剩余积分。升级您的套餐或增加购买请求配额。

5. 代码示例 (使用 API 密钥)

JavaScript (Axios)

const axios = require('axios');

const client = axios.create({
  baseURL: 'https://openapi.elim.asia/v1',
  headers: {
    'x-api-key': 'YOUR_API_KEY_HERE',
    'Content-Type': 'application/json',
  },
});

async function searchProduct(keyword) {
  try {
    const response = await client.get('/products/search', { params: { q: keyword } });
    console.log(response.data);
  } catch (error) {
    console.error('错误:', error.response.status);
  }
}

Python (Requests)

import requests

API_URL = "https://openapi.elim.asia/v1/products/search"
HEADERS = {
    "x-api-key": "YOUR_API_KEY_HERE",
    "Content-Type": "application/json"
}

def search_product(keyword):
    response = requests.get(API_URL, headers=HEADERS, params={"q": keyword})
    if response.status_code == 200:
        return response.json()
    return None

本文档归 Elim Taobao & 1688 API 系统所有。如有任何疑问,请联系 Telegram