GETPOST
v2.1.0stable

Add Device (Review/Reservation)

Register a device in reservation mode. mobileprovision may be empty while Apple review is pending

GET | POST/api/addyydevice
Auth:API Key
Limit:30/minute

Request Parameters

All parameters can be passed via Query or Body

ParameterTypeRequiredDescription
token
stringRequired
User API token
Example: your_api_token_here
udid
stringRequired
Device UDID. Length must be 25 or 40 characters
Example: 00008030-001234567890ABCD
warranty
stringOptional
Warranty type: 0/1/2/3/4/6. Recommended to pass explicitly
012346
Example: 1
shtype
stringOptional
Alias of warranty. Used only when warranty is empty
012346
Example: 1
type
stringOptional
Pool type: 0=shared, 1=dedicated. Default is 0
01
Example: 0
deviceType
stringOptional
Device type: iphone or ipad. Default is iphone
iphoneipad
Example: iphone
beizhu
stringOptional
Remark. Up to 40 characters
Example: 预约测试设备

Response

ParameterTypeRequiredDescription
code
numberRequired
Status code: 1=success, 0=failure
Example: 1
msg
stringRequired
Response message
Example: 添加成功
time
numberRequired
Server timestamp (Unix seconds)
Example: 1769675945
data
objectRequired
Response payload
data.id
stringRequired
Reservation order / certificate ID (typically 5 alphanumeric characters)
Example: A1B2C
data.pool
numberRequired
Pool: 0=shared, 1=dedicated
Example: 0
data.addtime
numberRequired
Added time (Unix)
Example: 1706500000
data.mobileprovision
stringRequired
Base64-encoded mobileprovision (may be empty while review is pending)
Example: Base64EncodedString...
data.p12
stringRequired
Base64-encoded P12 certificate
Example: Base64EncodedString...
data.state
booleanRequired
Certificate validity state (returned in some branches)
Example: true
ysucc
stringRequired
Success flag, returns "Ysucc" on success
Example: Ysucc
Response Example
{
"code":1,
"msg":"Reservation successful",
"time":1769675945,
"data":
{
"id":"A1B2C",
"pool":0,
"addtime":1706500000,
"mobileprovision":"",
"p12":"MIINDgIBAzCCDMsGCSqGSIb3DQEHAa...(Base64)"
}
,
"ysucc":"Ysucc"
}

Error Codes

Error Codes4 defined
0
Invalid token
Invalid or expired token
0
Invalid UDID format
UDID length must be 25 or 40 characters
0
Insufficient balance
Insufficient balance

Response Language

Customize the API response language with the X-Lang header. The code examples below automatically use your current site language.

Recommended Header
X-Lang: en
Supported Languages
zh, en, zh-TW, vi, ar

Accept-Language is also supported; X-Lang takes priority. Unsupported languages fall back to English.

Code Examples

curl -X POST "https://testypro.iwai.cc,https://cer.xyul.cn,https://cer.iwai.cc/api/addyydevice" \
  -H "X-Lang: en" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "token=your_api_token_here&udid=00008030-001234567890ABCD&warranty=1&shtype=1&type=0&deviceType=iphone&beizhu=%E9%A2%84%E7%BA%A6%E6%B5%8B%E8%AF%95%E8%AE%BE%E5%A4%87"

Notes

  • Send params via Query or x-www-form-urlencoded. JSON body is not parsed
  • shtype is a legacy alias of warranty, used only when warranty is empty
  • An empty mobileprovision usually indicates review is pending; check status via device list APIs

Try it in Console

Fill in the parameters below and send a request to test. Requests only go to this site's API; the URL is locked and cannot be changed, and your current login cookie is included.

https://testypro.iwai.cc/api/addyydevice?token=your_api_token_here&udid=00008030-001234567890ABCD&warranty=1&shtype=1&type=0&deviceType=iphone&beizhu=%E9%A2%84%E7%BA%A6%E6%B5%8B%E8%AF%95%E8%AE%BE%E5%A4%87Locked to this site
stringRequired

User API token

stringRequired

Device UDID. Length must be 25 or 40 characters

string

Warranty type: 0/1/2/3/4/6. Recommended to pass explicitly

string

Alias of warranty. Used only when warranty is empty

string

Pool type: 0=shared, 1=dedicated. Default is 0

string

Device type: iphone or ipad. Default is iphone

string

Remark. Up to 40 characters