# shortlink.generate

本接口应在服务器端调用,详细说明参见服务端API

本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载),wx-server-sdk >= 0.4.0

获取小程序 Short Link,适用于微信内拉起小程序的业务场景。目前只开放给电商类目(具体包含以下一级类目:电商平台、商家自营、跨境电商)。通过该接口,可以选择生成到期失效和永久有效的小程序短链,详见获取 Short Link

调用方式:

# HTTPS 调用

# 请求地址

POST https://api.weixin.qq.com/wxa/genwxashortlink?access_token=ACCESS_TOKEN

# 请求参数

属性 类型 默认值 必填 说明
access_token / cloudbase_access_token string 接口调用凭证
page_url string 通过 Short Link 进入的小程序页面路径,必须是已经发布的小程序存在的页面,可携带 query,最大1024个字符
page_title string 页面标题,不能包含违法信息,超过20字符会用... 截断代替
is_permanent boolean false 生成的 Short Link 类型,短期有效:false,永久有效:true

# 返回值

生成的小程序 Short Link

# 异常返回

# Object

JSON

属性 类型 说明
errcode number 错误码
errmsg string 错误信息

errcode 的合法值

说明 最低版本
40066 无效的url,已发布小程序没有对应url
40225 无效的页面标题
85400 长期有效Short Link达到生成上限10万
45009 单天生成Short Link数量超过上限100万
43104 没有调用权限,目前只开放给电商类目(具体包含以下一级类目:电商平台、商家自营、跨境电商)

# 返回值说明

如果调用成功,会直接返回生成的小程序 Short Link。如果请求失败,会返回 JSON 格式的数据。

# 示例

请求

{
    "page_url": "pages/publishHomework/publishHomework?query1=q1",
    "page_title": "Homework title", 
    "is_permanent":false
}

返回

{
 "errcode": 0,
 "errmsg": "ok",
 "link": "Short Link"
}

# 云调用

云调用是微信云开发提供的在云函数中调用微信开放接口的能力,需要在云函数中通过 wx-server-sdk 使用。

# 接口方法

openapi.shortlink.generate

需在 config.json 中配置 shortlink.generate API 的权限,详情

# 请求参数

属性 类型 默认值 必填 说明
pageUrl string 通过 Short Link 进入的小程序页面路径,必须是已经发布的小程序存在的页面,可携带 query,最大1024个字符
pageTitle string 页面标题,不能包含违法信息,超过20字符会用... 截断代替
isPermanent boolean false 生成的 Short Link 类型,短期有效:false,永久有效:true

# 返回值

生成的小程序 Short Link

# 异常

# Object

JSON

属性 类型 说明
errCode number 错误码
errMsg string 错误信息

errCode 的合法值

说明 最低版本

# 示例

请求

const cloud = require('wx-server-sdk')
cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV,
})
exports.main = async (event, context) => {
  try {
    const result = await cloud.openapi.shortlink.generate({
        "pageUrl": 'pages/publishHomework/publishHomework?query1=q1',
        "pageTitle": 'Homework title',
        "isPermanent": false
      })
    return result
  } catch (err) {
    return err
  }
}

返回

{
 "errcode": 0,
 "errmsg": "ok",
 "link": "Short Link"
}