# Get custom menu configuration

Debugging Tools

Interface should be called on the server side, not in the front end (Weixin Mini Program, web pages, APP, etc.) directly called, specific reference interface call guide

Interface name: getMenu

After creating a custom menu with an interface, a developer can also use the interface to query the structure of the custom menu.

# 1. How to call

# HTTPS calls

GET https://api.weixin.qq.com/cgi-bin/menu/get?access_token=ACCESS_TOKEN

# Cloud Calls

  • Call method: officialAccount.menu.get

  • The input and exit parameters are the same as the HTTPS call, which can be called in the cloud call documentation

# Third party invocation

  • This interface supports Third Party Platform generation business call.

  • The permission set id to which the interface belongs is: 15

  • When a service provider is authorized by one of the permissions set, it can call on behalf of the merchant by using authorizer_access_token , which can be viewed in the third-party call documentation.

# 2. Request parameters

# Query parametersQuery String parameters

Parameter NametypeRequired to fill inIntroductions
access_tokenstringyesInterface invocation credentials, using access_token , authorizer_access_token

# Request BodyRequest Payload

nothing

# 3. Return Parameters

# Response Payload

Parameter NametypeIntroductions
menuobjectDefault Menu Information
conditionalmenuobjarrayList of Personalized Menus

# Res.menuObject Payload

Default Menu Information

Parameter NametypeIntroductions
buttonobjarrayLevel 1 menu array (1 to 3 items)

# Res.conditionalmenu(Array)Object Payload

List of Personalized Menus

Parameter NametypeIntroductions
buttonobjarrayLevel 1 menu array (1 to 3 items)
matchruleobjectMenu Match Rules (at least one non-empty field)

# Res.menu.button(Array)Object Payload

Level 1 menu array (1 to 3 items)

Parameter NametypeExampleIntroductionsto enumerate
typestringclickResponse action type of menu (exclusive of sub_button)click view scancode_push scancode_waitmsg pic_sysphoto pic_photo_or_album pic_weixin location_select media_id article_id article_view_limited
namestringSongs of the dayMenu title, no more than 16 bytes, submenu no more than 60 bytes-
keystring-The menu KEY value, used for message interface push, does not exceed 128 bytes. Click, etc. Click types must be.-
urlstring-Web links, which users can open by clicking on a menu, are no more than 1024 bytes.When type is miniprogram, older versions of the Portals that do not support Weixin Mini Program will open this url.View, miniprogram types are required.-
media_idstring-The valid media_id returned by calling the new permanent material interface. The media_id type and the view_limited type must-
appidstring-Weixin Mini Program of AppID (only Official Account can be configured), the miniprogram type must-
pagepathstring-The page path of Weixin Mini Program, the miniprogram type must-
article_idstring-The legal article_id, article_id type, and article_view_limited type obtained after publication must be-
sub_buttonobjarray-Array of secondary menu structures-

# Res.menu.button(Array).sub_buttonObject Payload

Array of secondary menu structures

Parameter NametypeExampleIntroductions
typestringclickThe response action type of the menu (type of the same level menu)
namestringSongs of the dayMenu title, no more than 16 bytes, submenu no more than 60 bytes
keystring-The menu KEY value, used for message interface push, does not exceed 128 bytes. Click, etc. Click types must be.
urlstring-Web links, which users can open by clicking on a menu, are no more than 1024 bytes.When type is miniprogram, older versions of the Portals that do not support Weixin Mini Program will open this url.View, miniprogram types are required.
media_idstring-The valid media_id returned by calling the new permanent material interface. The media_id type and the view_limited type must
appidstring-Weixin Mini Program of AppID (only Official Account can be configured), the miniprogram type must
pagepathstring-The page path of Weixin Mini Program, the miniprogram type must
article_idstring-The legal article_id, article_id type, and article_view_limited type obtained after publication must be

# Res.conditionalmenu(Array).buttonObject Payload

Level 1 menu array (1 to 3 items)

Parameter NametypeExampleIntroductionsto enumerate
typestringclickResponse action type of menu (exclusive of sub_button)click view scancode_push scancode_waitmsg pic_sysphoto pic_photo_or_album pic_weixin location_select media_id article_id article_view_limited
namestringSongs of the dayMenu title, no more than 16 bytes, submenu no more than 60 bytes-
keystring-The menu KEY value, used for message interface push, does not exceed 128 bytes. Click, etc. Click types must be.-
urlstring-Web links, which users can open by clicking on a menu, are no more than 1024 bytes.When type is miniprogram, older versions of the Portals that do not support Weixin Mini Program will open this url.View, miniprogram types are required.-
media_idstring-The valid media_id returned by calling the new permanent material interface. The media_id type and the view_limited type must-
appidstring-Weixin Mini Program of AppID (only Official Account can be configured), the miniprogram type must-
pagepathstring-The page path of Weixin Mini Program, the miniprogram type must-
article_idstring-The legal article_id, article_id type, and article_view_limited type obtained after publication must be-
sub_buttonobjarray-Array of secondary menu structures-

# Res.conditionalmenu(Array).button.sub_buttonObject Payload

Array of secondary menu structures

Parameter NametypeExampleIntroductions
typestringclickThe response action type of the menu (type of the same level menu)
namestringSongs of the dayMenu title, no more than 16 bytes, submenu no more than 60 bytes
keystring-The menu KEY value, used for message interface push, does not exceed 128 bytes. Click, etc. Click types must be.
urlstring-Web links, which users can open by clicking on a menu, are no more than 1024 bytes.When type is miniprogram, older versions of the Portals that do not support Weixin Mini Program will open this url.View, miniprogram types are required.
media_idstring-The valid media_id returned by calling the new permanent material interface. The media_id type and the view_limited type must
appidstring-Weixin Mini Program of AppID (only Official Account can be configured), the miniprogram type must
pagepathstring-The page path of Weixin Mini Program, the miniprogram type must
article_idstring-The legal article_id, article_id type, and article_view_limited type obtained after publication must be

# Res.conditionalmenu(Array).matchruleObject Payload

Menu Match Rules (at least one non-empty field)

Parameter NametypeExampleIntroductions
tag_idstring-The id of the user tag, which can be obtained through the user tag management interface
client_platform_typestring1Customer version, the current only specific to the system model: IOS (1), Android (2), Others (3), do not fill, do not match

# 4. Note

After you set up a personalized menu, you can use this custom menu query interface to get the default menu and all the personalized menu information.

# 5. Code examples

# 5.1 Query the default menu

Example Requests

nothing

Return an example

{
  "menu": {
    "button": [
      {
        "type": "click",
        "name": "今日歌曲",
        "key": "V1001_TODAY_MUSIC",
        "sub_button": []
      }
    ]
  }
}

# 5.2 Request a Personalized Menu

Example Requests

nothing

Return an example

{
  "menu": {
    "button": [
      {
        "type": "click",
        "name": "今日歌曲",
        "key": "V1001_TODAY_MUSIC",
        "sub_button": []
      }
    ],
    "menuid": 208396938
  },
  "conditionalmenu": [
    {
      "button": [
        {
          "type": "click",
          "name": "今日歌曲",
          "key": "V1001_TODAY_MUSIC",
          "sub_button": []
        }
      ],
      "matchrule": {
        "group_id": 2,
        "sex": 1
      },
      "menuid": 208396993
    }
  ]
}

# 6. Error code

The following is a list of error codes for this interface, other error codes can refer to General error codes

Error codeError DescriptionSolutions
0oknormal

# 7. Scope of application

How this interface can be invoked under different account types:
Official Account Service Account
Certification only
  • Authentication only: means that only authenticated accounts are allowed to be invoked by the enterprise entity, and accounts that are not authenticated or do not support authentication cannot be invoked.
  • ✔: The account can call this interface
  • Other account types that are not expressly stated may not be called on this interface without special instructions;