Menu

Creating a menu in Facebook Messenger, you can highlight important actions or provide a link to a webpage. Menu for Facebook Messenger is hierarchical and consists of different menu items:

🚧

The Menu requires Get Started Button

You must set a Get Started Button if you want to use the menu in Facebook Messenger.

📘

Testing Tips

Facebook Messenger menu is cached by default. If you update the menu while testing just refresh the page. If it doesn't help, try refreshing the web. If it doesn't help, try deleting the messenger thread and then beginning the conversation once again.

The Menu is visible only if:

  • Facebook Messenger has a version 106 and above.
  • The attached Facebook page must be published.
Menu in Facebook Messenger.Menu in Facebook Messenger.

Menu in Facebook Messenger.

Nested menu items.Nested menu items.

Nested menu items.

{
  "menu": [
    {
      "locale": "default",
      "items": [
        {
          "type": "url",
          "title": "URL Item",
          "payload": "http://www.google.com/"
        },
        {
          "type": "postback",
          "title": "POSTBACK Item",
          "payload": "POSTBACK DATA"
        },
        {
          "type": "menu",
          "title": "NESTED Item",
          "payload": {
            "items": [
              {
                "type": "url",
                "title": "NESTED URL Item",
                "payload": "http://www.google.com/"
              }
            ]
          }
        }
      ]
    }
  ]
}

Parameter

Type

Description

menu[].locale

string

Specifies locale of given menu. Value has to be in form of locale or default.

menu[].items

array[object]

List of menu item objects. Maximum allowed size is 3.

Url Menu Item

Parameter

Type

Description

type

string

Must be set to url.

title

string

Title of the menu item. A maximum size of 30 characters.

payload

string

Must be a valid URL.

Postback Menu Item

Parameter

Type

Description

type

string

Must be set to postback.

title

string

Title of the menu item. A maximum size of 30 characters.

payload

string

This data will be sent back to Postback Received webhook. A maximum size of 1000 characters.

Nested Menu

Parameter

Type

Description

type

string

Must be set to menu. The maximal hierarchical depth is 3 levels.

title

string

Title of the menu item. A maximum size of 30 characters.

payload

object

Object with attribute items holding an array of nested menu items.

The maximum number of items is 5 objects.

Menu can have a deep nesting up to level of 3.