本地算法校验身份证号码(支持15/18位,15位自动升位),解析省份、出生日期、性别、年龄、生肖、星座,支持详细信息模式。纯本地计算不请求第三方。免费接口,无需密钥。
本地算法校验身份证号码(支持15/18位,15位自动升位),解析省份、出生日期、性别、年龄、生肖、星座,支持详细信息模式。纯本地计算不请求第三方。免费接口,无需密钥。
| 参数名 | 类型 | 必填 | 说明 | 示例 |
|---|---|---|---|---|
| idcard | string | 是 | 身份证号码,15位或18位,示例:11010519491231002X | |
| type | string | 否 | verify(默认)基础验证;detail 详细信息 |
[
{
"name": "idcard",
"type": "string",
"required": true,
"description": "身份证号码,15位或18位,示例:11010519491231002X",
"example": ""
},
{
"name": "type",
"type": "string",
"required": false,
"description": "verify(默认)基础验证;detail 详细信息",
"example": ""
}
]{"openapi":"3.1.1","info":{"title":"身份证信息查询","description":"本地算法校验身份证号码(支持15/18位,15位自动升位),解析省份、出生日期、性别、年龄、生肖、星座,支持详细信息模式。纯本地计算不请求第三方。免费接口,无需密钥。","version":"1.0.0"},"paths":{"/api/idcard/index.php":{"get":{"summary":"身份证信息查询","description":"本地算法校验身份证号码(支持15/18位,15位自动升位),解析省份、出生日期、性别、年龄、生肖、星座,支持详细信息模式。纯本地计算不请求第三方。免费接口,无需密钥。","parameters":[{"name":"idcard","in":"query","required":true,"schema":{"type":"string"},"description":"身份证号码,15位或18位,示例:11010519491231002X"},{"name":"type","in":"query","required":false,"schema":{"type":"string"},"description":"verify(默认)基础验证;detail 详细信息"}],"responses":{"200":{"description":"成功","content":{"application/json":{"schema":{"type":"object"}}}}}},"post":{"summary":"身份证信息查询","description":"本地算法校验身份证号码(支持15/18位,15位自动升位),解析省份、出生日期、性别、年龄、生肖、星座,支持详细信息模式。纯本地计算不请求第三方。免费接口,无需密钥。","parameters":[{"name":"idcard","in":"query","required":true,"schema":{"type":"string"},"description":"身份证号码,15位或18位,示例:11010519491231002X"},{"name":"type","in":"query","required":false,"schema":{"type":"string"},"description":"verify(默认)基础验证;detail 详细信息"}],"responses":{"200":{"description":"成功","content":{"application/json":{"schema":{"type":"object"}}}}}}}},"servers":[{"url":"https://api.souxiaocha.com","description":"当前访问入口(https)"}]}
{"code":0,"data":{"valid":true,"idcard":"11010519491231002X","length":18,"province":"北京市","province_code":"11","birthday":"1949-12-31","gender":"女","age":76,"zodiac":"牛","constellation":"摩羯座"},"msg":"验证成功"}https://api.souxiaocha.com/api/idcard/index.phpGET https://api.souxiaocha.com/api/idcard/index.php idcard=请填写idcard&type=请填写type
GET 参数放在查询字符串中。参数值请替换为实际有效值。
| 参数名 | 类型 | 必填 | 说明 | 示例 |
|---|---|---|---|---|
idcard | string | 是 | 身份证号码,15位或18位,示例:11010519491231002X | |
type | string | 否 | verify(默认)基础验证;detail 详细信息 |
{"code":0,"data":{"valid":true,"idcard":"11010519491231002X","length":18,"province":"北京市","province_code":"11","birthday":"1949-12-31","gender":"女","age":76,"zodiac":"牛","constellation":"摩羯座"},"msg":"验证成功"}本 API 用于对身份证号码做本地算法校验与信息解析:验证号码真实性(格式 + 校验码),并解析省份、出生日期、性别、年龄、生肖、星座等信息;可选返回详细信息(年代、季节、星期、闰年、是否成年、证件代次与号段结构)。纯本地计算,不请求任何第三方,不存储号码。免费接口,无需密钥。
type=detail 返回年代、出生季节、星期几、闰年、是否成年等扩展信息https://api.souxiaocha.com/api/idcard/index.php
| 参数名 | 类型 | 必填 | 描述 |
|---|---|---|---|
| idcard | string | 是 | 身份证号码,15 位或 18 位,示例:11010519491231002X |
| type | string | 否 | 返回类型:verify(基础验证,默认)或 detail(详细信息) |
{"code":0,"data":{"valid":true,"idcard":"11010519491231002X","length":18,"province":"北京市","province_code":"11","birthday":"1949-12-31","gender":"女","age":76,"zodiac":"牛","constellation":"摩羯座"},"msg":"验证成功"}
{"code":0,"data":{"base_info":{"valid":true,"idcard":"11010519491231002X","length":18,"province":"北京市","province_code":"11","birthday":"1949-12-31","gender":"女","age":76,"zodiac":"牛","constellation":"摩羯座"},"detailed_info":{"chinese_zodiac":"牛","generation":"40后及以前","birth_season":"冬季","birth_day_of_week":"星期六","is_leap_year":false,"is_adult":true,"idcard_type":"第二代身份证"},"format_info":{"area_code":"110105","birth_code":"19491231","sequence_code":"002","check_code":"X"}},"msg":"验证成功"}
| 字段 | 类型 | 描述 |
|---|---|---|
| code | int | 0 成功,1 失败 |
| data.valid | bool | 号码是否通过校验(成功时恒为 true) |
| data.idcard | string | 规范化后的号码(15 位自动升为 18 位,小写 x 转大写) |
| data.province | string | 省级行政区名称 |
| data.birthday | string | 出生日期(YYYY-MM-DD) |
| data.gender | string | 性别(第 17 位奇男偶女) |
| data.age | int | 周岁(按当前日期计算) |
| data.zodiac | string | 生肖 |
| data.constellation | string | 星座 |
| detailed_info.generation | string | 年代(如 90后) |
| detailed_info.birth_season | string | 出生季节 |
| detailed_info.birth_day_of_week | string | 出生当天星期几 |
| detailed_info.is_leap_year | bool | 出生年份是否闰年 |
| detailed_info.is_adult | bool | 是否已成年(≥18 周岁) |
| detailed_info.idcard_type | string | 第一代 / 第二代身份证 |
| format_info.area_code | string | 地区码(前 6 位) |
| format_info.birth_code | string | 出生码(第 7~14 位) |
| format_info.sequence_code | string | 顺序码(第 15~17 位) |
| format_info.check_code | string | 校验码(最后一位) |
| msg | string | 结果说明 |
curl "https://api.souxiaocha.com/api/idcard/index.php?idcard=11010519491231002X&type=detail"
| code | msg | 描述 |
|---|---|---|
| 1 | 身份证号不能为空 | 缺少 idcard 参数 |
| 1 | 验证失败: 身份证号码长度不正确(应为15位或18位) | 号码位数不对 |
| 1 | 验证失败: 身份证号码格式不正确 | 数字/日期段格式非法 |
| 1 | 验证失败: 身份证号码校验码不正确 | 末位校验码与加权计算不符 |
| 1 | 验证失败: 地区代码不正确 | 前两位不是合法省级行政区代码 |
| 1 | 验证失败: 出生日期不正确 | 日期不存在(如 2 月 30 日) |
| 1 | 验证失败: 出生年份不合理 | 年龄超过 150 岁 |
失败时 HTTP 状态码为 200,请以响应体 code 判断(成功 code=0)。
2026-09-24
curl "https://api.souxiaocha.com/api/idcard/index.php?idcard=11010519491231002X"
curl "https://api.souxiaocha.com/api/idcard/index.php?idcard=11010519491231002X&type=detail"
// 结果将在此处显示