# 申请小程序备案

[调试诊断](https://developers.weixin.qq.com/console/devtools/debug?utm_source=api_tools)

> 接口应在服务器端调用，不可在前端（小程序、网页、APP等）直接调用，具体可参考[接口调用指南](/doc/oplatform/developers/dev/guide.md)。

接口英文名：applyIcpFiling

使用该接口申请小程序备案。该接口使用的媒体材料都是通过"[上传小程序备案媒体材料](api_uploadicpmedia)"接口返回的media_id。使用过程中如遇到问题，可在[小程序备案](https://developers.weixin.qq.com/community/minihome/mixflow/3398116438949937159)专区发帖交流

## 1. 调用方式

### HTTPS 调用

```bash
POST https://api.weixin.qq.com/wxa/icp/apply_icp_filing?access_token=ACCESS_TOKEN
```

### 云调用

- 本接口不支持云调用。

### 第三方调用

- 本接口支持第三方平台代商家调用。

- 该接口所属的权限集 id 为：18、156

- 服务商获得其中之一权限集授权后，可通过使用 [authorizer_access_token](/doc/oplatform/developers/dev/AuthorizerAccessToken.md) 代商家进行调用，具体可查看 [第三方调用](/doc/oplatform/Third-party_Platforms/2.0/Before_Develop/call_interface.md) 说明文档。

## 2. 请求参数

### 查询参数 `Query String Parameters`

```json
[
  {
    "参数名": "access_token",
    "类型": "string",
    "必填": "是",
    "说明": "接口调用凭证，可使用 [authorizer_access_token](/doc/oplatform/openApi/ticket-token/api_getauthorizeraccesstoken)"
  }
]
```

### 请求体 `Request Payload`

```json
[
  {
    "参数名": "icp_subject",
    "类型": "object",
    "必填": "是",
    "说明": "备案主体信息"
  },
  {
    "参数名": "icp_applets",
    "类型": "object",
    "必填": "是",
    "说明": "微信小程序信息"
  },
  {
    "参数名": "icp_materials",
    "类型": "object",
    "必填": "是",
    "说明": "其他备案媒体材料"
  }
]
```

### Body.icp_subject `Object Payload`

备案主体信息

```json
[
  {
    "参数名": "base_info",
    "类型": "object",
    "必填": "是",
    "说明": "主体基本信息"
  },
  {
    "参数名": "personal_info",
    "类型": "object",
    "必填": "否",
    "说明": "个人主体额外信息"
  },
  {
    "参数名": "organize_info",
    "类型": "object",
    "必填": "是",
    "说明": "主体额外信息（个人备案时，如果存在与主体负责人信息相同的字段，则填入相同的值）"
  },
  {
    "参数名": "principal_info",
    "类型": "object",
    "必填": "是",
    "说明": "主体负责人信息"
  },
  {
    "参数名": "legal_person_info",
    "类型": "object",
    "必填": "否",
    "说明": "法人信息（非个人备案，且主体负责人不是法人时，必填）"
  }
]
```

### Body.icp_applets `Object Payload`

微信小程序信息

```json
[
  {
    "参数名": "base_info",
    "类型": "object",
    "必填": "是",
    "说明": "微信小程序基本信息"
  },
  {
    "参数名": "principal_info",
    "类型": "object",
    "必填": "是",
    "说明": "小程序负责人信息"
  }
]
```

### Body.icp_materials `Object Payload`

其他备案媒体材料

```json
[
  {
    "参数名": "commitment_letter",
    "类型": "array",
    "必填": "否",
    "说明": "互联网信息服务承诺书 media_id，最多上传1个"
  },
  {
    "参数名": "business_name_change_letter",
    "类型": "array",
    "必填": "否",
    "说明": "主体更名函 media_id(非个人类型，且发生过更名时需要上传)，最多上传1个"
  },
  {
    "参数名": "party_building_confirmation_letter",
    "类型": "array",
    "必填": "否",
    "说明": "党建确认函 media_id，最多上传1个"
  },
  {
    "参数名": "promise_video",
    "类型": "array",
    "必填": "否",
    "说明": "承诺视频 media_id，最多上传1个"
  },
  {
    "参数名": "authenticity_responsibility_letter",
    "类型": "array",
    "必填": "否",
    "说明": "网站备案信息真实性责任告知书 media_id，最多上传1个"
  },
  {
    "参数名": "authenticity_commitment_letter",
    "类型": "array",
    "必填": "否",
    "说明": "小程序备案信息真实性承诺书 media_id，最多上传1个"
  },
  {
    "参数名": "website_construction_proposal",
    "类型": "array",
    "必填": "否",
    "说明": "小程序建设方案书 media_id，最多上传1个"
  },
  {
    "参数名": "subject_other_materials",
    "类型": "array",
    "必填": "否",
    "说明": "主体其它附件 media_id，最多上传10个"
  },
  {
    "参数名": "applets_other_materials",
    "类型": "array",
    "必填": "否",
    "说明": "小程序其它附件 media_id，最多上传10个"
  },
  {
    "参数名": "holding_certificate_photo",
    "类型": "array",
    "必填": "否",
    "说明": "手持证件照 media_id，最多上传1个"
  }
]
```

### Body.icp_subject.base_info `Object Payload`

主体基本信息

```json
[
  {
    "参数名": "type",
    "类型": "number",
    "必填": "是",
    "说明": "主体性质，示例值：\u0000INLINECODE_6\u0000"
  },
  {
    "参数名": "name",
    "类型": "string",
    "必填": "是",
    "说明": "主办单位名称，示例值：\u0000INLINECODE_7\u0000"
  },
  {
    "参数名": "province",
    "类型": "string",
    "必填": "是",
    "说明": "备案省份，使用省份代码，示例值：\u0000INLINECODE_8\u0000(参考：[获取区域信息接口](api_queryicpdistrictcode))"
  },
  {
    "参数名": "city",
    "类型": "string",
    "必填": "是",
    "说明": "备案城市，使用城市代码，示例值：\u0000INLINECODE_9\u0000(参考：[获取区域信息接口](api_queryicpdistrictcode))"
  },
  {
    "参数名": "district",
    "类型": "string",
    "必填": "是",
    "说明": "备案县区，使用县区代码，示例值：\u0000INLINECODE_10\u0000(参考：[获取区域信息接口](api_queryicpdistrictcode))"
  },
  {
    "参数名": "address",
    "类型": "string",
    "必填": "是",
    "说明": "通讯地址，必须属于备案省市区，地址开头的省市区不用填入，例如：通信地址为“北京市朝阳区高碑店路181号1栋12345室”时，只需要填写 \u0000INLINECODE_11\u0000 即可"
  },
  {
    "参数名": "comment",
    "类型": "string",
    "必填": "否",
    "说明": "主体信息备注，根据需要，如实填写"
  },
  {
    "参数名": "record_number",
    "类型": "string",
    "必填": "否",
    "说明": "主体备案号，示例值：粤B2-20090059（申请小程序备案时不用填写，查询已备案详情时会返回）"
  }
]
```

### Body.icp_subject.personal_info `Object Payload`

个人主体额外信息

```json
[
  {
    "参数名": "residence_permit",
    "类型": "string",
    "必填": "否",
    "说明": "临时居住证明照片 media_id，个人备案且非本省人员，需要提供居住证、暂住证、社保证明、房产证等临时居住证明，示例值：\u0000INLINECODE_13\u0000"
  }
]
```

### Body.icp_subject.organize_info `Object Payload`

主体额外信息（个人备案时，如果存在与主体负责人信息相同的字段，则填入相同的值）

```json
[
  {
    "参数名": "certificate_type",
    "类型": "number",
    "必填": "是",
    "说明": "主体证件类型，示例值：\u0000INLINECODE_15\u0000(参考：[获取证件类型接口](api_queryicpcertificatetypes))"
  },
  {
    "参数名": "certificate_number",
    "类型": "string",
    "必填": "是",
    "说明": "主体证件号码，示例值：\u0000INLINECODE_16\u0000"
  },
  {
    "参数名": "certificate_address",
    "类型": "string",
    "必填": "是",
    "说明": "主体证件住所，示例值：\u0000INLINECODE_17\u0000"
  },
  {
    "参数名": "certificate_photo",
    "类型": "string",
    "必填": "否",
    "说明": "主体证件照片 media_id，如果小程序主体为非个人类型，则必填，示例值：\u0000INLINECODE_18\u0000"
  }
]
```

### Body.icp_subject.principal_info `Object Payload`

主体负责人信息

```json
[
  {
    "参数名": "name",
    "类型": "string",
    "必填": "是",
    "说明": "负责人姓名，示例值：\u0000INLINECODE_20\u0000"
  },
  {
    "参数名": "mobile",
    "类型": "string",
    "必填": "是",
    "说明": "负责人联系方式，示例值：\u0000INLINECODE_21\u0000"
  },
  {
    "参数名": "email",
    "类型": "string",
    "必填": "是",
    "说明": "负责人电子邮件，示例值：\u0000INLINECODE_22\u0000"
  },
  {
    "参数名": "emergency_contact",
    "类型": "string",
    "必填": "是",
    "说明": "负责人应急联系方式，示例值：\u0000INLINECODE_23\u0000"
  },
  {
    "参数名": "certificate_type",
    "类型": "number",
    "必填": "是",
    "说明": "负责人证件类型，示例值：\u0000INLINECODE_24\u0000(参考：[获取证件类型接口](api_queryicpcertificatetypes)，此处只能填入单位性质属于个人的证件类型)"
  },
  {
    "参数名": "certificate_number",
    "类型": "string",
    "必填": "是",
    "说明": "负责人证件号码，示例值：\u0000INLINECODE_25\u0000"
  },
  {
    "参数名": "certificate_validity_date_start",
    "类型": "string",
    "必填": "是",
    "说明": "负责人证件有效期起始日期，格式为 YYYYmmdd，示例值：\u0000INLINECODE_26\u0000"
  },
  {
    "参数名": "certificate_validity_date_end",
    "类型": "string",
    "必填": "是",
    "说明": "负责人证件有效期终止日期，格式为 YYYYmmdd，如证件长期有效，请填写 \u0000INLINECODE_27\u0000，示例值：\u0000INLINECODE_28\u0000"
  },
  {
    "参数名": "certificate_photo_front",
    "类型": "string",
    "必填": "是",
    "说明": "负责人证件正面照片 media_id（身份证为人像面），示例值：\u0000INLINECODE_29\u0000"
  },
  {
    "参数名": "certificate_photo_back",
    "类型": "string",
    "必填": "是",
    "说明": "负责人证件背面照片 media_id（身份证为国徽面），示例值：\u0000INLINECODE_30\u0000"
  },
  {
    "参数名": "authorization_letter",
    "类型": "string",
    "必填": "否",
    "说明": "授权书 media_id，当主体负责人不是法人时需要主体负责人授权书，当小程序负责人不是法人时需要小程序负责人授权书，示例值：\u0000INLINECODE_31\u0000"
  },
  {
    "参数名": "verify_task_id",
    "类型": "string",
    "必填": "否",
    "说明": "扫脸认证任务id([扫脸认证接口](/doc/oplatform/openApi/miniprogram-management/wxverifyicp/api_createicpverifytask)返回的task_id)，仅小程序负责人需要扫脸，主体负责人无需扫脸，示例值：\u0000INLINECODE_32\u0000"
  }
]
```

### Body.icp_subject.legal_person_info `Object Payload`

法人信息（非个人备案，且主体负责人不是法人时，必填）

```json
[
  {
    "参数名": "name",
    "类型": "string",
    "必填": "是",
    "说明": "法人代表姓名，示例值：\u0000INLINECODE_34\u0000"
  },
  {
    "参数名": "certificate_number",
    "类型": "string",
    "必填": "是",
    "说明": "法人证件号码，示例值：\u0000INLINECODE_35\u0000"
  }
]
```

### Body.icp_applets.base_info `Object Payload`

微信小程序基本信息

```json
[
  {
    "参数名": "appid",
    "类型": "string",
    "必填": "否",
    "说明": "小程序ID，不用填写，后台自动拉取"
  },
  {
    "参数名": "name",
    "类型": "string",
    "必填": "否",
    "说明": "小程序名称，不用填写，后台自动拉取"
  },
  {
    "参数名": "service_content_types",
    "类型": "-",
    "必填": "是",
    "说明": "小程序服务内容类型，只能填写二级服务内容类型，最多5个，示例值：\u0000INLINECODE_37\u0000(参考：[获取小程序服务类型接口](api_queryicpservicecontenttypes))"
  },
  {
    "参数名": "nrlx_details",
    "类型": "objarray",
    "必填": "是",
    "说明": "前置审批项，列表中不能存在重复的前置审批类型id，如不涉及前置审批项，也需要填“以上都不涉及”"
  },
  {
    "参数名": "comment",
    "类型": "string",
    "必填": "是",
    "说明": "请具体描述小程序实际经营内容、主要服务内容，该信息为主管部门审核重要依据，备注内容字数限制20-200字，请认真填写。（特殊备注要求请查看注意事项）"
  },
  {
    "参数名": "record_number",
    "类型": "string",
    "必填": "否",
    "说明": "小程序备案号，示例值：粤B2-20090059-1626X（申请小程序备案时不用填写，查询已备案详情时会返回）"
  }
]
```

">

### Body.icp_applets.base_info.nrlx_details(Array) `Object Payload`

前置审批项，列表中不能存在重复的前置审批类型id，如不涉及前置审批项，也需要填“以上都不涉及”

```json
[
  {
    "参数名": "type",
    "类型": "number",
    "必填": "是",
    "说明": "前置审批类型，示例值：\u0000INLINECODE_39\u0000(参考：[获取前置审批项接口](api_queryicpnrlxtypes))"
  },
  {
    "参数名": "code",
    "类型": "string",
    "必填": "否",
    "说明": "前置审批号，如果前置审批类型不是“以上都不涉及”，则必填，示例值：\u0000INLINECODE_40\u0000"
  },
  {
    "参数名": "media",
    "类型": "string",
    "必填": "否",
    "说明": "前置审批媒体材料 media_id，如果前置审批类型不是“以上都不涉及”，则必填，示例值：\u0000INLINECODE_41\u0000"
  }
]
```

### Body.icp_applets.principal_info `Object Payload`

小程序负责人信息

```json
[
  {
    "参数名": "name",
    "类型": "string",
    "必填": "是",
    "说明": "负责人姓名，示例值：\u0000INLINECODE_43\u0000"
  },
  {
    "参数名": "mobile",
    "类型": "string",
    "必填": "是",
    "说明": "负责人联系方式，示例值：\u0000INLINECODE_44\u0000"
  },
  {
    "参数名": "email",
    "类型": "string",
    "必填": "是",
    "说明": "负责人电子邮件，示例值：\u0000INLINECODE_45\u0000"
  },
  {
    "参数名": "emergency_contact",
    "类型": "string",
    "必填": "是",
    "说明": "负责人应急联系方式，示例值：\u0000INLINECODE_46\u0000"
  },
  {
    "参数名": "certificate_type",
    "类型": "number",
    "必填": "是",
    "说明": "负责人证件类型，示例值：\u0000INLINECODE_47\u0000(参考：[获取证件类型接口](api_queryicpcertificatetypes)，此处只能填入单位性质属于个人的证件类型)"
  },
  {
    "参数名": "certificate_number",
    "类型": "string",
    "必填": "是",
    "说明": "负责人证件号码，示例值：\u0000INLINECODE_48\u0000"
  },
  {
    "参数名": "certificate_validity_date_start",
    "类型": "string",
    "必填": "是",
    "说明": "负责人证件有效期起始日期，格式为 YYYYmmdd，示例值：\u0000INLINECODE_49\u0000"
  },
  {
    "参数名": "certificate_validity_date_end",
    "类型": "string",
    "必填": "是",
    "说明": "负责人证件有效期终止日期，格式为 YYYYmmdd，如证件长期有效，请填写 \u0000INLINECODE_50\u0000，示例值：\u0000INLINECODE_51\u0000"
  },
  {
    "参数名": "certificate_photo_front",
    "类型": "string",
    "必填": "是",
    "说明": "负责人证件正面照片 media_id（身份证为人像面），示例值：\u0000INLINECODE_52\u0000"
  },
  {
    "参数名": "certificate_photo_back",
    "类型": "string",
    "必填": "是",
    "说明": "负责人证件背面照片 media_id（身份证为国徽面），示例值：\u0000INLINECODE_53\u0000"
  },
  {
    "参数名": "authorization_letter",
    "类型": "string",
    "必填": "否",
    "说明": "授权书 media_id，当主体负责人不是法人时需要主体负责人授权书，当小程序负责人不是法人时需要小程序负责人授权书，示例值：\u0000INLINECODE_54\u0000"
  },
  {
    "参数名": "verify_task_id",
    "类型": "string",
    "必填": "否",
    "说明": "扫脸认证任务id([扫脸认证接口](/doc/oplatform/openApi/miniprogram-management/wxverifyicp/api_createicpverifytask)返回的task_id)，仅小程序负责人需要扫脸，主体负责人无需扫脸，示例值：\u0000INLINECODE_55\u0000"
  }
]
```

## 3. 返回参数

### 返回体 `Response Payload`

```json
[
  {
    "参数名": "errcode",
    "类型": "number",
    "说明": "错误码"
  },
  {
    "参数名": "errmsg",
    "类型": "string",
    "说明": "错误信息"
  },
  {
    "参数名": "hints",
    "类型": "objarray",
    "说明": "错误提示"
  }
]
```

">

### Res.hints(Array) `Object Payload`

错误提示

```json
[
  {
    "参数名": "errcode",
    "类型": "number",
    "说明": "字段校验的错误码"
  },
  {
    "参数名": "err_field",
    "类型": "string",
    "说明": "校验失败的字段，示例值：\u0000INLINECODE_58\u0000"
  },
  {
    "参数名": "errmsg",
    "类型": "string",
    "说明": "校验失败提示信息，示例值：\u0000INLINECODE_59\u0000"
  }
]
```

## 4. 注意事项

1. 申请小程序备案之前，请确保前置条件已经完成：

    - 小程序名称、图标、描述等小程序基本信息已填写完成。
    - 小程序至少存在一个审核通过的类目。
    - 非个人类型小程序必须完成微信认证。

2. 调用该接口之前，请先完成[小程序负责人人脸核身](/doc/oplatform/openApi/miniprogram-management/wxverifyicp/api_createicpverifytask)，以及上传所有需要用到的附件材料。
3. 人脸核身视频会用于生成核验照片，背景需白色或接近浅色，核验人不能裸露上半身，不能戴帽子、耳机、口罩等遮挡面部的物品，如视频不满足要求，即使人脸核身通过，本接口也会返回失败。
4. 所有字段校验失败的原因会一次性返回。
5. 每个服务商每日只能发起1000个存量已上架小程序备案申请，新增未上架小程序不受限制。
6. 小程序备注（必填）注意事项：
    - 天津市个人主体备案小程序请按以下格式补充备注：应急联系电话手机号使用人为XXX，与小程序主办者关系为XX （注：应急联系方式必须为小程序主办者的直系亲属）；天津市非个人主体备案小程序请按以下格式补充备注：应急联系电话手机号使用人为XXX公司员工XXX。
    - 福建省个人主体备案小程序请按以下格式补充备注：请具体描述小程序实际经营内容、主要服务内容，该信息为主管部门审核重要依据，备注内容字数限制20-200字，请认真填写。且不能出现“**公司官网，**单位旗下产品”。
    - 广东省备案小程序如果是非纯中文小程序昵称，要求在小程序备注位置注明中文名称以及小程序主要服务内容，并且在备注文案文末加上“承诺遵守中华人民共和国法律法规。”，备注内容字数限制20-200字，请认真填写。
7. 若发起备案请求时，管理员实名信息未补充，且备案信息中小程序负责人为法人时，管理员实名信息将更新为小程序负责人（即法人）。
8. 接口与mp对齐，首次提交不能传主体其他附件和小程序其他附件，撤回或驳回后再提交才能支持上传。

# 其他说明 

## 事件推送

当备案审核被驳回或通过时会推送该事件。服务商要接收事件推送，请移步：[授权事件接收配置](/doc/oplatform/Third-party_Platforms/2.0/operation/thirdparty/prepare.md#_3%E3%80%81%E6%8E%88%E6%9D%83%E4%BA%8B%E4%BB%B6%E6%8E%A5%E6%94%B6-%E9%85%8D%E7%BD%AE)

### 推送参数说明

| 参数             | 类型   | 说明                                                           |
| ---------------- | ------ | -------------------------------------------------------------- |
| InfoType         | string | 消息类型，固定为 `notify_apply_icpfiling_result`               |
| AppId            | string | 服务商唯一id                                                   |
| authorizer_appid | string | 小程序唯一id                                                   |
| beian_status     | number | 备案状态，参考“[获取小程序备案状态及驳回原因](api_geticpentranceinfo)”接口的备案状态枚举 |

### 推送数据示例

```json
{
  "AppId": "wx1234567890abcdef",
  "CreateTime": 1689839779,
  "InfoType": "notify_apply_icpfiling_result",
  "authorizer_appid": "wxabcdef1234567890",
  "beian_status": 3
}
```

## 5. 代码示例

### 5.1 个人备案

请求示例

```json
{
    "icp_subject": {
        "base_info": {
            "type": 5, // 个人类型
            "name": "张三",
            "province": "110000", // 北京市
            "city": "110100",
            "district": "110105", // 朝阳区
            "address": "高碑店路181号1栋12345室",
            "comment": "主体备注"
        },
        "personal_info": {
            "residence_permit": "4ahCGpd3CYkE6RpkNkUR5czt3LvG8xDnDdKAz6bBKttSfM8p4k5Rj6823HXugPwQBurgMezyib7"
        },
        "organize_info": {
            "certificate_type": 2,
            "certificate_number": "110105199001011234",
            "certificate_address": "北京市朝阳区高碑店路181号1栋12345室"
        },
        "principal_info": {
            "name": "张三",
            "mobile": "13012344321",
            "email": "zhangsan@zhangsancorp.com",
            "emergency_contact": "17743211234",
            "certificate_type": 2, // 身份证
            "certificate_number": "110105199001011234",
            "certificate_validity_date_start": "20230815",
            "certificate_validity_date_end": "20330815",
            "certificate_photo_front": "4ahCGpd3CYkE6RpkNkUR5czt3LvG8xDnDdKAz6bBKttSfM8p4k5Rj6823HXugPwQBurgMezyib7",
            "certificate_photo_back": "4ahCGpd3CYkE6RpkNkUR5czt3LvG8xDnDdKAz6bBKttSfM8p4k5Rj6823HXugPwQBurgMezyib7"
        }
    },
    "icp_applets": {
        "base_info": {
            "service_content_types": [
                3,
                4
            ], // 工具 & 家政
            "nrlx_details": [
                {
                    "type": 24 // 以上都不涉及
                }
            ],
            "comment": "小程序备注"
        },
        "principal_info": {
            "name": "张三",
            "mobile": "13012344321",
            "email": "zhangsan@zhangsancorp.com",
            "emergency_contact": "17743211234",
            "certificate_type": 2, // 身份证
            "certificate_number": "110105199001011234",
            "certificate_validity_date_start": "20230815",
            "certificate_validity_date_end": "20330815",
            "certificate_photo_front": "4ahCGpd3CYkE6RpkNkUR5czt3LvG8xDnDdKAz6bBKttSfM8p4k5Rj6823HXugPwQBurgMezyib7",
            "certificate_photo_back": "4ahCGpd3CYkE6RpkNkUR5czt3LvG8xDnDdKAz6bBKttSfM8p4k5Rj6823HXugPwQBurgMezyib7",
            "verify_task_id": "R5PqRPNb6GmG3i0rqd4pTg"
        }
    },
    "icp_materials": {
        "commitment_letter": [
            "4ahCGpd3CYkE6RpkNkUR5czt3LvG8xDnDdKAz6bBKttSfM8p4k5Rj6823HXugPwQBurgMezyib7"
        ]
    }
}
```

返回示例

```json
{
  "errcode": 0,
  "errmsg": "ok"
}
```

### 5.2 企业备案

请求示例

```json
{
    "icp_subject": {
        "base_info": {
            "type": 4, // 企业类型
            "name": "李四王五有限责任公司",
            "province": "440000", // 广东省
            "city": "440100", // 广州市
            "district": "440105", // 海珠区
            "address": "新港中路TIT创意园B6栋",
            "comment": "主体备注"
        },
        "organize_info": {
            "certificate_type": 1, // 营业执照
            "certificate_number": "92111122223333443F",
            "certificate_address": "广东省广州市海珠区新港中路TIT创意园B6栋",
            "certificate_photo": "4ahCGpd3CYkE6RpkNkUR5czt3LvG8xDnDdKAz6bBKttSfM8p4k5Rj6823HXugPwQBurgMezyib7"
        },
        "principal_info": {
            "name": "李四",
            "mobile": "13022222221",
            "email": "lisi@lisiwangwucorp.com",
            "emergency_contact": "1722222234",
            "certificate_type": 2, // 身份证
            "certificate_number": "440105198802023334",
            "certificate_validity_date_start": "20230815",
            "certificate_validity_date_end": "20330815",
            "certificate_photo_front": "4ahCGpd3CYkE6RpkNkUR5czt3LvG8xDnDdKAz6bBKttSfM8p4k5Rj6823HXugPwQBurgMezyib7",
            "certificate_photo_back": "4ahCGpd3CYkE6RpkNkUR5czt3LvG8xDnDdKAz6bBKttSfM8p4k5Rj6823HXugPwQBurgMezyib7"
        }
    },
    "icp_applets": {
        "base_info": {
            "service_content_types": [
                3,
                4
            ], // 工具 & 家政
            "nrlx_details": [
                {
                    "type": 24 // 以上都不涉及
                }
            ],
            "comment": "小程序备注"
        },
        "principal_info": {
            "name": "王五",
            "mobile": "13011111111",
            "email": "wangwu@lisiwangwucorp.com",
            "emergency_contact": "15522223333",
            "certificate_type": 2, // 身份证
            "certificate_number": "440105199001019999",
            "certificate_validity_date_start": "20230815",
            "certificate_validity_date_end": "20330815",
            "certificate_photo_front": "4ahCGpd3CYkE6RpkNkUR5czt3LvG8xDnDdKAz6bBKttSfM8p4k5Rj6823HXugPwQBurgMezyib7",
            "certificate_photo_back": "4ahCGpd3CYkE6RpkNkUR5czt3LvG8xDnDdKAz6bBKttSfM8p4k5Rj6823HXugPwQBurgMezyib7",
            "verify_task_id": "R5PqRPNb6GmG3i0rqd4pTg"
        }
    },
    "icp_materials": {
        "commitment_letter": [
            "4ahCGpd3CYkE6RpkNkUR5czt3LvG8xDnDdKAz6bBKttSfM8p4k5Rj6823HXugPwQBurgMezyib7"
        ]
    }
}
```

返回示例

```json
{
  "errcode": 0,
  "errmsg": "ok"
}
```

## 6. 错误码

以下是本接口的错误码列表，其他错误码可参考 [通用错误码](/doc/oplatform/developers/errCode/README.md)；调用接口遇到报错，可使用官方提供的 [API 诊断工具](https://developers.weixin.qq.com/console/devtools/debug?utm_source=api_errcode) 辅助定位和分析问题。

```json
[
  {
    "错误码": "-1",
    "错误描述": "system error",
    "解决方案": "系统繁忙，此时请开发者稍候再试"
  },
  {
    "错误码": "0",
    "错误描述": "ok",
    "解决方案": "ok"
  },
  {
    "错误码": "86202",
    "错误描述": "申请小程序备案失败",
    "解决方案": "申请小程序备案失败，请根据返回的错误提示进行修改"
  },
  {
    "错误码": "86301",
    "错误描述": "系统错误，请稍后重试",
    "解决方案": "系统错误，请稍后重试"
  },
  {
    "错误码": "86302",
    "错误描述": "输入信息与图片信息相差过大",
    "解决方案": "重新拍摄上传图片"
  },
  {
    "错误码": "86303",
    "错误描述": "无法获取号码归属地",
    "解决方案": "请重试或更换一个号码"
  },
  {
    "错误码": "86308",
    "错误描述": "证件有效期不满足要求",
    "解决方案": "请确保证件在有效期内，且有效期大于3个月"
  },
  {
    "错误码": "86324",
    "错误描述": "当前正在审核中，请勿重复提交",
    "解决方案": "当前正在审核中，请勿重复提交"
  },
  {
    "错误码": "86358",
    "错误描述": "存在订单尚未完成，不允许再次提交",
    "解决方案": "存在订单尚未完成，不允许再次提交"
  }
]
```

## 7. 适用范围

本接口支持「第三方平台」账号类型代调用，权限集请参考「调用方式」部分。其他账号类型如无特殊说明，均不可调用。
