免费星座运势查询接口整理与使用教程说明本文基于公开文档/文章整理未对每个接口做真实请求实测接口可用性以公开文档为准集成前请自行验证。写在前面星座运势是社交、内容、营销类应用里高频的趣味模块。开发者通常希望「开箱即用、最好不注册」就能拿到结构化运势数据但社区里流传的链接大多年久失效或需要密钥。本文把市面上能找到、且写法完整的免费星座运势接口整理出来覆盖中文与英文、需 Key 与无需 Key 的不同形态并给出请求示例、返回字段与注意事项。需要特别提醒的是免费接口的服务策略可能随时调整部分托管在第三方平台的接口已经下线因此集成前请务必自行发一次请求验证不要直接照搬。本文所有「可用」结论均来自公开文档与社区文章未做真实请求实测下文不再逐条重复声明。1. 接口总览接口请求地址说明HTTPS编码需要 Key来源类型万维易源 星座运势查询872https://route.showapi.com/872-1中文日/明日/周/月/年 星座配对字段最全是UTF-8免费 appKey官方自营万维易源 星座配对872-2https://route.showapi.com/872-2十二星座两两配对指数与点评是UTF-8免费 appKey官方自营freehoroscopeapi.comhttps://freehoroscopeapi.com/api/v1/get-horoscope/{daily|weekly|monthly}英文日/周/月运势无需鉴权是UTF-8否第三方celesian.comhttps://celesian.com/api/widget/horoscope英文每日短句开启 CORS前端可直连是UTF-8否需署名第三方聚合数据 星座运势http://web.juhe.cn:8080/constellation/getAll中文日/明日/周/月/年免费额度否明文UTF-8免费 Key第三方平台腾讯星座运势JSONPhttp://app.data.qq.com/中文综合/爱情/工作/财运/健康指数较早公开端点否明文UTF-8否第三方易源ShowAPI与聚合数据的接口需自备 appKey / Key本文仅按官方与公开文档整理接入写法未返回真实业务数据。2. 万维易源 星座运势查询872官方自营的免费服务数据为中文字段覆盖最完整综合/爱情/事业/财富/健康指数5 分制、幸运色、幸运数字、吉时、贵人星座以及本日、明日、本周、本月、本年多维运势。官方每日 1 点、7 点、17 点更新。接入点说明提供十二星座白羊座、金牛座、双子座、巨蟹座、狮子座、处女座、天秤座、天蝎座、射手座、摩羯座、水瓶座、双鱼座的运势查询服务。请求示例curlcurl -X POST https://route.showapi.com/872-1?appKeyYOUR_APPKEY \ -H content-type: application/x-www-form-urlencoded \ -d starshizidateneedTomorrow0needWeek0needMonth0needYear0主要参数参数类型必须说明starString否十二星座值分别为 baiyang、jinniu、shuangzi、juxie、shizi、chunv、tiancheng、tianxie、sheshou、mojie、shuiping、shuangyudateString否日期MMdd用于自动转换到需要查询的星座没有 star 参数时以 date 为准needTomorrowString否是否需要明天的数据1 为需要其他不需要needWeekString否是否需要本周运势的数据1 为需要其他不需要needMonthString否是否需要本月运势的数据1 为需要其他不需要needYearString否是否需要本年运势的数据1 为需要其他不需要返回示例{ showapi_res_code: 0, showapi_res_error: , showapi_res_id: ce135f6739294c63be0c021b76b6fbff, showapi_res_body: { day: { day_notice: 异性缘佳吃喝玩乐的机会多。, general_txt: 有许多异性朋友主动邀约……今天不宜急于投资适合观望。, grxz: 双鱼座, love_star: 4, love_txt: 会有异性主动靠近让你有些受宠若惊。, lucky_direction: 西北方, lucky_num: 3, lucky_time_color: 上午6:00--8:00浅莲红, money_star: 2, money_txt: 财务是今日的生活重心……, summary_star: 3, time: 20160113, work_star: 3, work_txt: 只要用心的对待工作…… }, star: shizi } }返回体统一由showapi_res_body封装业务数据均位于该对象内day、tomorrow、week、month、year各自为数组year内指数为 100 分制其余周期为 5 分制。注意事项需自备 appKey创建应用即可获得免费 appKey本文按官方文档整理接入写法未返回真实业务数据调用前请确认 appKey 配额。3. 万维易源 星座配对872-2同一产品的第二个接入点提供十二星座两两之间的配对分析。请求示例curlcurl -X POST https://route.showapi.com/872-2?appKeyYOUR_APPKEY \ -H content-type: application/x-www-form-urlencoded \ -d star1shizigender11star2shuangyugender20主要参数参数类型必须说明star1String是十二星座值与 872-1 的 star 一致gender1String是1、男0、女star2String是十二星座gender2String是1、男0、女返回字段位于 showapi_res_body 内match综合配对指数、love爱情配对指数、affection亲情配对指数、friendship友情配对指数、married婚姻配对指数、forever天长地久指数、lqxy两情相悦指数、predestination缘分解析、suggest恋爱建议、review星座速配点评、attention注意事项、info其它建议、remark提示信息、grxz1/grxz2/star1/star2/gender1/gender2双方星座与性别。注意事项同样需自备 appKey返回文案为中文适合做星座匹配、婚恋交友类功能。4. freehoroscopeapi.com一个开放、无需鉴权的 Horoscope REST API支持 daily / weekly / monthly 三种周期返回标准 JSON。适合做原型、英文站点或需要快速接入的场景。请求示例curlcurl https://freehoroscopeapi.com/api/v1/get-horoscope/daily?signaquariussign 取值小写aries、taurus、gemini、cancer、leo、virgo、libra、scorpio、sagittarius、capricorn、aquarius、pisces。返回示例{ data: { date: 2026-08-11, period: daily, sign: Aquarius, horoscope: …… } }注意事项文案为英文调用请控制频率、避免高频刷接口无需 Key可直接调用。5. celesian.com提供免费可嵌入的占星小组件运势接口开启 CORS前端可直接 fetch 调用无需后端代理。文案为英文短句适合做轻量展示。请求示例curlcurl https://celesian.com/api/widget/horoscope?signAriessign 取值首字母大写Aries、Taurus、Gemini、Cancer、Leo、Virgo、Libra、Scorpio、Sagittarius、Capricorn、Aquarius、Pisces。返回示例{ sign: Aries, date: 2026-08-11, horoscope: ……, source: celesian.com }注意事项官方要求使用时保留来源署名link back to celesian.com已开启 CORS浏览器可直连另有月亮相位等小组件可一并取用。6. 聚合数据 星座运势聚合数据是老牌数据平台星座运势接口有免费调用额度注册并创建应用后获得 Key 即可使用返回中文文案文档与在线调试较完善。请求示例curlcurl http://web.juhe.cn:8080/constellation/getAll?consName%E7%99%BD%E7%BE%8A%E5%BA%A7typetodaykeyYOUR_KEY参数说明参数说明consName星座名称如「白羊座」typetoday今天/ tomorrow明天/ week本周/ nextweek下周/ month本月/ year本年key在聚合数据控制台创建的 APPKEY返回字段error_code、reason以及业务字段name星座名、all综合指数、color幸运颜色、health健康指数、love爱情指数、money财富指数、number幸运数字、QFriend速配星座、summary今日概述、work工作指数。注意事项基础版免费但调用次数有限超出额度或高级数据通常收费无 Key 请求会返回 KEY ERROR接口为明文 HTTP生产环境建议走后端代理避免 Key 暴露。7. 腾讯星座运势JSONP较早公开端点社区中流传过一个腾讯的公开星座运势端点以 JSONP 方式返回中文指数数据无需 Key。写法可参考但属于较早的公开端点当前可用性需自行确认。请求示例http://app.data.qq.com/?umodastroactastrojsonp1funcTodatTplt4ataurusy2015m5d12参数说明a为星座英文名如 taurus、ariesy、m、d为查询日期t为类型标识funcTodatTpl指定回调包裹。返回示例TodatTpl({ astro: 金牛座, fortune: [ { type: 综合指数, content: 67% }, { type: 爱情指数, content: 65% }, { type: 工作指数, content: 66% }, { type: 财运指数, content: 63% }, { type: 健康指数, content: 64% }, { type: 幸运颜色, content: 金色 }, { type: 幸运数字, content: 8 }, { type: 速配友, content: 水瓶座 }, { type: 今日概述, content: 本日蛮适合参加一些团体活动…… } ], day: 20150512, updatetime: 2015-04-15 15:13:26 });注意事项返回为 JSONP 包裹需自行去掉TodatTpl(...)取内部对象该端点时间较早接口稳定性与返回结构可能已变化集成前请先自测。横向对比事实对照维度易源 872freehoroscopeapicelesian聚合数据腾讯JSONP是否需要 Key免费 appKey否否需署名免费 Key否返回语言中文英文英文中文中文覆盖周期日/明日/周/月/年 配对日/周/月每日日/明日/周/月/年单日指数请求方式GET/POSTGETGETCORSGETJSONP指数口径5 分 / 100 分文案文案百分比百分比来源类型官方自营第三方第三方第三方平台第三方各有取舍没有全能最优按你自己的成本与精度需求选中文详尽选易源或聚合数据英文快速接入选 freehoroscopeapi前端直连选 celesian。生产环境参考实现多源降级把多个源列为对等节点按「发请求并落业务字段、失败切换下一源」串联各源排序交由调用方决定。以下为示意代码未做真实请求import requests def query_showapi(star, app_key): r requests.get( https://route.showapi.com/872-1, params{appKey: app_key}, data{star: star, needWeek: 0, needMonth: 0, needYear: 0}, timeout5, ) body r.json().get(showapi_res_body, {}) return {summary: body.get(day, {}).get(summary_star), text: body.get(day, {}).get(general_txt)} def query_freehoroscope(sign): r requests.get( https://freehoroscopeapi.com/api/v1/get-horoscope/daily, params{sign: sign.lower()}, timeout5, ) data r.json().get(data, {}) return {summary: None, text: data.get(horoscope)} def query_celesian(sign): r requests.get( https://celesian.com/api/widget/horoscope, params{sign: sign[0].upper() sign[1:].lower()}, timeout5, ) return {summary: None, text: r.json().get(horoscope)} SOURCES [query_showapi, query_freehoroscope, query_celesian] def get_horoscope(sign, app_keyNone): for fn in SOURCES: try: if fn is query_showapi: if not app_key: continue return fn(sign, app_key) return fn(sign) except Exception: continue # 失败切换下一源 return {summary: None, text: None}调用方按需把query_showapi的star拼音与 freehoroscope / celesian 的sign英文做一张映射表即可。踩坑清单免费接口会下线社区中常提到的 aztroheroku 托管、horoscope-free-api 等已随 Heroku 免费服务取消而失效返回「No such app」。Key 暴露聚合数据、易源等带 Key 的接口务必走后端代理切勿在前端明文写 Key。明文 HTTP聚合数据、腾讯端点为 HTTP公网传输有被劫持风险建议 HTTPS 代理转发。指数口径不一致易源日/周/月为 5 分制、年为 100 分制聚合数据用百分比混用前先统一刻度。频率限制freehoroscopeapi、celesian 明确要求控制请求频率频繁调用可能被限流。CORS 限制除 celesian 外多数接口未开 CORS浏览器直连会被拦截需后端中转。附录补充说明网上流传的「魅族日历 xingzuo.php?msg星座名」等写法不完整、缺少可稳定访问的域名且作者声明「不保证能长期使用」本文未单列章节仅作提示。云策 API 等自称免费但需密钥、且社区反馈稳定性不明的接口本文暂不展开集成前请自行评估。所有接口的服务策略、免费额度、字段结构均可能调整集成前请自行发请求验证本文不承担可用性保证责任。常见问题 FAQ问免费星座运势接口需要付费吗答不一定——万维易源 872、聚合数据属于「注册免费 免费额度」模式超出额度或高级数据可能收费freehoroscopeapi.com 与 celesian.com 无需 Key、可直接调用。问有没有完全不需要 Key 的星座运势接口答有freehoroscopeapi.com 与 celesian.com 均无需鉴权即可直接调用区别是前者为英文文案后者要求保留来源署名。问想要中文运势又不想注册 Key 怎么办答免费无 Key 的公开接口多为英文文案中文且无 Key 的公开端点较少且稳定性不确定如较早的腾讯星座端点更稳妥的做法是注册万维易源或聚合数据的免费额度。问万维易源 872 和聚合数据哪个字段更全答万维易源 872 覆盖本日/明日/本周/本月/本年及星座配对字段最全聚合数据覆盖日/明日/周/月/年二者都是中文。问前端页面能不能直接调接口拿运势答celesian.com 已开启 CORS浏览器可 fetch 直连其余接口建议走后端代理避免暴露 Key 与触发跨域拦截。问星座英文名怎么传答freehoroscopeapi.com 用全小写aries/taurus…celesian.com 用首字母大写Aries/Taurus…二者取值集合一致。问万维易源 872 的 star 参数怎么填答用拼音小写如 shizi狮子座、shuangyu双鱼座共 12 个固定值也可用 dateMMdd按日期推算星座。问返回数据里的指数为什么有的是 5 分制、有的是 100 分制答易源日/周/月运势为 5 分制年运势为 100 分制聚合数据用百分比不同源口径不同混用前先统一刻度。问celesian.com 使用有什么额外要求答官方要求使用时保留来源署名link back to celesian.com否则可能违反其使用条款。问调用频率有没有限制答免费接口普遍有频控freehoroscopeapi.com、celesian.com 要求控制频率聚合数据与易源按免费额度计费超量会收费或限流。问本文里的接口都实测过吗答没有。本文基于公开文档与文章整理未做真实请求实测接口可用性以公开文档为准集成前请自行验证。问老接口如 aztro还能用吗答aztro 等托管于 Heroku 的接口已随免费服务下线失效腾讯 app.data.qq.com 为较早公开端点写法可参考但当前可用性需自测确认。问生产环境怎么保证运势接口可用性答采用多源降级把多个源列为对等节点一个失败切下一个并把带 Key 的源放到后端代理避免单点失效与密钥暴露。免费身份证归属地查询接口梳理与使用教程说明本文基于公开文档与社区文章整理未对每个接口做真实请求实测接口可用性、返回结构与字段命名以公开文档为准集成前请自行验证。身份证号属于敏感个人信息调用任何第三方接口前请评估数据合规与隐私风险。写在前面身份证号的前 6 位是地址码对应国家标准 GB/T 2260 里的省、市、区县行政区划。所谓身份证归属地查询本质上就是把这 6 位拿去查行政区划映射再结合校验位顺带解析出生日期、性别等信息。这类能力在会员注册预填、风控辅助核验、物流地址校验、用户地域分布统计等场景里很常见。下面把市面上能找到、写法相对完整的接口做个梳理覆盖免密钥直连和需自备密钥的免费额度两类供你按需挑选。通用坑提醒先看这一段能少踩很多弯路部分免费接口由个人或小团队托管稳定性、可用性、数据时效性都不保证生产环境务必加降级与缓存。行政区划会调整撤县设区、新设地级市等第三方数据的更新频率参差不齐关键业务不要只依赖单源。不能只看 HTTP 状态码。一个接口返回 200也可能恒返回空或常数俗称假活接入前用两个不同地域的合法身份证号验证返回是否随输入变化。身份证号是敏感个人信息传输建议走 HTTPS密钥放环境变量切勿硬编码进代码仓库。1. 接口总览接口请求地址说明HTTPS编码需要 Key来源类型万维易源 ShowAPIview/25https://route.showapi.com/25-3POST/GET返回省/市/区县 生日/性别是UTF-8是免费额度注册即用接口市场nxvavhttps://api.nxvav.cn/api/idcard/GET免密钥返回省/市/区 生日/性别/年龄是UTF-8否第三方托管铭心 mxin.moehttps://api.mxin.moe/api/v1/sfz/areaGET免密钥返回省/市/县是UTF-8否第三方托管aa1zj.v.api.aa1.cnhttps://zj.v.api.aa1.cn/api/sfz/GET免密钥返回省/市 性别/年龄是UTF-8否第三方托管apizerohttps://v1.apizero.cn/api/idcard-regionGET需 X-API-Key返回省/市/区县含国标码是UTF-8是免费额度API 平台2. 万维易源 ShowAPIview/25一句话定位接口市场提供的身份证归属地查询免费额度可用注册即送约 100 次/天、1 QPS需自备 appKey返回省/市/区县及出生日期、性别。请求示例POST参数放表单GET 同样支持appKey 走 querycurl -X POST https://route.showapi.com/25-3?appKeyYOUR_APPKEY \ -H content-type: application/x-www-form-urlencoded \ -d id110105199001010010返回示例{ showapi_res_code: 0, showapi_res_error: , showapi_res_id: ce135f6739294c63be0c021b76b6fbff, showapi_res_body: { errNum: 0, retData: { address: 北京市市辖区朝阳区, birthday: 1990-01-01, sex: F }, retMsg: success, ret_code: 0 } }注意事项必填参数id身份证号appKey走 query。appKey 可在万维易源控制台appKey 管理获取全文仅此一处说明。业务数据在showapi_res_body内retData.address籍贯、retData.birthday生日、retData.sex性别M 男 / F 女。外层showapi_res_code为系统级状态码业务异常看showapi_res_body.ret_code。本文按官方 OpenAPI 文档整理接入写法未返回真实业务数据免费额度有每日调用上限与 QPS 限制批量场景注意限速。3. nxvav一句话定位一个免密钥的公开接口除归属地外还能顺带解析出生日期、性别、年龄字段最全。请求示例curl https://api.nxvav.cn/api/idcard/?id110105199001010010返回示例{ code: 200, msg: 查询成功, data: { idCardNum: 110105199001010010, birthday: 1990-01-01, sex: 男, age: 36, address: 北京市市辖区朝阳区朝外街道 } }注意事项返回字段code200 成功、data.address完整归属地、data.sex、data.birthday、data.age。第三方托管可能出现限频或不稳定接入时对失败做降级处理。4. 铭心 mxin.moe一句话定位免密钥接口专注返回省 / 市 / 县三级行政区划结构干净。请求示例curl https://api.mxin.moe/api/v1/sfz/area?idcard110105199001010010返回示例{ code: 0, msg: OK, data: { province: 北京市, city: 朝阳区, county: 朝阳区 } }注意事项返回字段code0 成功、data.province/data.city/data.county。它对直辖市的市、区都填进了city/county如北京样例里city朝阳区、county朝阳区做字段映射时做兼容不要把city直接当地级市理解。响应里带了一个站点信息字段解析时忽略即可不要拿它做结构校验。5. aa1zj.v.api.aa1.cn一句话定位免密钥接口返回省 / 市及性别、年龄、是否成年等扩展信息。请求示例注意入参名是sfz与其它接口的id/idcard不同curl https://zj.v.api.aa1.cn/api/sfz/?sfz110105199001010010返回示例{ code: 200, msg: 身份证校验正确, data: { province: 北京市, city: null, sfz: 110105199001010010, sfz_mw: 110105******0010, xb: 男, age: 36, age_isage: 已成年, age_job: 社会人士 } }注意事项返回字段code200 成功、data.province/data.city部分号码city为 null、data.xb性别、data.age。入参名是sfz对接时注意区分。同样由第三方托管稳定性不保证。6. apizero一句话定位API 平台提供的身份证区划查询需 X-API-Key有免费额度返回省/市/区县三级且带国标代码并自动对完整身份证号脱敏回显。请求示例curl -sS -X GET \ -H X-API-Key: $APIZERO_API_KEY \ https://v1.apizero.cn/api/idcard-region?idcard110101199001011234返回示例{ code: 0, data: { province: {code: 110000, name: 北京市}, city: {code: 110100, name: 北京市}, district: {code: 110101, name: 东城区}, idcard: 110101************ }, msg: 成功 }注意事项鉴权用 HeaderX-API-Key密钥建议从环境变量读取勿硬编码。idcard支持 6 位区划代码、15 位或 18 位身份证号传入完整号时回显自动脱敏。直辖市city.name与province.name相同业务里可直接取province。服务端有缓存与更新窗口行政区划调整后最坏延迟约 30 天更新关键业务建议维护本地区划表做降级。横向对比维度ShowAPI view/25nxvav铭心 mxinaa1apizero是否需要 Key是免费额度否否否是免费额度返回格式JSON外层 ShowapiResEnvelope 包裹JSONJSONJSONJSONHTTPS是是是是是编码UTF-8UTF-8UTF-8UTF-8UTF-8返回内容省/市/区县 生日/性别省/市/区 生日/性别/年龄省/市/县省/市 性别/年龄省/市/区县含国标码已知限制需 appKeysex 为 M/F免费额度有上限第三方托管可能限频直辖市 city/county 填法特殊部分号码 city 为 null需密钥数据有更新窗口各有取舍没有哪个是全能最优。若你只要省/市/县三级铭心字段最干净若想顺带拿生日性别年龄nxvav 与 aa1 信息更全若需要国标代码或脱敏回显apizero 更合适若想要接口市场的稳定性与文档ShowAPI 免费额度可作为备选。具体用哪个取决于你的字段需求、对稳定性的容忍度以及是否愿意管理密钥文中不下该用哪个的结论。生产环境参考实现多源降级下面把所有源列为对等节点按发请求并落业务字段、失败切换下一源串联。各源排序交由调用方决定示例代码仅供集成参考。import os import requests # 各源配置密钥放环境变量勿硬编码 SOURCES [ { name: nxvav, url: https://api.nxvav.cn/api/idcard/, params: lambda idno: {id: idno}, headers: {}, parse: lambda d: { province: (d.get(data, {}).get(address) or ).split(市)[0][:3] if d.get(code) 200 else None, address: d.get(data, {}).get(address), sex: d.get(data, {}).get(sex), birthday: d.get(data, {}).get(birthday), }, }, { name: mxin, url: https://api.mxin.moe/api/v1/sfz/area, params: lambda idno: {idcard: idno}, headers: {}, parse: lambda d: { province: d.get(data, {}).get(province), city: d.get(data, {}).get(city), county: d.get(data, {}).get(county), }, }, { name: aa1, url: https://zj.v.api.aa1.cn/api/sfz/, params: lambda idno: {sfz: idno}, headers: {}, parse: lambda d: { province: d.get(data, {}).get(province), city: d.get(data, {}).get(city), sex: d.get(data, {}).get(xb), age: d.get(data, {}).get(age), }, }, { name: apizero, url: https://v1.apizero.cn/api/idcard-region, params: lambda idno: {idcard: idno}, headers: lambda: {X-API-Key: os.environ.get(APIZERO_API_KEY, )}, parse: lambda d: { province: d.get(data, {}).get(province, {}).get(name), city: d.get(data, {}).get(city, {}).get(name), district: d.get(data, {}).get(district, {}).get(name), }, }, { name: showapi, url: https://route.showapi.com/25-3, params: lambda idno: {id: idno, appKey: os.environ.get(SHOWAPI_APPKEY, )}, headers: {content-type: application/x-www-form-urlencoded}, parse: lambda d: { address: d.get(showapi_res_body, {}).get(retData, {}).get(address), birthday: d.get(showapi_res_body, {}).get(retData, {}).get(birthday), sex: d.get(showapi_res_body, {}).get(retData, {}).get(sex), }, }, ] def query_idcard(idno: str, timeout: float 5.0) - dict: 依次尝试各源返回第一个成功解析的结果含来源标识。 for src in SOURCES: try: resp requests.get( src[url], paramssrc[params](idno), headerssrc[headers]() if callable(src[headers]) else src[headers], timeouttimeout, ) resp.raise_for_status() data resp.json() parsed src[parse](data) if any(v for v in parsed.values()): return {source: src[name], idcard: idno, **parsed} except Exception: # 单源失败切换下一源 continue return {source: None, idcard: idno, error: 所有源均失败请检查网络/密钥或稍后重试} if __name__ __main__: print(query_idcard(110105199001010010))要点客户端做超时与降级对相同身份证前缀做本地缓存TTL 建议 30 分钟以内以减少外部调用密钥统一从环境变量读取记录脱敏后的请求与响应耗时便于排查。踩坑清单字段命名不统一有的用address有的用province/city/county有的用xb。对接时按源适配不要假设统一结构。直辖市特例北京/上海/天津/重庆的city常与province同名铭心接口甚至把区也填进city映射逻辑要做兼容。入参名不同nxvav 用idmxin/apizero 用idcardaa1 用sfzShowAPI 用id。接多个源时务必分别处理。性别表达不同ShowAPI 返回M/F其余多为男/女做统一输出时记得转换。假活风险免费第三方接口可能返回空或常数集成前用两个不同地域的合法号码验证返回随输入变化。稳定性免密钥接口多为个人/小团队托管可能随时限频、停服或改字段生产环境务必多源降级 本地缓存 监控。合规身份证号是敏感个人信息传输走 HTTPS密钥不落库脱敏日志遵守《个人信息保护法》。附录需自备密钥的接口一览以下接口在公开资料中出现频率高、写法相对完整但均需注册并自备密钥 / 配额多数含免费额度。是否选用由你自行决定接入前以官方文档为准聚合数据https://apis.juhe.cn/idcard/index?keycardno极速数据https://api.jisuapi.com/idcard/query?appkeyidcardRollToolsApihttps://www.mxnzp.com/api/idcard/search?idcardapp_idapp_secret接口盒子https://cn.apihz.cn/api/other/card.php?idkeycard码道 explinkshttps://www.explinks.com/api/kyc_idcard_infowapihttps://www.wapi.cn/api_detail/60/167.htmlxbronchttps://xbronc.com/freeapi/idCard?id公开写法显示免注册免密钥但仅单一来源未做充分验证列入此表供参考常见问题 FAQ问身份证归属地查询到底查的是什么 答查的是身份证号前 6 位地址码对应的行政区划依据国家标准 GB/T 2260再结合校验位解析出生日期与性别。问有没有完全免费、不需要密钥的接口 答有公开资料里 nxvav、铭心 mxin.moe、aa1 三个接口免密钥、直接 GET 即可调用适合个人项目与原型验证。问免密钥接口稳定吗 答多为第三方托管稳定性与可用性不保证可能限频或停服生产环境建议多源降级并加本地缓存。问ShowAPI 这个接口免费吗 答有免费额度注册即用约 100 次/天、1 QPS但需要自备 appKey超出额度会产生费用。问不同接口返回的字段为什么不一样 答各家命名习惯不同有的给address完整字符串有的拆成province/city/county性别有的用M/F有的用男/女接入时需按源适配。问直辖市的归属地怎么解析 答北京/上海/天津/重庆的city通常与province同名部分接口还会把区填进city映射逻辑要做兼容避免把city当地级市理解。问请求参数名都一样吗 答不一样nxvav 用idmxin 与 apizero 用idcardaa1 用sfzShowAPI 用id多源接入要分别处理。问怎么判断一个免费接口是不是假活 答用两个不同地域的合法身份证号分别请求看返回是否随输入变化、是否对应真实行政区划若恒返回空或同一段常数就是假活。问接入时密钥怎么管理最安全 答从环境变量或配置中心注入不要硬编码进代码定期轮换日志里只记脱敏后的身份证号。问身份证号算敏感信息吗调用第三方要注意什么 答算传输走 HTTPS选择合规的服务商遵循《个人信息保护法》不要无必要地把号码发给不可信的第三方。问行政区划调整后接口数据会马上变吗 答不会第三方数据有更新窗口有的资料提到最坏约 30 天关键业务建议维护本地区划表做降级兜底。问本地能不能不调用接口自己算归属地 答可以把国标地址码映射表CSV/SQLite集成到本地自主可控、无网络依赖、无调用费用代价是要自行维护数据更新。问本文里的接口都实测过吗 答没有本文基于公开文档与社区文章整理未对每个接口做真实请求实测接口可用性与字段以公开文档为准集成前请自行验证。