小程序 API 提交

# 什么是小程序 API 提交?与上传 sitemap 文件有何区别

小程序 API 提交是将小程序资源提交到搜索的一种方式,即开发者可通过请求 API 接口,将小程序资源 path 路径,提交到 API 接口中。相比于上传 sitemap 文件,API 提交方式能给用户更便捷的提交体验,两种方式都会占用当日提交配额。有较大资源量需提交时,建议分次推送,每次不超过 1000 条。

# 请求路径

POST https://openapi.baidu.com/rest/2.0/smartapp/access/submitsitemap/api?access_token=ACCESS_TOKEN

# 参数说明

参数名 类型 是否必须 描述 示例
access_token string 权限校验 Token,获取方式见开发者服务权限说明
type int 通过 TYPE 字段选择上传接口。
· 0:周级提交,一周左右生效;
· 1:天级提交,2~3 天生效;
· 2:小时级提交,1 小时内生效;
· 3:优质资源提交,1 小时内生效
0
url_list string 小程序 path 集合,多个 path 用逗号分隔。
· 天级/周级配额会根据开发者在前一周的周一至周五提交资源活跃度及资源质量,于次周一进行动态调整,具体以平台显示为准。
/pages/index1?id=1,/pages/index2

# 提交代码示例

# python3 提交示例
import requests
url = "https://openapi.baidu.com/rest/2.0/smartapp/access/submitsitemap/api?access_token=ACCESS_TOKEN"
path_list = "/pages/index1,/pages/index2"
data = {"type": 1, "url_list": path_list}  
res = requests.post(url=url, data=data) 
print(res.text)
# curl 提交示例
curl -H "application/x-www-form-urlencoded" -X POST -d 'type=1&url_list=/pages/index1,/pages/index2" "https://openapi.baidu.com/rest/2.0/smartapp/access/submitsitemap/api?access_token=ACCESS_TOKEN" 
# java 提交示例
String url = "https://openapi.baidu.com/rest/2.0/smartapp/access/submitsitemap/api";

 List<String> list = new ArrayList<>();
 list.add("/pages/index/test");
 list.add("/pages/index/test2?id=1");
 list.add("/pages/index/test3/query?id=1&age=10");
 // 设置请求参数
 paramMap.put("url_list",list);
 paramMap.put("type",0);
 paramMap.put("access_token","dwhiuhv32noi3nco2innvpnsdv");
 HttpClient httpClient = new HttpClient();
 httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(15000);
 PostMethod postMethod = new PostMethod(url);
 postMethod.getParams().setParameter(HttpMethodParams.SO_TIMEOUT, 60000);
        
        .
        .
        .
 //执行POST方法post方法
 int statusCode = httpClient.executeMethod(postMethod);
# php 提交示例
<?php
$urls = array(
    'https://www.example.com/1.html',
    'https://www.example.com/2.html',
);
$data['type'] = 1;
$data['url_list'] = implode(",", $urls);
$api = 'https://openapi.baidu.com/rest/2.0/smartapp/access/submitsitemap/api?access_token=ACCESS_TOKEN';
$ch = curl_init();
$options =  array(
    CURLOPT_URL => $api,
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_NOBODY => false,
    CURLOPT_POSTFIELDS => http_build_query($data),
    CURLOPT_HTTPHEADER => array('Content-Type: application/x-www-form-urlencoded'),
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
echo $result;
?>

# 返回值示例

{
  "errno": 0,
  "msg": "success"
}

# 错误码说明

错误码 错误描述
0 成功
-1024 业务异常,请稍后再试
500 对不起,服务器出错了,请稍候再试
2002 小程序不存在/选择的收录级别不合法/url 数量不合法
30001 参数有误,请检查后再试
30013 数量超上限,请稍后再试
47005 文件上传失败,请稍后再试
2 服务暂时不可用,请稍后再试
4 该 API 的流量超过了流控限制,请降低访问频率后再试
6 没有权限访问该 API,请确认授权
100 请确认当前为 https 访问且 access_token 参数不可为空
110 access_token 不合法,请核查后重试
111 access_token 过期,请更新后再试