📘 API 开发文档 完整版(含请求示例) v3
https://api.520idc.top/
📋 一、接口总览 — 共用约定
基础 URLhttps://api.520idc.top
数据格式JSON
字符编码UTF-8
请求方式绝大多数 POST
认证方式App ID + App Key
📌 调用方式(两种写法等效)
推荐 POST /{api_code}
参数方式 POST /index.php?code={api_code}
🔐 认证方式 优先级:Header > GET > POST
X-APP-ID 和 X-APP-KEY 建议统一走 Header。
X-APP-ID 和 X-APP-KEY 建议统一走 Header。
📤 统一返回结构
{
"code": 0, "msg": "success", "data": {}, "request_id": "req_xxx" }
"code": 0, "msg": "success", "data": {}, "request_id": "req_xxx" }
code 业务状态码,0 成功;data 业务数据;request_id 请求追踪 ID
📌 公共参数(所有请求可携带)
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| app_id | string | 是 | 应用 ID |
| app_key | string | 是 | 应用密钥 |
参数类型: string 字符串 integer 整数 float 浮点数 boolean 布尔值 array 数组 object 对象
📌 二、接口详情
POST /dxyzm https://api.520idc.top/dxyzm 📦 套餐制 · 1次/调用
短信验证码发送 — 调用阿里云短信接口发送验证码,支持自定义验证码,不传则由平台自动生成 6 位随机码。
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| phone | string | 是 | 接收手机号(11 位) |
| code | string | 否 | 自定义 6 位验证码,不传由平台生成 |
💻 请求示例
PHP
<?php
$app_id = 'YOUR_APP_ID';
$app_key = 'YOUR_APP_KEY';
$url = 'https://api.520idc.top/dxyzm';
$params = ['phone' => '13800138000'];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($params));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'X-APP-ID: ' . $app_id,
'X-APP-KEY: ' . $app_key,
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$resp = curl_exec($ch);
curl_close($ch);
echo $resp;
$app_id = 'YOUR_APP_ID';
$app_key = 'YOUR_APP_KEY';
$url = 'https://api.520idc.top/dxyzm';
$params = ['phone' => '13800138000'];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($params));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'X-APP-ID: ' . $app_id,
'X-APP-KEY: ' . $app_key,
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$resp = curl_exec($ch);
curl_close($ch);
echo $resp;
Java
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SmsDemo {
public static void main(String[] args) throws Exception {
String appId = "YOUR_APP_ID";
String appKey = "YOUR_APP_KEY";
String url = "https://api.520idc.top/dxyzm";
String body = "{\"phone\":\"13800138000\"}";
HttpClient client = HttpClient.newHttpClient();
HttpRequest req = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Content-Type", "application/json")
.header("X-APP-ID", appId)
.header("X-APP-KEY", appKey)
.POST(HttpRequest.BodyPublishers.ofString(body))
.build();
HttpResponse<String> resp = client.send(req, HttpResponse.BodyHandlers.ofString());
System.out.println(resp.body());
}
}
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SmsDemo {
public static void main(String[] args) throws Exception {
String appId = "YOUR_APP_ID";
String appKey = "YOUR_APP_KEY";
String url = "https://api.520idc.top/dxyzm";
String body = "{\"phone\":\"13800138000\"}";
HttpClient client = HttpClient.newHttpClient();
HttpRequest req = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Content-Type", "application/json")
.header("X-APP-ID", appId)
.header("X-APP-KEY", appKey)
.POST(HttpRequest.BodyPublishers.ofString(body))
.build();
HttpResponse<String> resp = client.send(req, HttpResponse.BodyHandlers.ofString());
System.out.println(resp.body());
}
}
响应示例
{
"code": 0, "msg": "发送成功", "data": { "phone": "13800138000", "code": "123456", "generated": false, "remain": 9 }, "request_id": "req_xxx" }
"code": 0, "msg": "发送成功", "data": { "phone": "13800138000", "code": "123456", "generated": false, "remain": 9 }, "request_id": "req_xxx" }
data.phone 手机号 · data.code 本次验证码 · data.generated true=平台生成 · data.remain 剩余次数
POST /alipaysm https://api.520idc.top/alipaysm 💳 买断制 · 授权长期有效
支付宝实名认证 — 两步流程:①
action=start 获取授权链接;② 用户授权后,用 action=result 查询认证结果。请求参数(action=start)
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| action | string | 是 | 固定值 start |
| user_name | string | 是 | 真实姓名 |
| cert_no | string | 是 | 身份证号 |
| mobile | string | 否 | 支付宝绑定手机号 |
| logon_id | string | 否 | 支付宝登录账号 |
请求参数(action=result)
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| action | string | 是 | 固定值 result |
| auth_code | string | 是 | 用户授权后获取的授权码 |
💻 请求示例
PHP
<?php
$app_id = 'YOUR_APP_ID';
$app_key = 'YOUR_APP_KEY';
$base = 'https://api.520idc.top/alipaysm';
// 第一步:发起认证
$params = [
'action' => 'start',
'user_name' => '张三',
'cert_no' => '110101198806052133',
];
$ch = curl_init($base);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($params));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'X-APP-ID: ' . $app_id,
'X-APP-KEY: ' . $app_key,
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$resp = curl_exec($ch);
curl_close($ch);
echo $resp;
// 第二步:用户授权后,用授权码查询结果
$params2 = [
'action' => 'result',
'auth_code' => 'USER_AUTH_CODE',
];
// 使用同样的方式 POST $params2,代码略
$app_id = 'YOUR_APP_ID';
$app_key = 'YOUR_APP_KEY';
$base = 'https://api.520idc.top/alipaysm';
// 第一步:发起认证
$params = [
'action' => 'start',
'user_name' => '张三',
'cert_no' => '110101198806052133',
];
$ch = curl_init($base);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($params));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'X-APP-ID: ' . $app_id,
'X-APP-KEY: ' . $app_key,
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$resp = curl_exec($ch);
curl_close($ch);
echo $resp;
// 第二步:用户授权后,用授权码查询结果
$params2 = [
'action' => 'result',
'auth_code' => 'USER_AUTH_CODE',
];
// 使用同样的方式 POST $params2,代码略
Java
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class AlipayDemo {
static final String APP_ID = "YOUR_APP_ID";
static final String APP_KEY = "YOUR_APP_KEY";
static final String URL = "https://api.520idc.top/alipaysm";
public static void main(String[] args) throws Exception {
// 第一步:发起认证
String body = "{\"action\":\"start\",\"user_name\":\"张三\",\"cert_no\":\"110101198806052133\"}";
String resp = post(body);
System.out.println(resp);
// 第二步:用户授权后,用授权码查询结果
// String body2 = "{\"action\":\"result\",\"auth_code\":\"USER_AUTH_CODE\"}";
// System.out.println(post(body2));
}
static String post(String body) throws Exception {
HttpClient client = HttpClient.newHttpClient();
HttpRequest req = HttpRequest.newBuilder()
.uri(URI.create(URL))
.header("Content-Type", "application/json")
.header("X-APP-ID", APP_ID)
.header("X-APP-KEY", APP_KEY)
.POST(HttpRequest.BodyPublishers.ofString(body))
.build();
HttpResponse<String> resp = client.send(req, HttpResponse.BodyHandlers.ofString());
return resp.body();
}
}
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class AlipayDemo {
static final String APP_ID = "YOUR_APP_ID";
static final String APP_KEY = "YOUR_APP_KEY";
static final String URL = "https://api.520idc.top/alipaysm";
public static void main(String[] args) throws Exception {
// 第一步:发起认证
String body = "{\"action\":\"start\",\"user_name\":\"张三\",\"cert_no\":\"110101198806052133\"}";
String resp = post(body);
System.out.println(resp);
// 第二步:用户授权后,用授权码查询结果
// String body2 = "{\"action\":\"result\",\"auth_code\":\"USER_AUTH_CODE\"}";
// System.out.println(post(body2));
}
static String post(String body) throws Exception {
HttpClient client = HttpClient.newHttpClient();
HttpRequest req = HttpRequest.newBuilder()
.uri(URI.create(URL))
.header("Content-Type", "application/json")
.header("X-APP-ID", APP_ID)
.header("X-APP-KEY", APP_KEY)
.POST(HttpRequest.BodyPublishers.ofString(body))
.build();
HttpResponse<String> resp = client.send(req, HttpResponse.BodyHandlers.ofString());
return resp.body();
}
}
响应示例(start)
{
"code": 0, "msg": "发起成功", "data": { "token": "a1b2c3d4e5f67890", "verify_id": "671ffcda5447bc87e9ed2f669eb143d4", "auth_url": "https://openauth.alipay.com/..." }, "request_id": "req_xxx" }
"code": 0, "msg": "发起成功", "data": { "token": "a1b2c3d4e5f67890", "verify_id": "671ffcda5447bc87e9ed2f669eb143d4", "auth_url": "https://openauth.alipay.com/..." }, "request_id": "req_xxx" }
响应示例(result)
{
"code": 0, "msg": "success", "data": { "verify": "1", "user_name": "张三", "cert_no": "110101198806052133" }, "request_id": "req_xxx" }
"code": 0, "msg": "success", "data": { "verify": "1", "user_name": "张三", "cert_no": "110101198806052133" }, "request_id": "req_xxx" }
data.verify 1=一致,0=不一致 · data.user_name 核验姓名 · data.cert_no 核验身份证号
POST /idcard2check https://api.520idc.top/idcard2check 📦 套餐制 · 1次/调用
身份证二要素核验 — 核验姓名与身份证号是否一致,数据来源权威,实时返回结果。
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | string | 是 | 真实姓名 |
| idcard | string | 是 | 身份证号 |
💻 请求示例
PHP
<?php
$app_id = 'YOUR_APP_ID';
$app_key = 'YOUR_APP_KEY';
$url = 'https://api.520idc.top/idcard2check';
$params = ['name' => '张三', 'idcard' => '440301199512073421'];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($params));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'X-APP-ID: ' . $app_id,
'X-APP-KEY: ' . $app_key,
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$resp = curl_exec($ch);
curl_close($ch);
echo $resp;
$app_id = 'YOUR_APP_ID';
$app_key = 'YOUR_APP_KEY';
$url = 'https://api.520idc.top/idcard2check';
$params = ['name' => '张三', 'idcard' => '440301199512073421'];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($params));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'X-APP-ID: ' . $app_id,
'X-APP-KEY: ' . $app_key,
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$resp = curl_exec($ch);
curl_close($ch);
echo $resp;
Java
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class IdcardDemo {
public static void main(String[] args) throws Exception {
String appId = "YOUR_APP_ID";
String appKey = "YOUR_APP_KEY";
String url = "https://api.520idc.top/idcard2check";
String body = "{\"name\":\"张三\",\"idcard\":\"440301199512073421\"}";
HttpClient client = HttpClient.newHttpClient();
HttpRequest req = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Content-Type", "application/json")
.header("X-APP-ID", appId)
.header("X-APP-KEY", appKey)
.POST(HttpRequest.BodyPublishers.ofString(body))
.build();
HttpResponse<String> resp = client.send(req, HttpResponse.BodyHandlers.ofString());
System.out.println(resp.body());
}
}
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class IdcardDemo {
public static void main(String[] args) throws Exception {
String appId = "YOUR_APP_ID";
String appKey = "YOUR_APP_KEY";
String url = "https://api.520idc.top/idcard2check";
String body = "{\"name\":\"张三\",\"idcard\":\"440301199512073421\"}";
HttpClient client = HttpClient.newHttpClient();
HttpRequest req = HttpRequest.newBuilder()
.uri(URI.create(url))
.header("Content-Type", "application/json")
.header("X-APP-ID", appId)
.header("X-APP-KEY", appKey)
.POST(HttpRequest.BodyPublishers.ofString(body))
.build();
HttpResponse<String> resp = client.send(req, HttpResponse.BodyHandlers.ofString());
System.out.println(resp.body());
}
}
响应示例
{
"code": 0, "msg": "success", "data": { "name": "张三", "status": "1" }, "request_id": "req_xxx" }
"code": 0, "msg": "success", "data": { "name": "张三", "status": "1" }, "request_id": "req_xxx" }
data.name 核验姓名 · data.status 1=一致,0=不一致(不一致时返回错误码 1100)
POST /iponesys https://api.520idc.top/iponesys 📦 套餐制 · 1次/调用
手机号三要素验证 — 通过运营商实时校验手机号、姓名、身份证号三要素是否匹配,支持携号转网检测。
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| name | string | 是 | 姓名 |
| phone | string | 是 | 手机号 |
| idcard | string | 是 | 身份证号 |
💻 请求示例
PHP
<?php
$app_id = 'YOUR_APP_ID';
$app_key = 'YOUR_APP_KEY';
$url = 'https://api.520idc.top/iponesys';
$params = [
'name' => '张三',
'phone' => '13800138000',
'idcard' => '330106199202153388',
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($params));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'X-APP-ID: ' . $app_id,
'X-APP-KEY: ' . $app_key,
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$resp = curl_exec($ch);
curl_close($ch);
echo $resp;
$app_id = 'YOUR_APP_ID';
$app_key = 'YOUR_APP_KEY';
$url = 'https://api.520idc.top/iponesys';
$params = [
'name' => '张三',
'phone' => '13800138000',
'idcard' => '330106199202153388',
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($params));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json',
'X-APP-ID: ' . $app_id,
'X-APP-KEY: ' . $app_key,
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$resp = curl_exec($ch);
curl_close($ch);
echo $resp;
Java
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class MobileDemo {
public static void main(String[] args) throws Exception {
String appId = "YOUR_APP_ID";
String appKey = "YOUR_APP_KEY";
String url = "https://api.520idc.top/iponesys";
String body = "{\"name\":\"张三\",\"phone\":\"13800138000\",\"idcard\":\"330106199202153388\"}";
HttpClient client = HttpClient.newHttp
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class MobileDemo {
public static void main(String[] args) throws Exception {
String appId = "YOUR_APP_ID";
String appKey = "YOUR_APP_KEY";
String url = "https://api.520idc.top/iponesys";
String body = "{\"name\":\"张三\",\"phone\":\"13800138000\",\"idcard\":\"330106199202153388\"}";
HttpClient client = HttpClient.newHttp