您需要让用户搜索交易卡目录,并为特定的评级卡图表价格历史,而无需构建抓取器或维护数据集。在本文结束时,您将能够搜索体育交易卡,并使用Zyla API Hub上的体育卡和交易卡API按等级获取其时间序列价格,然后通过MCP将这些调用插入到您的应用程序或AI编码代理中。
此API为您提供的功能
体育卡和交易卡API提供两项功能:
- 卡片搜索:通过单个搜索字符串(例如,球员、系列、年份)模糊搜索交易卡。API返回匹配卡片的列表,包含元数据和您将在后续调用中使用的card_id。
- 获取卡片价格:检索特定card_id和等级(例如,PSA 10)在给定天数内的最近价格时间序列。
开发人员使用它来驱动库存工具、比较计算器、投资组合仪表板、买卖机器人和市场列表助手。一切都以JSON格式返回,因此您可以直接将其放入后端或客户端应用程序中。
您将完全在Zyla API Hub上工作,该平台集中管理超过10,000个公共API的身份验证和计费。一个帐户,一个API密钥,订阅+配额(不是按调用付费),您帐户中的第一个API可以从7天试用或50个请求开始。请查看API页面以获取当前访问选项和定价。
在Zyla API Hub上开始
打开API页面,订阅并获取您的密钥:
- 转到体育卡和交易卡API列表,点击订阅或在可用时点击开始免费试用:开始7天试用体育卡和交易卡API。
- 从仪表板复制您的API密钥。
- 在每个请求中使用Authorization: Bearer YOUR_API_KEY。
所有请求都发送到zylalabs.com中心URL;请勿直接调用源主机。下面的示例可以直接复制粘贴(将YOUR_API_KEY替换为您的密钥)。
您将使用的端点
1) 卡片搜索
通过单个模糊查询字符串搜索匹配的体育交易卡。您可以将球员、年份、系列和变体等详细信息组合成一个字符串。
- 方法:GET
- URL:https://zylalabs.com/api/2511/sports-card-and-trading-card-api/2494/card-search
- 所需查询参数:
- search(字符串):自由格式搜索文本,例如“Lebron James”。
官方cURL示例:
curl -s -X GET "https://zylalabs.com/api/2511/sports-card-and-trading-card-api/2494/card-search?search=Lebron+James" \
-H "Authorization: Bearer YOUR_API_KEY"
官方示例JSON响应:
[
{
"description": "LeBron James 2003 Topps Basketball",
"player": "Lebron James",
"set": "2003 Topps Basketball",
"number": "221",
"variant": "Base",
"card_id": "1588290260620x609083468203688000",
"image": "//s3.amazonaws.com/appforest_uf/f1588290324330x374737296708651100/2003-Topps-Basketball-LeBron-James-graded.jpg",
"category": "Basketball",
"category_group": "Sports Cards",
"set_type": "Topps Basketball"
},
{
"description": "LeBron James 2003 Upper Deck Rookie Exclusives Basketball",
"player": "Lebron James",
"set": "2003 Upper Deck Rookie Exclusives Basketball",
"number": "1",
"variant": "Base",
"card_id": "1593982609906x272877681796710400",
"image": "//s3.amazonaws.com/appforest_uf/f1593982606419x316822824595257800/2003-Upper-Deck-Rookie-Exclusives-Lebron-James-1.jpg",
"category": "Basketball",
"category_group": "Sports Cards",
"set_type": "Upper Deck Rookie Exclusives Basketball"
},
{
"description": "LeBron James 2025 Topps Chrome Cactus Jack Basketball",
"player": "LeBron James",
"set": "2025 Topps Chrome Cactus Jack Basketball",
"number": "46",
"variant": "Base",
"card_id": "1782184797693x851477815192830800",
"image": "//s3.amazonaws.com/appforest_uf/f1598843985116x489100344198574160/05-Basketball.jpg",
"category": "Basketball",
"category_group": "Sports Cards",
"set_type": "Topps Chrome Cactus Jack Basketball"
},
{
"description": "LeBron James 2003 Topps Chrome Basketball",
"player": "Lebron James",
"set": "2003 Topps Chrome Basketball",
"number": "111",
"variant": "Base",
"card_id": "1586412050491x786559417729941500",
"image": "//942284f33c575895b4be9de571ca6e40.cdn.bubble.io/d112/f1766768512710x492230808547762700/resize",
"category": "Basketball",
"category_group": "Sports Cards",
"set_type": "Topps Chrome Basketball"
},
{
"description": "LeBron James 2024 Panini Prizm Basketball",
"player": "LeBron James",
"set": "2024 Panini Prizm Basketball",
"number": "130",
"variant": "Base",
"card_id": "1740403688997x505339465151470000",
"image": "//942284f33c575895b4be9de571ca6e40.cdn.bubble.io/d112/f1757384268822x692013733346557700/resize",…
您将实际使用的字段:
- description:您可以在搜索结果中显示的人类可读标签。
- player、set、number、variant:用于过滤和显示的元数据。
- card_id:主要标识符;将其传递给获取卡片价格。
- image:您可以渲染的图像路径(如果需要,在客户端前面加上https:)。
- category、category_group、set_type:用于分类的有用信息。
2) 获取卡片价格
返回特定卡片和等级在若干天内的最近价格(时间序列)。使用卡片搜索中的card_id。
- 方法:GET
- URL:https://zylalabs.com/api/2511/sports-card-and-trading-card-api/2495/get-card-prices
- 所需查询参数:
- card_id(字符串):来自卡片搜索的卡片标识符。
- days(字符串):要包含的前几天的数量(例如,“90”)。
- grade(字符串):评级标签(例如,“PSA 10”)。
官方cURL示例:
官方示例JSON响应:
[
{
"closing_date": "2026-08-03T23:59:00.000Z",
"Grade": "PSA 10",
"card_id": "1586412050491x786559417729941500",
"price": "16150.00"
},
{
"closing_date": "2026-08-01T23:59:00.000Z",
"Grade": "PSA 10",
"card_id": "1586412050491x786559417729941500",
"price": "18250.00"
},
{
"closing_date": "2026-07-31T23:59:00.000Z",
"Grade": "PSA 10",
"card_id": "1586412050491x786559417729941500",
"price": "17900.00"
},
{
"closing_date": "2026-07-27T23:59:00.000Z",
"Grade": "PSA 10",
"card_id": "1586412050491x786559417729941500",
"price": "17303.00"
},
{
"closing_date": "2026-07-21T23:59:00.000Z",
"Grade": "PSA 10",
"card_id": "1586412050491x786559417729941500",
"price": "17373.00"
},
{
"closing_date": "2026-07-17T23:59:00.000Z",
"Grade": "PSA 10",
"card_id": "1586412050491x786559417729941500",
"price": "15337.20"
},
{
"closing_date": "2026-07-15T23:59:00.000Z",
"Grade": "PSA 10",
"card_id": "1586412050491x786559417729941500",…
您将实际使用的字段:
- closing_date:UTC中的ISO 8601时间戳(“Z”后缀)。将其用作图表的x轴。
- Grade:与您的查询相呼应的等级字符串(例如,“PSA 10”)。
- card_id:标识该系列所属的卡片。
- price:价格作为字符串。在您的语言中转换为十进制/数字,以避免在求和或平均时出现浮点漂移。
端到端工作流程
- 使用单个查询字符串调用卡片搜索,例如“Lebron James 2003 Topps Chrome 111”。
- 检查结果并根据球员、系列、编号和变体选择正确的行。
- 获取其card_id。
- 使用该card_id、您的天数窗口和如“PSA 10”的等级调用获取卡片价格。
- 使用closing_date作为x轴,price作为y轴渲染图表;或计算移动平均值、最小/最大值或波动性以进行排名。
复制粘贴示例
cURL:卡片搜索(官方)
这是准备粘贴到终端中的。将YOUR_API_KEY替换为您的密钥。
Python:卡片搜索并选择card_id
下面的代码片段查询卡片搜索,过滤Topps Chrome篮球,并打印您将传递给获取卡片价格的card_id。它还显示了如何安全地前缀图像URL。
import os
import requests
API_KEY = os.getenv("ZYLALABS_API_KEY", "YOUR_API_KEY")
BASE_URL = "https://zylalabs.com/api/2511/sports-card-and-trading-card-api/2494/card-search"
params = {"search": "Lebron James"}
headers = {"Authorization": f"Bearer {API_KEY}"}
resp = requests.get(BASE_URL, params=params, headers=headers, timeout=30)
resp.raise_for_status()
results = resp.json()
# 选择2003 Topps Chrome篮球基础卡(如果存在):
target = None
for item in results:
if item.get("set") == "2003 Topps Chrome Basketball" and item.get("variant") == "Base":
target = item
break
if not target and results:
target = results[0] # 回退:第一个结果
if not target:
raise SystemExit("卡片搜索没有结果")
card_id = target["card_id"]
image_url = target.get("image")
if image_url and image_url.startswith("//"):
image_url = "https:" + image_url
print("描述:", target.get("description"))
print("球员:", target.get("player"))
print("系列:", target.get("set"))
print("编号:", target.get("number"))
print("变体:", target.get("variant"))
print("card_id:", card_id)
print("图像URL:", image_url)
接下来,从输出中获取card_id,并调用获取卡片价格端点(通过cURL或您自己的代码)以检索所选等级的时间序列。
节省时间的实现注意事项
- 授权:始终发送Authorization: Bearer YOUR_API_KEY。
- 时间戳:closing_date使用UTC(Z后缀)。在边缘转换一次,并保持所有内容在UTC中,以便进行一致的聚合。
- 价格:价格是字符串。在强类型代码中,解析为Decimal/BigNumber以保留分。
- 图像:图像路径可能是协议相对的(以//开头)。在前端前缀添加https:以避免混合内容问题。
- 过滤:卡片搜索可以返回多个接近的匹配项。让用户在点击获取卡片价格之前选择系列+编号+变体。
- 缓存:缓存热门查询的卡片搜索响应(例如,“Lebron James”),因为元数据的变化频率低于价格。
- 窗口:days控制您获取的回溯范围。保持与您的图表时间框架(例如,30/90/180)对齐,以避免过度获取。
您本周可以发布的实际体育用例
- 收藏家库存:让用户搜索卡片,将card_id存储在您的数据库中,并在其收藏视图中显示当前30-90天的价格趋势。
- 比较估算器:在列表页面,按球员+系列+编号搜索,获取“PSA 10”的最近90天价格,并显示最近的平均比较。
- 交易警报:夜间作业访问获取卡片价格,监控的card_id并通过电子邮件发送价格下降与7天或30天移动平均值的比较。
- 展示页面:对于明星球员,预取卡片搜索结果,并将每个链接到按等级划分的价格图表。
通过MCP从AI代理调用
如果您使用MCP兼容客户端自动化工作流程,可以通过Zyla的MCP服务器路由调用。使用MCP端点和您的API密钥配置MCP客户端,然后让代理发出与上述相同的HTTPS GET请求,针对Zyla中心URL。请参阅MCP参考文档:MCP。
流程是相同的:调用卡片搜索以获取card_id,然后使用card_id、days和grade调用获取卡片价格。使用cURL示例中的确切URL和头部;您的MCP客户端处理传输和会话。
错误处理和边缘情况
- 空搜索结果:如果卡片搜索返回空数组,请提示用户扩大查询或从搜索字符串中删除系列/变体限定符。
- 多个近似重复项:优先选择系列和编号的精确匹配,以消除变体和重印的歧义。
- 未找到等级:如果获取卡片价格返回空数组,尝试不同的等级(例如,“PSA 9”)或放宽天数窗口。
- 限流和配额:访问是订阅+配额,而不是按调用付费。使用本地缓存并去抖动您的自动建议UI,以最小化调用。有关当前访问选项,请查看API页面。
参考:确切的端点和参数
卡片搜索
- 方法:GET
- URL:https://zylalabs.com/api/2511/sports-card-and-trading-card-api/2494/card-search
- 所需参数:
- search:字符串(示例:Lebron James)
获取卡片价格
- 方法:GET
- URL:https://zylalabs.com/api/2511/sports-card-and-trading-card-api/2495/get-card-prices
- 所需参数:
- card_id:字符串(来自卡片搜索)
- days:字符串(示例:90)
- grade:字符串(示例:PSA 10)
发货前的QA检查清单
- 搜索用户体验:显示描述、系列、编号、变体和图像。让用户选择单个卡片以减少不匹配。
- 数据类型:将价格解析为十进制,而不是浮点数。将时间戳视为UTC。
- 等级:提供一个小的常见等级下拉列表(例如,“PSA 10”、“PSA 9”),以便用户不会输入错误的等级而导致零结果。
- 弹性:处理空数组和意外字段,而不会崩溃您的作业或用户界面。
- 缓存:为卡片搜索结果缓存短TTL(例如,小时),并为价格系列缓存更短的TTL,如果您频繁刷新图表。
常见问题解答
我如何获取card_id?
使用卡片搜索端点和单个搜索字符串(例如,“Lebron James 2003 Topps Chrome 111”)。响应中包括每个结果的card_id。选择正确的一个(系列+编号+变体)并将其传递给获取卡片价格。
closing_date是什么时区?
UTC。“Z”后缀表示UTC。如果您想显示当地时间,请在您的用户界面中进行转换;保持存储和分析为UTC以确保一致性。
为什么价格是字符串?
解析为十进制可以避免在计算平均值或求和时出现浮点精度问题。在您选择的语言中将字符串转换为Decimal/BigNumber。
有没有免费计划?
没有免费计划。访问是订阅+配额。您帐户中的第一个API可以从7天试用或50个请求开始。请查看API页面以获取当前访问选项和定价。
我可以从AI IDE/代理调用这些端点吗?
可以。使用Zyla的MCP服务器和您的API密钥配置MCP兼容客户端,然后发出与cURL示例中显示的相同的GET请求。有关详细信息,请参阅MCP页面。
准备将其连接到您的应用程序吗?在列表页面上订阅并获取您的密钥:开始7天试用体育卡和交易卡API。然后复制上面的cURL,替换为您的密钥,您就可以开始使用了。
官方API响应
[
{
"description": "LeBron James 2003 Topps Basketball",
"player": "Lebron James",
"set": "2003 Topps Basketball",
"number": "221",
"variant": "Base",
"card_id": "1588290260620x609083468203688000",
"image": "//s3.amazonaws.com/appforest_uf/f1588290324330x374737296708651100/2003-Topps-Basketball-LeBron-James-graded.jpg",
"category": "Basketball",
"category_group": "Sports Cards",
"set_type": "Topps Basketball"
},
{
"description": "LeBron James 2003 Upper Deck Rookie Exclusives Basketball",
"player": "Lebron James",
"set": "2003 Upper Deck Rookie Exclusives Basketball",
"number": "1",
"variant": "Base",
"card_id": "1593982609906x272877681796710400",
"image": "//s3.amazonaws.com/appforest_uf/f1593982606419x316822824595257800/2003-Upper-Deck-Rookie-Exclusives-Lebron-James-1.jpg",
"category": "Basketball",
"category_group": "Sports Cards",
"set_type": "Upper Deck Rookie Exclusives Basketball"
},
{
"description": "LeBron James 2025 Topps Chrome Cactus Jack Basketball",
"player": "LeBron James",
"set": "2025 Topps Chrome Cactus Jack Basketball",
"number": "46",
"variant": "Base",
"card_id": "1782184797693x851477815192830800",
"image": "//s3.amazonaws.com/appforest_uf/f1598843985116x489100344198574160/05-Basketball.jpg",
"category": "Basketball",
"category_group": "Sports Cards",
"set_type": "Topps Chrome Cactus Jack Basketball"
},
{
"description": "LeBron James 2003 Topps Chrome Basketball",
"player": "Lebron James",
"set": "2003 Topps Chrome Basketball",
"number": "111",
"variant": "Base",
"card_id": "1586412050491x786559417729941500",
"image": "//942284f33c575895b4be9de571ca6e40.cdn.bubble.io/d112/f1766768512710x492230808547762700/resize",
"category": "Basketball",
"category_group": "Sports Cards",
"set_type": "Topps Chrome Basketball"
},
{
"description": "LeBron James 2024 Panini Prizm Basketball",
"player": "LeBron James",
"set": "2024 Panini Prizm Basketball",
"number": "130",
"variant": "Base",
"card_id": "1740403688997x505339465151470000",
"image": "//942284f33c575895b4be9de571ca6e40.cdn.bubble.io/d112/f1757384268822x692013733346557700/resize",…
官方API响应
[
{
"description": "LeBron James 2003 Topps Basketball",
"player": "Lebron James",
"set": "2003 Topps Basketball",
"number": "221",
"variant": "Base",
"card_id": "1588290260620x609083468203688000",
"image": "//s3.amazonaws.com/appforest_uf/f1588290324330x374737296708651100/2003-Topps-Basketball-LeBron-James-graded.jpg",
"category": "Basketball",
"category_group": "Sports Cards",
"set_type": "Topps Basketball"
},
{
"description": "LeBron James 2003 Upper Deck Rookie Exclusives Basketball",
"player": "Lebron James",
"set": "2003 Upper Deck Rookie Exclusives Basketball",
"number": "1",
"variant": "Base",
"card_id": "1593982609906x272877681796710400",
"image": "//s3.amazonaws.com/appforest_uf/f1593982606419x316822824595257800/2003-Upper-Deck-Rookie-Exclusives-Lebron-James-1.jpg",
"category": "Basketball",
"category_group": "Sports Cards",
"set_type": "Upper Deck Rookie Exclusives Basketball"
},
{
"description": "LeBron James 2025 Topps Chrome Cactus Jack Basketball",
"player": "LeBron James",
"set": "2025 Topps Chrome Cactus Jack Basketball",
"number": "46",
"variant": "Base",
"card_id": "1782184797693x851477815192830800",
"image": "//s3.amazonaws.com/appforest_uf/f1598843985116x489100344198574160/05-Basketball.jpg",
"category": "Basketball",
"category_group": "Sports Cards",
"set_type": "Topps Chrome Cactus Jack Basketball"
},
{
"description": "LeBron James 2003 Topps Chrome Basketball",
"player": "Lebron James",
"set": "2003 Topps Chrome Basketball",
"number": "111",
"variant": "Base",
"card_id": "1586412050491x786559417729941500",
"image": "//942284f33c575895b4be9de571ca6e40.cdn.bubble.io/d112/f1766768512710x492230808547762700/resize",
"category": "Basketball",
"category_group": "Sports Cards",
"set_type": "Topps Chrome Basketball"
},
{
"description": "LeBron James 2024 Panini Prizm Basketball",
"player": "LeBron James",
"set": "2024 Panini Prizm Basketball",
"number": "130",
"variant": "Base",
"card_id": "1740403688997x505339465151470000",
"image": "//942284f33c575895b4be9de571ca6e40.cdn.bubble.io/d112/f1757384268822x692013733346557700/resize",…