把商品数据接入你的业务
从商品、榜单到采集文案。一次认证,使用统一的数据接口。
- 注册淘客易账号
- 完成实名认证
- 在控制台取得 Token
- 用请求头调用 API
第一个请求
curl -H "Authorization: Bearer YOUR_API_TOKEN" https://www.tky.com/openapi/v1/pubs身份认证
在请求头传入 Authorization: Bearer YOUR_API_TOKEN。API Token 与登录凭据独立,请在自己的服务端保存。
在用户控制台查看或重置 Token。重置后旧 Token 失效;未实名或 API 权限停用时无法调用。
调用额度与数据说明
认证与权限通过的业务请求计入额度,包括参数错误;超限请求不扣额度。实际额度以控制台为准。
数据来自本地库,查询缓存最多 30 秒,销量不是实时查询。列表取符合筛选的最新有效商品记录;新增拉取按记录 ID 返回,可能出现同商品的多条记录。
goodsid 是本平台商品记录 ID,itemid 是完整两段的新商品 ID,缺失时为 null。游标接口使用返回的 nextcursor,客户端去重并定期回读重叠范围;它不是完整变更日志。采集仅开放当天、当前可用联盟的文案。当天文案查询接受完整新 ID,也兼容数字 ID;本地没有映射时返回 404,不实时转换。
响应与错误码
成功响应包含 code=0、message、data 和 requestid。错误的业务码与 HTTP 状态一致,data 为 null;排查问题时提供 requestid。
| HTTP / code | 原因 | 如何处理 |
|---|---|---|
| 400 | 参数无效 | 检查类型与取值范围 |
| 401 | Token 无效 | 检查是否已重置或填写错误 |
| 403 | 未实名或权限停用 | 完成认证或联系管理员 |
| 404 | 商品不存在、失效或无本地 ID 映射 | 检查商品状态及传入 ID |
| 429 | 超频或今日额度用完 | 降低频率或等待额度重置 |
| 503 | 服务暂不可用 | 稍后再试 |
商品列表与搜索
https://www.tky.com/openapi/v1/goods请求参数
| 参数 | 位置 / 类型 | 必填 | 说明 |
|---|---|---|---|
keyword | query / string | 否 | 标题关键词,最多60字 |
category | query / integer | 否 | 分类ID |
minprice | query / number | 否 | 最低价 |
maxprice | query / number | 否 | 最高价 |
sort | query / string | 否 | latest、price_asc、price_desc、daily_sales、two_hour_sales |
page | query / integer | 否 | 默认1,范围1–1000 |
size | query / integer | 否 | 默认20,范围1–50 |
调用示例
curl -H "Authorization: Bearer YOUR_API_TOKEN" "https://www.tky.com/openapi/v1/goods?size=20"import requests
response = requests.get(
"https://www.tky.com/openapi/v1/goods?size=20",
headers={"Authorization": "Bearer YOUR_API_TOKEN"},
timeout=15
)
print(response.json())using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
new System.Net.Http.Headers.AuthenticationHeaderValue(
"Bearer", "YOUR_API_TOKEN");
Console.WriteLine(await client.GetStringAsync(
"https://www.tky.com/openapi/v1/goods?size=20"));返回字段 · data
| 字段 | 说明 |
|---|---|
items | 本页记录数组 |
nextcursor | 下一次拉取使用的记录 ID;列表/榜单不使用游标 |
hasmore | 是否还有后续记录 |
items[].goodsid | 本平台商品记录 ID |
items[].itemid | 完整两段新商品 ID(itemnewid);本地缺失时为 null |
items[].title | 商品标题 |
items[].description | 商品文案 |
items[].mainimage / images | 主图 / 图片 URL 数组 |
items[].itemlink | 商品链接 |
items[].categoryid | 商品分类 ID |
items[].originalprice / price | 原价 / 到手价,单位元 |
items[].couponamount / couponlink | 券金额 / 券链接;无券时为 0 / 空字符串 |
items[].validuntil | 商品活动到期时间(北京时间) |
items[].monthsales / dailysales / twohoursales | 本地已有的月销量 / 日销量 / 两小时销量 |
成功响应示例
仅示意结构,商品、文案与日期为示例值。
{
"code": 0,
"message": "成功",
"data": {
"items": [
{
"goodsid": 12345,
"itemid": "Example-AbC123",
"title": "日常好物示例商品",
"description": "示例商品文案",
"mainimage": "https://example.com/product.jpg",
"images": [
"https://example.com/product.jpg"
],
"itemlink": "https://item.taobao.com/item.htm?id=672567619741",
"categoryid": 0,
"originalprice": 59.9,
"price": 39.9,
"couponamount": 20.0,
"couponlink": "https://example.com/coupon",
"validuntil": "2026-12-31 23:59:59",
"monthsales": 1200,
"dailysales": 160,
"twohoursales": 32
}
],
"nextcursor": 0,
"hasmore": false
},
"requestid": "example-request-id"
}商品详情
https://www.tky.com/openapi/v1/goods/{id}请求参数
| 参数 | 位置 / 类型 | 必填 | 说明 |
|---|---|---|---|
id | path / integer | 是 | 平台商品库 goodsid,区别于返回的新商品 itemid |
调用示例
curl -H "Authorization: Bearer YOUR_API_TOKEN" "https://www.tky.com/openapi/v1/goods/12345"import requests
response = requests.get(
"https://www.tky.com/openapi/v1/goods/12345",
headers={"Authorization": "Bearer YOUR_API_TOKEN"},
timeout=15
)
print(response.json())using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
new System.Net.Http.Headers.AuthenticationHeaderValue(
"Bearer", "YOUR_API_TOKEN");
Console.WriteLine(await client.GetStringAsync(
"https://www.tky.com/openapi/v1/goods/12345"));返回字段 · data
| 字段 | 说明 |
|---|---|
goodsid | 本平台商品记录 ID |
itemid | 完整两段新商品 ID(itemnewid);本地缺失时为 null |
title | 商品标题 |
description | 商品文案 |
mainimage / images | 主图 / 图片 URL 数组 |
itemlink | 商品链接 |
categoryid | 商品分类 ID |
originalprice / price | 原价 / 到手价,单位元 |
couponamount / couponlink | 券金额 / 券链接;无券时为 0 / 空字符串 |
validuntil | 商品活动到期时间(北京时间) |
monthsales / dailysales / twohoursales | 本地已有的月销量 / 日销量 / 两小时销量 |
成功响应示例
仅示意结构,商品、文案与日期为示例值。
{
"code": 0,
"message": "成功",
"data": {
"goodsid": 12345,
"itemid": "Example-AbC123",
"title": "日常好物示例商品",
"description": "示例商品文案",
"mainimage": "https://example.com/product.jpg",
"images": [
"https://example.com/product.jpg"
],
"itemlink": "https://item.taobao.com/item.htm?id=672567619741",
"categoryid": 0,
"originalprice": 59.9,
"price": 39.9,
"couponamount": 20.0,
"couponlink": "https://example.com/coupon",
"validuntil": "2026-12-31 23:59:59",
"monthsales": 1200,
"dailysales": 160,
"twohoursales": 32
},
"requestid": "example-request-id"
}商品榜单
https://www.tky.com/openapi/v1/rankings请求参数
| 参数 | 位置 / 类型 | 必填 | 说明 |
|---|---|---|---|
type | query / string | 否 | two_hour(默认)或 daily,本地销量排序 |
size | query / integer | 否 | 默认20,范围1–50 |
调用示例
curl -H "Authorization: Bearer YOUR_API_TOKEN" "https://www.tky.com/openapi/v1/rankings?size=20"import requests
response = requests.get(
"https://www.tky.com/openapi/v1/rankings?size=20",
headers={"Authorization": "Bearer YOUR_API_TOKEN"},
timeout=15
)
print(response.json())using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
new System.Net.Http.Headers.AuthenticationHeaderValue(
"Bearer", "YOUR_API_TOKEN");
Console.WriteLine(await client.GetStringAsync(
"https://www.tky.com/openapi/v1/rankings?size=20"));返回字段 · data
| 字段 | 说明 |
|---|---|
items | 本页记录数组 |
nextcursor | 下一次拉取使用的记录 ID;列表/榜单不使用游标 |
hasmore | 是否还有后续记录 |
items[].goodsid | 本平台商品记录 ID |
items[].itemid | 完整两段新商品 ID(itemnewid);本地缺失时为 null |
items[].title | 商品标题 |
items[].description | 商品文案 |
items[].mainimage / images | 主图 / 图片 URL 数组 |
items[].itemlink | 商品链接 |
items[].categoryid | 商品分类 ID |
items[].originalprice / price | 原价 / 到手价,单位元 |
items[].couponamount / couponlink | 券金额 / 券链接;无券时为 0 / 空字符串 |
items[].validuntil | 商品活动到期时间(北京时间) |
items[].monthsales / dailysales / twohoursales | 本地已有的月销量 / 日销量 / 两小时销量 |
成功响应示例
仅示意结构,商品、文案与日期为示例值。
{
"code": 0,
"message": "成功",
"data": {
"items": [
{
"goodsid": 12345,
"itemid": "Example-AbC123",
"title": "日常好物示例商品",
"description": "示例商品文案",
"mainimage": "https://example.com/product.jpg",
"images": [
"https://example.com/product.jpg"
],
"itemlink": "https://item.taobao.com/item.htm?id=672567619741",
"categoryid": 0,
"originalprice": 59.9,
"price": 39.9,
"couponamount": 20.0,
"couponlink": "https://example.com/coupon",
"validuntil": "2026-12-31 23:59:59",
"monthsales": 1200,
"dailysales": 160,
"twohoursales": 32
}
],
"nextcursor": 0,
"hasmore": false
},
"requestid": "example-request-id"
}新增商品拉取
https://www.tky.com/openapi/v1/goods/new请求参数
| 参数 | 位置 / 类型 | 必填 | 说明 |
|---|---|---|---|
afterid | query / integer | 否 | 默认0,后续使用 nextcursor;新增拉取不是完整变更日志 |
size | query / integer | 否 | 默认20,范围1–50 |
调用示例
curl -H "Authorization: Bearer YOUR_API_TOKEN" "https://www.tky.com/openapi/v1/goods/new?size=20"import requests
response = requests.get(
"https://www.tky.com/openapi/v1/goods/new?size=20",
headers={"Authorization": "Bearer YOUR_API_TOKEN"},
timeout=15
)
print(response.json())using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
new System.Net.Http.Headers.AuthenticationHeaderValue(
"Bearer", "YOUR_API_TOKEN");
Console.WriteLine(await client.GetStringAsync(
"https://www.tky.com/openapi/v1/goods/new?size=20"));返回字段 · data
| 字段 | 说明 |
|---|---|
items | 本页记录数组 |
nextcursor | 下一次拉取使用的记录 ID;列表/榜单不使用游标 |
hasmore | 是否还有后续记录 |
items[].goodsid | 本平台商品记录 ID |
items[].itemid | 完整两段新商品 ID(itemnewid);本地缺失时为 null |
items[].title | 商品标题 |
items[].description | 商品文案 |
items[].mainimage / images | 主图 / 图片 URL 数组 |
items[].itemlink | 商品链接 |
items[].categoryid | 商品分类 ID |
items[].originalprice / price | 原价 / 到手价,单位元 |
items[].couponamount / couponlink | 券金额 / 券链接;无券时为 0 / 空字符串 |
items[].validuntil | 商品活动到期时间(北京时间) |
items[].monthsales / dailysales / twohoursales | 本地已有的月销量 / 日销量 / 两小时销量 |
成功响应示例
仅示意结构,商品、文案与日期为示例值。
{
"code": 0,
"message": "成功",
"data": {
"items": [
{
"goodsid": 12345,
"itemid": "Example-AbC123",
"title": "日常好物示例商品",
"description": "示例商品文案",
"mainimage": "https://example.com/product.jpg",
"images": [
"https://example.com/product.jpg"
],
"itemlink": "https://item.taobao.com/item.htm?id=672567619741",
"categoryid": 0,
"originalprice": 59.9,
"price": 39.9,
"couponamount": 20.0,
"couponlink": "https://example.com/coupon",
"validuntil": "2026-12-31 23:59:59",
"monthsales": 1200,
"dailysales": 160,
"twohoursales": 32
}
],
"nextcursor": 12345,
"hasmore": false
},
"requestid": "example-request-id"
}批量商品状态
https://www.tky.com/openapi/v1/goods/states请求参数
| 参数 | 位置 / 类型 | 必填 | 说明 |
|---|---|---|---|
ids | query / string | 是 | 最多50个商品库ID,以逗号分隔 |
调用示例
curl -H "Authorization: Bearer YOUR_API_TOKEN" "https://www.tky.com/openapi/v1/goods/states?ids=12345,12346"import requests
response = requests.get(
"https://www.tky.com/openapi/v1/goods/states?ids=12345,12346",
headers={"Authorization": "Bearer YOUR_API_TOKEN"},
timeout=15
)
print(response.json())using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
new System.Net.Http.Headers.AuthenticationHeaderValue(
"Bearer", "YOUR_API_TOKEN");
Console.WriteLine(await client.GetStringAsync(
"https://www.tky.com/openapi/v1/goods/states?ids=12345,12346"));返回字段 · data
| 字段 | 说明 |
|---|---|
goodsid | 本平台商品记录 ID |
status | active / inactive / not_found |
goods | 公开商品字段;找不到记录时为 null |
goods.goodsid | 本平台商品记录 ID |
goods.itemid | 完整两段新商品 ID(itemnewid);本地缺失时为 null |
goods.title | 商品标题 |
goods.description | 商品文案 |
goods.mainimage / images | 主图 / 图片 URL 数组 |
goods.itemlink | 商品链接 |
goods.categoryid | 商品分类 ID |
goods.originalprice / price | 原价 / 到手价,单位元 |
goods.couponamount / couponlink | 券金额 / 券链接;无券时为 0 / 空字符串 |
goods.validuntil | 商品活动到期时间(北京时间) |
goods.monthsales / dailysales / twohoursales | 本地已有的月销量 / 日销量 / 两小时销量 |
成功响应示例
仅示意结构,商品、文案与日期为示例值。
{
"code": 0,
"message": "成功",
"data": [
{
"goodsid": 12345,
"status": "active",
"goods": {
"goodsid": 12345,
"itemid": "Example-AbC123",
"title": "日常好物示例商品",
"description": "示例商品文案",
"mainimage": "https://example.com/product.jpg",
"images": [
"https://example.com/product.jpg"
],
"itemlink": "https://item.taobao.com/item.htm?id=672567619741",
"categoryid": 0,
"originalprice": 59.9,
"price": 39.9,
"couponamount": 20.0,
"couponlink": "https://example.com/coupon",
"validuntil": "2026-12-31 23:59:59",
"monthsales": 1200,
"dailysales": 160,
"twohoursales": 32
}
},
{
"goodsid": 12346,
"status": "not_found",
"goods": null
}
],
"requestid": "example-request-id"
}获取采集信息
https://www.tky.com/openapi/v1/messages请求参数
| 参数 | 位置 / 类型 | 必填 | 说明 |
|---|---|---|---|
afterid | query / integer | 否 | 默认0,从当天最早消息按ID正序拉取;后续传 nextcursor,不保证每页混合联盟 |
pubid | query / string | 否 | 获取联盟列表返回的短标识;不支持数字 ID。不填写时,查询所有当前可用采集群。 |
size | query / integer | 否 | 默认20,范围1–50 |
调用示例
curl -H "Authorization: Bearer YOUR_API_TOKEN" "https://www.tky.com/openapi/v1/messages?size=20"import requests
response = requests.get(
"https://www.tky.com/openapi/v1/messages?size=20",
headers={"Authorization": "Bearer YOUR_API_TOKEN"},
timeout=15
)
print(response.json())using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
new System.Net.Http.Headers.AuthenticationHeaderValue(
"Bearer", "YOUR_API_TOKEN");
Console.WriteLine(await client.GetStringAsync(
"https://www.tky.com/openapi/v1/messages?size=20"));返回字段 · data
| 字段 | 说明 |
|---|---|
items | 本页记录数组 |
nextcursor | 下一次拉取使用的记录 ID;列表/榜单不使用游标 |
hasmore | 是否还有后续记录 |
items[].id | 采集消息 ID |
items[].itemid | 完整两段新商品 ID(itemnewid);本地缺失时为 null |
items[].pubid | 联盟公开短标识,八位字符串,不是数据库 ID 或群号 |
items[].pubname | 联盟名称 |
items[].title | 本地商品标题;缺少标题时为空字符串 |
items[].time | 北京时间发布时间 |
items[].content | 公开采集文案 |
items[].couponlink | 消息对应的领券链接;缺少券活动ID或卖家ID时为空字符串,不代表已实时验券 |
成功响应示例
仅示意结构,商品、文案与日期为示例值。
{
"code": 0,
"message": "成功",
"data": {
"items": [
{
"id": 152636426,
"itemid": "Example-AbC123",
"pubid": "p0abc123",
"pubname": "示例联盟",
"time": "2026-10-14 12:00:00",
"content": "示例公开商品文案",
"couponlink": "https://uland.taobao.com/quan/detail?sellerId=123&activityId=example",
"title": "示例商品标题"
}
],
"nextcursor": 152636426,
"hasmore": false
},
"requestid": "example-request-id"
}商品当天文案
https://www.tky.com/openapi/v1/messages/today/{itemId}请求参数
| 参数 | 位置 / 类型 | 必填 | 说明 |
|---|---|---|---|
itemId | path / string | 是 | 完整新商品 ID(兼容原数字 ID),只查询本地映射 |
afterid | query / integer | 否 | 默认0,后续使用 nextcursor;新增拉取不是完整变更日志 |
size | query / integer | 否 | 默认20,范围1–50 |
调用示例
curl -H "Authorization: Bearer YOUR_API_TOKEN" "https://www.tky.com/openapi/v1/messages/today/Example-AbC123?size=20"import requests
response = requests.get(
"https://www.tky.com/openapi/v1/messages/today/Example-AbC123?size=20",
headers={"Authorization": "Bearer YOUR_API_TOKEN"},
timeout=15
)
print(response.json())using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
new System.Net.Http.Headers.AuthenticationHeaderValue(
"Bearer", "YOUR_API_TOKEN");
Console.WriteLine(await client.GetStringAsync(
"https://www.tky.com/openapi/v1/messages/today/Example-AbC123?size=20"));返回字段 · data
| 字段 | 说明 |
|---|---|
items | 本页记录数组 |
nextcursor | 下一次拉取使用的记录 ID;列表/榜单不使用游标 |
hasmore | 是否还有后续记录 |
items[].id | 采集消息 ID |
items[].itemid | 完整两段新商品 ID(itemnewid);本地缺失时为 null |
items[].pubid | 联盟公开短标识,八位字符串,不是数据库 ID 或群号 |
items[].pubname | 联盟名称 |
items[].title | 本地商品标题;缺少标题时为空字符串 |
items[].time | 北京时间发布时间 |
items[].content | 公开采集文案 |
items[].couponlink | 消息对应的领券链接;缺少券活动ID或卖家ID时为空字符串,不代表已实时验券 |
成功响应示例
仅示意结构,商品、文案与日期为示例值。
{
"code": 0,
"message": "成功",
"data": {
"items": [
{
"id": 152636426,
"itemid": "Example-AbC123",
"pubid": "p0abc123",
"pubname": "示例联盟",
"time": "2026-10-14 12:00:00",
"content": "示例公开商品文案",
"couponlink": "https://uland.taobao.com/quan/detail?sellerId=123&activityId=example",
"title": "示例商品标题"
}
],
"nextcursor": 152636426,
"hasmore": false
},
"requestid": "example-request-id"
}获取联盟列表
https://www.tky.com/openapi/v1/pubs请求参数
无请求参数;需要 API Token 请求头。
调用示例
curl -H "Authorization: Bearer YOUR_API_TOKEN" "https://www.tky.com/openapi/v1/pubs"import requests
response = requests.get(
"https://www.tky.com/openapi/v1/pubs",
headers={"Authorization": "Bearer YOUR_API_TOKEN"},
timeout=15
)
print(response.json())using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
new System.Net.Http.Headers.AuthenticationHeaderValue(
"Bearer", "YOUR_API_TOKEN");
Console.WriteLine(await client.GetStringAsync(
"https://www.tky.com/openapi/v1/pubs"));返回字段 · data
| 字段 | 说明 |
|---|---|
pubid | 联盟公开短标识,八位字符串;可用于采集信息筛选,不是数字 ID |
pubname | 联盟名称 |
成功响应示例
仅示意结构,商品、文案与日期为示例值。
{
"code": 0,
"message": "成功",
"data": [
{
"pubid": "p0abc123",
"pubname": "示例联盟"
}
],
"requestid": "example-request-id"
}按商品标识查询详情
https://www.tky.com/openapi/v1/goods/byitem/{itemid}请求参数
| 参数 | 位置 / 类型 | 必填 | 说明 |
|---|---|---|---|
itemid | path / string | 是 | 完整新商品ID,兼容数字商品ID;只查本地映射,无映射或无有效商品返回404 |
调用示例
curl -H "Authorization: Bearer YOUR_API_TOKEN" "https://www.tky.com/openapi/v1/goods/byitem/Example-AbC123"import requests
response = requests.get(
"https://www.tky.com/openapi/v1/goods/byitem/Example-AbC123",
headers={"Authorization": "Bearer YOUR_API_TOKEN"},
timeout=15
)
print(response.json())using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
new System.Net.Http.Headers.AuthenticationHeaderValue(
"Bearer", "YOUR_API_TOKEN");
Console.WriteLine(await client.GetStringAsync(
"https://www.tky.com/openapi/v1/goods/byitem/Example-AbC123"));返回字段 · data
| 字段 | 说明 |
|---|---|
goodsid | 本平台商品记录 ID |
itemid | 完整两段新商品 ID(itemnewid);本地缺失时为 null |
title | 商品标题 |
description | 商品文案 |
mainimage / images | 主图 / 图片 URL 数组 |
itemlink | 商品链接 |
categoryid | 商品分类 ID |
originalprice / price | 原价 / 到手价,单位元 |
couponamount / couponlink | 券金额 / 券链接;无券时为 0 / 空字符串 |
validuntil | 商品活动到期时间(北京时间) |
monthsales / dailysales / twohoursales | 本地已有的月销量 / 日销量 / 两小时销量 |
成功响应示例
仅示意结构,商品、文案与日期为示例值。
{
"code": 0,
"message": "成功",
"data": {
"goodsid": 12345,
"itemid": "Example-AbC123",
"title": "日常好物示例商品",
"description": "示例商品文案",
"mainimage": "https://example.com/product.jpg",
"images": [
"https://example.com/product.jpg"
],
"itemlink": "https://item.taobao.com/item.htm?id=672567619741",
"categoryid": 0,
"originalprice": 59.9,
"price": 39.9,
"couponamount": 20.0,
"couponlink": "https://example.com/coupon",
"validuntil": "2026-12-31 23:59:59",
"monthsales": 1200,
"dailysales": 160,
"twohoursales": 32
},
"requestid": "example-request-id"
}获取最新采集游标
https://www.tky.com/openapi/v1/messages/cursor请求参数
| 参数 | 位置 / 类型 | 必填 | 说明 |
|---|---|---|---|
pubid | query / string | 否 | 获取联盟列表返回的短标识;不支持数字 ID。不填写时,查询所有当前可用采集群的最新位置。 |
初始化时获取一次,将afterid传给获取采集信息接口;之后使用nextcursor继续拉取。不要每轮重新获取最新游标。指定pubid时,两次请求使用同一筛选条件。
调用示例
curl -H "Authorization: Bearer YOUR_API_TOKEN" "https://www.tky.com/openapi/v1/messages/cursor"import requests
response = requests.get(
"https://www.tky.com/openapi/v1/messages/cursor",
headers={"Authorization": "Bearer YOUR_API_TOKEN"},
timeout=15
)
print(response.json())using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
new System.Net.Http.Headers.AuthenticationHeaderValue(
"Bearer", "YOUR_API_TOKEN");
Console.WriteLine(await client.GetStringAsync(
"https://www.tky.com/openapi/v1/messages/cursor"));返回字段 · data
| 字段 | 说明 |
|---|---|
afterid | 当天匹配消息的最新ID,没有记录时为0;初始化后传给/messages,以后使用其nextcursor,不要每轮重新取最新游标 |
date | 本次查询的北京时间日期,yyyy-MM-dd;跨天可继续使用全局递增游标 |
成功响应示例
仅示意结构,商品、文案与日期为示例值。
{
"code": 0,
"message": "成功",
"data": {
"afterid": 152636426,
"date": "2026-10-22"
},
"requestid": "example-request-id"
}查询账号额度与用量
https://www.tky.com/openapi/v1/usage请求参数
无请求参数;需要 API Token 请求头。
本接口也消耗一次额度;额度用完或调用过快时返回429。数据按读取时的北京时间日期返回。
调用示例
curl -H "Authorization: Bearer YOUR_API_TOKEN" "https://www.tky.com/openapi/v1/usage"import requests
response = requests.get(
"https://www.tky.com/openapi/v1/usage",
headers={"Authorization": "Bearer YOUR_API_TOKEN"},
timeout=15
)
print(response.json())using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
new System.Net.Http.Headers.AuthenticationHeaderValue(
"Bearer", "YOUR_API_TOKEN");
Console.WriteLine(await client.GetStringAsync(
"https://www.tky.com/openapi/v1/usage"));返回字段 · data
| 字段 | 说明 |
|---|---|
date | 北京时间日期,yyyy-MM-dd |
used | 当日已用量,包含本次扣量,可能含同期其他请求;跨午夜按读取时日期 |
remaining | 当日剩余额度,最小为0 |
dailylimit | 当前账号每日限额 |
requestspersecond | 当前账号每秒频率配置 |
成功响应示例
仅示意结构,商品、文案与日期为示例值。
{
"code": 0,
"message": "成功",
"data": {
"date": "2026-10-22",
"used": 1201,
"remaining": 198799,
"dailylimit": 200000,
"requestspersecond": 10
},
"requestid": "example-request-id"
}