您需要交付一个集成,返回准确的加油站数据:按邮政编码的当前价格和详细的站点元数据(地址、坐标、营业时间、设施)。在本指南结束时,您将能够查询邮政编码的价格,并使用Zyla API Hub上的加油价格定位器API检索站点级详细信息。
此API的功能及使用时机
加油价格定位器API返回:
- 给定邮政编码和燃料类型的油价,包括区域平均价、最低价以及附近加油站的当前价格列表。
- 按ID提供的站点级数据,包括地址、坐标、开放状态、营业时间、评级、接受的燃料类型和设施。
开发人员将其用于路线查找应用、成本估算器、车队仪表板和消费者应用中的燃料价格比较。数据包括货币(美元)和适用的定价单位。
在Zyla API Hub上开始
打开API页面并订阅以获取API密钥。Zyla API Hub使用订阅+配额模型(不是按调用付费)。对于新用户,预计在您的第一个API上有7天的试用或50个请求。没有免费计划。请查看API页面以获取当前访问选项和定价。一个账户和一个API密钥解锁您在市场上订阅的任何API。
在Zyla API Hub上探索超过10,000个公共API,涵盖金融、人工智能、数据丰富、地理定位、电子商务和公用事业——每个账户使用一个API密钥。
您今天可以调用的端点
1) 获取价格
方法: GET
URL: https://zylalabs.com/api/4808/gas-price-locator-api/5997/get-prices
描述: 返回指定邮政编码或最接近该区域的加油站价格。
所需查询参数:
- zip(数字):例如,90001
- type(字符串):例如,常规
授权头:Authorization: Bearer YOUR_API_KEY
cURL
curl -s -X GET "https://zylalabs.com/api/4808/gas-price-locator-api/5997/get-prices?zip=90001&type=regular" \
-H "Authorization: Bearer YOUR_API_KEY"
真实示例响应
{
"status": "success",
"zip": "77478",
"gas_type": "regular",
"currency": "USD",
"gas_prices": [
{
"average": "$2.60",
"lowest": "$2.07"
},
{
"station": "Shell",
"address": "2995 Dulles Ave Missouri City, TX",
"price": "$2.33"
},
{
"station": "Sam's Club",
"address": "351 SH-6 Sugar Land, TX",
"price": "$2.33"
},
{
"station": "Murphy Express",
"address": "7520 Highway 90 A. Sugar Land, TX",
"price": "$2.36"
},
{
"station": "WB Food Mart",
"address": "13003 W Bellfort Ave Sugar Land, TX",
"price": "$2.38"
},
{
"station": "Shell",
"address": "1750 Williams Trace Blvd Sugar Land, TX",
"price": "$2.39"
},
{
"station": "Valero & Circle K",
"address": "13445 W Airport Blvd Sugar Land, TX",
"price": "$2.59"
},
{
"station": "Chevron",
"address": "13811 SW Fwy Sugar Land, TX",
"price": "$2.69"
},
{
"station": "Texaco",
"address": "7800 US-90 A Sugar Land, TX",
"price": "$2.69"
},
{
"station": "Exxon",
"address": "1740 Dulles Ave Sugar Land, TX",
"price": "$2.79"
},
{
"station": "Shell",
"address": "13747 SW Fwy Sugar Land, TX",
"price": "$2.79"
}
]
}
从此有效负载中读取内容:
- status:请求处理的成功/失败指示器。
- zip和gas_type:回显您的请求;用于日志记录和缓存键。
- currency:美元。
- gas_prices[0].average和gas_prices[0].lowest:价格显示的区域级汇总。
- gas_prices中的后续条目:站点名称、地址和价格字符串,用于列表UI。
2) 站点数据
方法: GET
URL: https://zylalabs.com/api/4808/gas-price-locator-api/23308/station-data
描述: 按ID返回站点级详细信息。您可以从获取价格端点获取站点ID。
注意:该端点需要指定站点ID。API页面记录请求格式。请勿添加超出支持的参数。
授权头:Authorization: Bearer YOUR_API_KEY
cURL
真实示例响应
从此有效负载中读取内容:
- data.address和data.coordinates:为您的地图图钉和逐步深度链接提供动力。
- open_status和opening_hours:在UI中显示实时可用性。
- rating.overall和rating.count:用于列表排序的社会证明。
- currency:美元;price_unit:每加仑美元;fuels:站点支持的燃料类型。
- amenities:推动决策(例如,“在泵上支付”、“ATM”)。
- nearby_station_ids:创建“您可能还考虑”的卡片或替代路线。
完整的Python示例(获取价格)
此脚本查询邮政编码的价格,并提取平均值、最低值以及可以提供给UI或存储在缓存中的标准化站点列表。它使用上述确切的端点和参数。
import os
import requests
API_KEY = os.getenv("ZYLALABS_API_KEY", "YOUR_API_KEY")
url = "https://zylalabs.com/api/4808/gas-price-locator-api/5997/get-prices"
params = {
"zip": "90001",
"type": "regular"
}
headers = {
"Authorization": f"Bearer {API_KEY}"
}
resp = requests.get(url, headers=headers, params=params, timeout=15)
resp.raise_for_status()
data = resp.json()
if data.get("status") != "success":
raise SystemExit(f"API error: {data}")
currency = data.get("currency")
series = data.get("gas_prices", [])
avg = None
low = None
stations = []
if series:
meta = series[0]
avg = meta.get("average")
low = meta.get("lowest")
for entry in series[1:]:
stations.append({
"station": entry.get("station"),
"address": entry.get("address"),
"price": entry.get("price"),
"currency": currency
})
print("Average:", avg, "| Lowest:", low)
for s in stations[:5]:
print(f"{s['station']} - {s['address']} - {s['price']} {s['currency']}")
节省时间的设计说明
- 身份验证:在每个请求中添加Authorization: Bearer YOUR_API_KEY。
- 货币和单位:价格以美元计;站点级响应包括price_unit = 每加仑美元。
- 缓存:按(邮政编码,类型)为获取价格键入缓存。缓存失效取决于您的产品需求;如果您频繁显示价格,请从短TTL开始。
- 站点ID:使用获取价格发现候选站点,然后使用站点数据获取丰富的详细信息。
- 分页:在这些端点上未记录;处理响应中的可变长度数组。
- 错误处理:检查“status”字段;在映射显示时防止缺失或空数组。
实际用例
- 燃料价格比较小部件:按用户邮政编码查询获取价格,并按价格对站点进行排序以获得紧凑列表。
- 路线规划器:在途经邮政编码附近使用获取价格;使用站点数据丰富顶部结果以获取设施和营业时间。
- 车队成本仪表板:每日跟踪每个区域的平均和最低数据以进行成本分析。
- 商店定位器:从站点数据坐标渲染地图图钉,并显示设施过滤器(例如,“在泵上支付”)。
通过MCP从AI代理调用API
您还可以从兼容MCP的客户端调用相同的HTTPS端点。配置您的代理工具以向上述Hub URL发出经过身份验证的GET请求,传递Authorization: Bearer YOUR_API_KEY。Zyla MCP端点在这里记录:MCP。像Claude Code、Cursor和Windsurf这样的工具可以通过这种机制调用加油价格定位器API,同时将您的密钥保存在一个安全的地方。
工作流示例
邮政编码到站点详细信息丰富
- 调用获取价格,参数为zip=90001&type=regular。
- 显示平均值和最低值以设置价格预期。
- 按价格列出站点,并允许用户选择一个。
- 通过ID获取站点数据,以显示导航的营业时间、设施和坐标。
结账流程中的成本意识横幅
- 在订单确认时,调用获取价格以估算燃料成本。
- 使用货币和平均字段显示“您附近的平均燃料价格”。
- 使用站点数据坐标和开放状态提供到最近加油站的方向。
操作指南
- 密钥管理:将YOUR_API_KEY存储在秘密管理器中,并通过环境变量注入。
- 超时:设置合理的HTTP客户端超时(例如,10-15秒),并在瞬态网络错误时重试。
- 日志记录:记录邮政编码、类型和状态以进行可观察性;不要记录API密钥。
- 前端消费:如果需要数字排序,请规范价格字符串;保留货币以供显示。
在Zyla API Hub上浏览其他类别和API,所有API均在订阅+配额模型下提供,每个账户使用一个API密钥。
常见问题
我如何验证请求?
在每个请求中添加头部Authorization: Bearer YOUR_API_KEY。
获取价格需要哪些参数?
在GET请求中提供zip(例如,90001)和type(例如,常规)作为查询参数。
我如何获取站点数据的站点ID?
使用获取价格端点发现邮政编码中的站点;可以从那里获取站点ID并与站点数据一起使用。
返回的货币和单位是什么?
响应指定货币为美元。站点数据包括price_unit设置为每加仑美元。
是否有免费计划?
没有免费计划。第一个API通常提供7天的试用或50个请求。请查看API页面以获取当前访问选项和定价。
准备好实施了吗?在列表页面上订阅以获取您的密钥:开始7天的加油价格定位器API试用。一旦您拥有密钥,复制上面的curl,尽快交付您的第一个集成,并根据需要从邮政编码级价格扩展到完整的站点详细信息。