# bots.setBotMenuButton

> Sets the [menu button action »](https://core.telegram.org/api/bots/menu) for a given user or for all users

[Back to methods index](index.html)



Sets the [menu button action »](https://core.telegram.org/api/bots/menu) for a given user or for all users

### Parameters:

| Name     |    Type       | Description | Required |
|----------|---------------|-------------|----------|
|user\_id|[Username, chat ID, Update, Message or InputUser](/API_docs/types/InputUser.html) | User ID | Optional|
|button|[BotMenuButton](/API_docs/types/BotMenuButton.html) | Bot menu button action | Yes|


### Return type: [Bool](/API_docs/types/Bool.html)

### Can users use this method: **NO**


### Can bots use this method: **YES**


### Can bots use this method over a business connection with the `businessConnectionId` flag: **NO**


### MadelineProto Example ([now async for huge speed and parallelism!](https://docs.madelineproto.xyz/docs/ASYNC.html)):


```php
if (!file_exists('madeline.php')) {
    copy('https://phar.madelineproto.xyz/madeline.php', 'madeline.php');
}
include 'madeline.php';

$MadelineProto = new \danog\MadelineProto\API('session.madeline');
$MadelineProto->start();

$Bool = $MadelineProto->bots->setBotMenuButton(user_id: $InputUser, button: $BotMenuButton, );
```
