快速入门
概述
Xmarket API 提供以下编程访问:
- 实时订单簿数据
- 订单创建和管理
- 市场信息
- 持仓跟踪
- 交易操作
基础 URL
API 根据端点类型使用两个基础 URL:
-
公共端点(只读,无需认证):
https://engine.xmarket.app/api/v1用于:市场、订单簿数据
-
认证端点(需要 API 密钥):
https://engine.xmarket.app/openapi/v1用于:订单、持仓、交易操作
前提条件
在开始之前,您需要:
- 一个 Xmarket 账户
- 用于认证的 API 密钥
获取您的 API 密钥
步骤 1:注册账户
访问 Xmarket 并创建您的账户(如果您还没有)。
步骤 2:生成 API 密钥
- 导航到您的账户设置页面
- 找到 API 管理部分
- 点击生成新 API 密钥
- 安全存储您的 API 密钥!
危险
重要提示:保护好您的 API 密钥,永远不要公开分享或提交到版本控制。
认证
所有 API 请求需要在 x-api-key 头中使用您的 API 密钥进行认证:
x-api-key: YOUR_API_KEY
发起您的第一个请求
让我们从一个简单的请求开始,获取订单簿数据:
- cURL
- Javascript
- Python
curl -X GET \
'https://engine.xmarket.app/api/v1/orderbook/{outcomeId}' \
-H 'x-api-key: YOUR_API_KEY'
const API_KEY = 'YOUR_API_KEY';
const BASE_URL = 'https://engine.xmarket.app/api/v1';
async function getOrderbook(outcomeId) {
const response = await fetch(
`${BASE_URL}/orderbook/${outcomeId}`,
{
method: 'GET',
headers: {
'x-api-key': API_KEY,
'Content-Type': 'application/json'
}
}
);
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
return await response.json();
}
// 示例用法
getOrderbook('outcome-id')
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
import requests
API_KEY = 'YOUR_API_KEY'
BASE_URL = 'https://engine.xmarket.app/api/v1'
def get_orderbook(outcome_id):
headers = {
'x-api-key': API_KEY,
'Content-Type': 'application/json'
}
response = requests.get(
f'{BASE_URL}/orderbook/{outcome_id}',
headers=headers
)
response.raise_for_status()
return response.json()
# 示例用法
try:
orderbook = get_orderbook('outcome-id')
print(orderbook)
except requests.exceptions.RequestException as e:
print(f'Error: {e}')
错误处理
API 使用标准 HTTP 状态码表示成功或失败:
| 状态码 | 描述 |
|---|---|
| 200 | 成功 |
| 201 | 资源已创建 |
| 400 | 错误请求 - 无效参数 |
| 401 | 未授权 - API 密钥无效或缺失 |
| 404 | 未找到 - 资源不存在 |
| 500 | 内部服务器错误 |
错误响应包含解释错误原因的消息:
{
"message": "Invalid market ID"
}
速率限制
为确保公平使用和系统稳定性,API 实施了速率限制:
- 默认限制:每个 API 密钥每分钟 100 个请求
当您超过速率限制时,您将收到 429 Too Many Requests 响应。
后续步骤
现在您已设置完成,探索我们的详细 API 文档:
支持
如果您遇到任何问题或有疑问:
- 查看我们的常见问题
- 通过平台联系支持