GETPOST
v1.0.0stable

证书检测

使用 Token 鉴权,通过证书 KID 或设备 UDID 检测证书状态

GET | POST/api/device/certcheck
认证:API Key
限流:30/分钟

请求参数

所有请求参数需通过 Query 或 Body 传递

参数名类型必填说明
token
string必填
用户 API Token
示例: your_api_token_here
kid
string可选
证书 KID,与 udid 二选一
示例: ABC123XYZ
udid
string可选
设备 UDID,与 kid 二选一
示例: 00008030-001234567890002E

响应参数

参数名类型必填说明
code
number必填
API 调用状态码:1=成功,其他=失败
示例: 1
msg
string必填
返回信息
示例: 证书状态正常
time
number必填
服务器时间戳(Unix 秒)
示例: 1769675945
data
object必填
业务数据
data.status
string必填
证书状态:normal/expired/revoked/banned/dropped/unknown
示例: normal
data.status_code
number必填
状态码:205=正常,203=过期,204=撤销,207=封禁,206=掉签,208=未知
示例: 205
data.status_text
string必填
状态文本描述
示例: 正常
data.details
string必填
详细说明
示例: 证书有效,剩余 180 天过期
data.check_method
string必填
检测方法:在线检测 / 本地检测
示例: 在线检测
data.can_detect_revoke
boolean必填
是否能检测吊销状态:true=在线检测可用,false=仅本地检测(只能验证有效期)
示例: true
data.revoked_at
string必填
吊销时间(仅吊销/封禁时返回)
示例: 2026-01-15 10:30:00
data.expires_at
string必填
证书过期时间
示例: 2027-01-28 15:30:00
data.remaining_days
number必填
剩余有效天数
示例: 180
data.cert_info
object必填
证书基本信息
data.cert_info.common_name
string必填
证书通用名称
示例: Apple Development: John Doe (XXXXXXXXXX)
data.cert_info.valid_from
string必填
证书生效时间
示例: 2026-01-28 15:30:00
data.cert_info.valid_to
string必填
证书过期时间
示例: 2027-01-28 15:30:00
data.device
object必填
设备信息
ip
string必填
请求者IP地址
示例: 192.168.1.100
ysucc
string必填
成功标识,成功时返回 "Ysucc"
示例: Ysucc
响应示例
{
"code":1,
"msg":"证书状态正常",
"time":1769675945,
"data":
{
"status":"normal",
"status_code":205,
"status_text":"正常",
"details":"在线验证通过,证书有效,剩余 180 天过期",
"check_method":"在线检测",
"can_detect_revoke":true,
"revoked_at":"",
"expires_at":"2027-01-28 15:30:00",
"remaining_days":180,
"cert_info":
{
"common_name":"Apple Development: John Doe (XXXXXXXXXX)",
"valid_from":"2026-01-28 15:30:00",
"valid_to":"2027-01-28 15:30:00",
"issuer":"Apple Inc.",
"country":"CN"
}
,
"device":
{
"id":12345,
"kid":"ABC123XYZ",
"udid":"00008030-001234567890002E",
"pname":"MyApp Development",
"model":"iPhone 15 Pro",
"shtype":1,
"zt":"normal"
}
}
,
"ip":"192.168.1.100",
"ysucc":"Ysucc"
}

证书已掉签(在线检测)

在线检测到证书已掉签

证书已掉签(在线检测)
{
"code":1,
"msg":"证书已掉签",
"time":1769675945,
"data":
{
"status":"dropped",
"status_code":206,
"status_text":"掉签",
"details":"证书已被吊销",
"check_method":"在线检测",
"can_detect_revoke":true,
"device":
{
"id":12345,
"kid":"ABC123XYZ",
"udid":"00008030-001234567890002E",
"pname":"MyApp Development",
"zt":"hidden"
}
}
,
"ip":"192.168.1.100",
"ysucc":"Ysucc"
}

账号已封禁

开发者账号已被 Apple 封禁

账号已封禁
{
"code":1,
"msg":"开发者账号已被封禁",
"time":1769675945,
"data":
{
"status":"banned",
"status_code":207,
"status_text":"账号封禁",
"details":"Apple 封禁了该开发者账号",
"check_method":"在线检测",
"can_detect_revoke":true,
"revoked_at":"2026-01-15 10:30:00",
"device":
{
"id":12345,
"zt":"hidden"
}
}
,
"ip":"192.168.1.100",
"ysucc":"Ysucc"
}

本地检测(在线检测不可用)

在线检测不可用,回退到本地检测,仅验证有效期

本地检测(在线检测不可用)
{
"code":1,
"msg":"证书有效期正常(未验证吊销状态)",
"time":1769675945,
"data":
{
"status":"normal",
"status_code":205,
"status_text":"正常",
"details":"本地检测:证书在有效期内,剩余 180 天过期。注意:在线检测不可用,无法确认证书是否被吊销",
"check_method":"本地检测(网络不可用)",
"can_detect_revoke":false,
"expires_at":"2027-01-28 15:30:00",
"remaining_days":180,
"device":
{
"id":12345,
"pname":"MyApp Development",
"zt":"normal"
}
}
,
"ip":"192.168.1.100",
"ysucc":"Ysucc"
}

存在多个匹配证书

同一UDID下存在多个证书,请使用 kid 参数指定

存在多个匹配证书
{
"code":103,
"msg":"存在多个匹配设备,请指定具体证书ID",
"time":1769675945,
"data":
{
"count":3,
"devices":
[
{
"id":12345,
"kid":"ABC123",
"pname":"App A",
"shtype":1
}
,
{
"id":12346,
"kid":"DEF456",
"pname":"App B",
"shtype":2
}
,
{
"id":12347,
"kid":"GHI789",
"pname":"App C",
"shtype":1
}
]
}
,
"ip":"192.168.1.100",
"yno":"Yno"
}

错误码

错误码8 个定义
12
Token 不能为空
未提供 Token 参数
10
Token 无效
Token 不正确或已过期
20
请提供 kid 或 udid
未提供 kid 或 udid

响应语言

通过 X-Lang 请求头自定义接口返回语言。下方代码示例会自动使用您当前访问系统的语言。

推荐请求头
X-Lang: zh
支持的语言
zh, en, zh-TW, vi, ar

也可以使用 Accept-Language;X-Lang 优先级更高。不支持的语言将回退为英文。

代码示例

curl -X GET "https://testypro.iwai.cc,https://cer.xyul.cn,https://cer.iwai.cc/api/device/certcheck?token=your_api_token_here&kid=ABC123XYZ&udid=00008030-001234567890002E" \
  -H "X-Lang: zh"

注意事项

  • 支持 GET 和 POST 请求
  • kid 或 udid 二选一,至少提供一个
  • 若同一UDID存在多个证书,将返回多证书提示
  • 在线检测:可检测证书有效期 + 是否被吊销(掉签),需要网络
  • 本地检测:仅检测证书有效期,无法检测证书是否被吊销
  • 在线检测不可用时自动回退到本地检测,此时 can_detect_revoke=false
  • 检测到掉签/封禁状态时会自动更新设备状态为 hidden
  • 建议不要频繁调用此接口,以免触发APPLE风控

在控制台试一试

填好参数后直接点发送测试,接口地址固定为本站,会带上当前登录状态

https://testypro.iwai.cc/api/device/certcheck?token=your_api_token_here&kid=ABC123XYZ&udid=00008030-001234567890002E已锁定本站
string必填

用户 API Token

string

证书 KID,与 udid 二选一

string

设备 UDID,与 kid 二选一