实时公交到站

bus-realtimePOST

输入官方城市和官方站名,实时查询该站各公交线路的到站信息:车牌、预计到站时间、剩余站数、票价、终点方向。同一接口用 type 切换:query=到站(默认)、cities=覆盖城市列表、stations=按关键词搜官方站名、line=静态线路详情(全程站点、首末班、票价)。高德「五一广场(地铁站)」不要直接查到站,先搜官方站名。覆盖全国数百城市,支持双向查询(direction)。完全免费。

POSThttps://v1.apizero.cn/api/bus-realtime

平台约定

  • 网关 · https://v1.apizero.cn
  • 鉴权 · Authorization: Bearer <API Key>
  • 回包 · JSON {code, msg, data}。成功看 code === 0,不要只看 HTTP 200。
/aidocs/bus-realtime/raw.md
打开 Markdown

鉴权

登录用户每日 1000 次免费(QPS 3),匿名用户每日 500 次(QPS 2)。可选携带 API Key(Authorization: Bearer <key>)享更高额度。查到站必须用官方城市名和官方站名:先 type=cities,再 type=stations。查线路全程用 type=line 加官方线路名。

获取 API Key:/account/keys

请求头

Header类型必填说明
Authorizationstring推荐:Bearer <API Key>。兼容请求头 X-API-Key,以及 Query api_key / apikey / key(key 仅当值为 sk_live_/sk_test_/sk_stag_ 形态时生效)。匿名可不传,受每日免费额度限制。
Content-Typestring请求体格式

到站查询

POSTAPPLICATION/JSON·APPLICATION/JSON

用官方城市名和官方站名查这一侧站台的线路与车辆。高德「五一广场(地铁站)」不要直接传,先走「官方站名搜索」。

https://v1.apizero.cn/api/bus-realtime?type=query&city=%E9%95%BF%E6%B2%99&station=%E4%BA%94%E4%B8%80%E5%B9%BF%E5%9C%BA&direction=1

参数类型必填说明示例
typestring不传或 query=到站query
citystring官方城市名;先用 type=cities长沙
stationstring官方站名;先用 type=stations五一广场
directionint1=默认,2=反方向1
{
  "type": "query",
  "city": "长沙",
  "station": "五一广场",
  "direction": "1"
}

响应字段

字段类型说明
citystring查询城市
stationstring规范化站名
directionnumber方向 1/2
line_countnumber线路数量
linesarray线路与车辆
updated_atstring生成时间
tipsstring品牌提示(所有接口统一返回):极数本源 · https://apizero.cn
{
  "code": 0,
  "msg": "成功",
  "data": {
    "city": "长沙",
    "station": "五一广场",
    "direction": 1,
    "line_count": 1,
    "lines": [
      {
        "line": "401路",
        "price": "2",
        "terminal": "汽车西站",
        "bus_count": 1,
        "buses": [
          {
            "bus_id": "湘A02882D",
            "status": "5站",
            "stops_remaining": 5,
            "travel_minutes": 6
          }
        ]
      }
    ],
    "updated_at": "2026-08-26 17:00:00"
  },
  "tips": "极数本源 · https://apizero.cn"
}

城市列表

POSTAPPLICATION/JSON·APPLICATION/JSON

返回覆盖城市的官方名称。查到站必须用这里的 name,不要传「湖南省长沙」。

https://v1.apizero.cn/api/bus-realtime?type=cities

参数类型必填说明示例
typestring固定 citiescities
{
  "type": "cities"
}

响应字段

字段类型说明
countnumber城市数
citiesarrayname / pinyin
tipsstring品牌提示(所有接口统一返回):极数本源 · https://apizero.cn
{
  "code": 0,
  "msg": "成功",
  "data": {
    "count": 2,
    "cities": [
      {
        "name": "长沙",
        "pinyin": "ChangSha"
      },
      {
        "name": "北京",
        "pinyin": "BeiJing"
      }
    ]
  },
  "tips": "极数本源 · https://apizero.cn"
}

官方站名搜索

POSTAPPLICATION/JSON·APPLICATION/JSON

按关键词搜官方站名。同名可能有公交站和地铁站:queryable=true 才能查到站。车来了地铁站叫「五一广场」,没有「(地铁站)」后缀。

https://v1.apizero.cn/api/bus-realtime?type=stations&city=%E9%95%BF%E6%B2%99&station=%E4%BA%94%E4%B8%80

参数类型必填说明示例
typestring固定 stationsstations
citystring官方城市名长沙
stationstring关键词,不是高德全名五一
{
  "type": "stations",
  "city": "长沙",
  "station": "五一"
}

响应字段

字段类型说明
citystring城市
keywordstring搜索词
countnumber条数
stationsarrayname / kind / queryable / lat / lng
tipsstring品牌提示(所有接口统一返回):极数本源 · https://apizero.cn
{
  "code": 0,
  "msg": "成功",
  "data": {
    "city": "长沙",
    "keyword": "五一",
    "count": 2,
    "stations": [
      {
        "name": "五一广场",
        "kind": "bus",
        "queryable": true,
        "lat": 28.198746,
        "lng": 112.968806
      },
      {
        "name": "五一广场",
        "kind": "subway",
        "queryable": false,
        "lat": 28.198153,
        "lng": 112.97085
      }
    ]
  },
  "tips": "极数本源 · https://apizero.cn"
}

静态线路详情

POSTAPPLICATION/JSON·APPLICATION/JSON

按官方线路名查单向全程站点、首末班和票价。401 和 401路都可以。direction=2 查对向。地铁线路通常没有全程站点,请改用官方站名搜索再查到站。

https://v1.apizero.cn/api/bus-realtime?type=line&city=%E9%95%BF%E6%B2%99&line=401&direction=1

参数类型必填说明示例
typestring固定 lineline
citystring官方城市名长沙
linestring官方线路名,如 401 / 401路(也认 station)401
directionint1=默认,2=反方向1
{
  "type": "line",
  "city": "长沙",
  "line": "401",
  "direction": "1"
}

响应字段

字段类型说明
citystring城市
keywordstring查询词
linestring规范化线路名
directionnumber方向 1/2
startstring起点站
endstring终点站
pricestring票价
first_timestring首班
last_timestring末班
stop_countnumber站点数
stopsarrayorder / name / lat / lng
has_reverseboolean是否有对向,有则可再打 direction=2
updated_atstring生成时间
tipsstring品牌提示(所有接口统一返回):极数本源 · https://apizero.cn
{
  "code": 0,
  "msg": "成功",
  "data": {
    "city": "长沙",
    "keyword": "401",
    "line": "401路",
    "direction": 1,
    "start": "福元路大桥西",
    "end": "长沙火车站(北坪)",
    "price": "2元",
    "first_time": "05:50",
    "last_time": "21:30",
    "stop_count": 25,
    "stops": [
      {
        "order": 1,
        "name": "福元路大桥西",
        "lat": 28.255976,
        "lng": 112.956336
      },
      {
        "order": 2,
        "name": "滨江景观道佑母塘路口",
        "lat": 28.252096,
        "lng": 112.956806
      },
      {
        "order": 25,
        "name": "长沙火车站(北坪)",
        "lat": 28.197776,
        "lng": 113.006326
      }
    ],
    "has_reverse": true,
    "updated_at": "2026-08-28 18:50:00"
  },
  "tips": "极数本源 · https://apizero.cn"
}

请求示例

将 YOUR_API_KEY 替换为真实 Key 后运行。

# 1. 密钥:登录 https://apizero.cn/account/keys 申请,写入环境变量 APIZERO_KEY
#    请求头 Authorization: Bearer <key>
import json
import os
import urllib.request

key = os.environ["APIZERO_KEY"]

# 2. 请求地址
url = "https://v1.apizero.cn/api/bus-realtime"

# 3. 发请求
payload = {
    "type": "query",
    "city": "长沙",
    "station": "五一广场",
    "line": "401",
    "direction": "1",
}
req = urllib.request.Request(
    url,
    data=json.dumps(payload, ensure_ascii=False).encode("utf-8"),
    headers={
        "Authorization": "Bearer " + key,
        "Content-Type": "application/json",
    },
    method="POST",
)
with urllib.request.urlopen(req, timeout=15) as resp:
    body = json.loads(resp.read().decode("utf-8"))

# 4. 打印整包。
#   第 5 步的字段按本接口 data 里实际键改。
print(json.dumps(body, ensure_ascii=False, indent=2))

# 5. code == 0 后再取字段
if body.get("code") == 0:
    data = body.get("data") or {}
    print(data)

在线调试

填写参数后运行,将真实调用接口;计入免费额度。

RequestPOST
POST https://v1.apizero.cn/api/bus-realtime

认证方式

参数(5)

>_

待运行

填写参数后点击「运行调试」查看响应

错误码

先看业务 code。HTTP 也可能不是 200。

业务码HTTP说明
0200成功
4000400参数错误
4011401API Key 无效
4013403API Key 已暂停
4014403当前 IP 不在 Key 白名单
4015401此接口需要 API Key
4022402余额不足
4029429调用过快(QPS)
4030429今日免费额度已用完
4040503接口已下线
4041404接口不存在
5000500服务器内部错误
5020502上游暂时不可用
5021502上游返回格式异常
5030502暂无可用节点

额度与计费

计费模式完全免费
QPS 限制10 req/s
登录免费额度1000 次(已认证)
匿名每日额度500 次(无 API Key)
黄金会员每日 50000 次 · QPS 20
企业会员每日 1000000 次 · QPS 120

购买套餐、看评价请走商城详情。 购买 / 调试

变更日志

  • v1.02026-07-01

    首次上线:按城市+站名查询实时到站,支持双向、按线路分组返回车牌/到站时间/剩余站数/票价。

  • v1.12026-08-26

    同一接口增加 type=cities 官方城市列表、type=stations 官方站名搜索;到站查询必须用这两个列表里的名称。

  • v1.22026-08-28

    同一接口增加 type=line 静态线路详情:按官方线路名返回单向全程站点、首末班和票价;direction=2 查对向。