Skip to content

开发指南

欢迎使用 Alaikis 文档中心!本指南将帮助您快速上手,了解如何接入和使用我们的服务。

平台简介

Alaikis 是一个企业级标准数据平台,提供以下核心服务:

  • STD 平台 - 全球标准化数据服务(国家、税务、海关编码、汇率等)
  • BI 商业智能 - 装箱优化、商品追溯、地址解析、文本分类
  • 开发中心 (DevHub) - 小程序管理、域名管理、工作流、授权管理
  • 电商云 (EC-Cloud) - 物流、仓储、寄件等多物流商 API
  • 云 CMS - 企业级内容管理系统

快速开始

第一步:注册账号

访问 Alaikis 开发者平台 注册账号。

第二步:获取 API 密钥

登录后,在开发者控制台创建应用,获取以下凭证:

  • X-API-Key - API 密钥
  • X-API-Secret - API 密钥密文

第三步:调用 API

使用获取的密钥调用 API:

bash
curl -X POST "https://api.alaikis.com/std/biz/bigdata/data/world/cities" \
  -H "X-API-Key: your_api_key" \
  -H "X-API-Secret: your_api_secret" \
  -H "Content-Type: application/json" \
  -d '{"bizContent":{"countryCode": "CN", "page": 1, "size": 10}}'

API 调用说明

请求格式

所有 API 请求使用 POST 方法,请求体为 JSON 格式:

json
{
  "bizContent": {
    // 业务参数
  }
}

响应格式

json
{
  "code": 200,
  "msg": "success",
  "data": {
    // 响应数据
  }
}

错误处理

错误码说明
200成功
400请求参数错误
401认证失败
403权限不足
500服务器内部错误

文档导航

根据您的需求,选择对应的文档入口:

数据服务

智能服务

开发者服务

电商物流

代码示例

Python

python
import requests
import hashlib
import time
import random
import string

def generate_nonce(length=16):
    return ''.join(random.choices(string.ascii_letters + string.digits, k=length))

def generate_signature(secret, params, timestamp, nonce):
    sorted_params = sorted(params.items())
    param_str = '&'.join([f"{k}={v}" for k, v in sorted_params])
    sign_str = f"{param_str}×tamp={timestamp}&nonce={nonce}"
    return hashlib.sha256(sign_str.encode() + secret.encode()).hexdigest()

def call_api(endpoint, api_key, api_secret, biz_content):
    timestamp = str(int(time.time() * 1000))
    nonce = generate_nonce()
    
    headers = {
        "X-API-Key": api_key,
        "X-Timestamp": timestamp,
        "X-Nonce": nonce,
        "Content-Type": "application/json"
    }
    
    params = {"bizContent": json.dumps(biz_content)}
    headers["X-Signature"] = generate_signature(api_secret, params, timestamp, nonce)
    
    response = requests.post(
        f"https://api.alaikis.com{endpoint}",
        json=params,
        headers=headers
    )
    return response.json()

# 调用示例
result = call_api(
    "/std/biz/bigdata/data/world/cities",
    "your_api_key",
    "your_api_secret",
    {"countryCode": "CN", "page": 1, "size": 10}
)
print(result)

JavaScript

javascript
const axios = require('axios');
const crypto = require('crypto');

async function callApi(endpoint, apiKey, apiSecret, bizContent) {
  const timestamp = Date.now().toString();
  const nonce = Math.random().toString(36).substring(2, 18);
  
  const params = { bizContent: JSON.stringify(bizContent) };
  const sortedKeys = Object.keys(params).sort();
  const paramStr = sortedKeys.map(k => `${k}=${params[k]}`).join('&');
  const signStr = `${paramStr}×tamp=${timestamp}&nonce=${nonce}`;
  
  const signature = crypto
    .createHmac('sha256', apiSecret)
    .update(signStr)
    .digest('hex');
  
  const response = await axios.post(
    `https://api.alaikis.com${endpoint}`,
    params,
    {
      headers: {
        'X-API-Key': apiKey,
        'X-Timestamp': timestamp,
        'X-Nonce': nonce,
        'X-Signature': signature,
        'Content-Type': 'application/json'
      }
    }
  );
  
  return response.data;
}

// 调用示例
const result = await callApi(
  '/std/biz/bigdata/data/world/cities',
  'your_api_key',
  'your_api_secret',
  { countryCode: 'CN', page: 1, size: 10 }
);
console.log(result);

常见问题

Q: 如何获取 API 密钥?

A: 登录 Alaikis 开发者控制台,在「应用管理」中创建应用即可获取 API 密钥。

Q: 签名验证失败怎么办?

A: 请检查:

  1. 时间戳是否在服务器时间 ±5 分钟内
  2. nonce 是否每次请求都不同
  3. 签名算法是否正确

Q: 请求频率限制是多少?

A: 免费版 60 次/分钟,基础版 300 次/分钟,企业版 1000 次/分钟。

Q: 支持哪些编程语言?

A: 我们提供 Python、JavaScript、Java、Go、PHP、Rust 等多种 SDK。

技术支持

下一步