The configuration used to define
[Sheets macros](https://developers.google.com/apps-script/guides/sheets/macros#manifest_structure_for_macros). Manifests defining macros must include all
fields marked as **Required**.

## Sheets

The top-level of the Sheets macro manifest configuration. This
is only used to define Sheets macros.

| JSON representation |
|---|
| ``` { "macros": [ { object (Macro) } ] } ``` |

| Fields ||
|---|---|
| `macros[]` | `object (https://developers.google.com/apps-script/manifest/sheets#macro)` **Required.** A list of defined macros and their associated properties. |

### Macro

The configuration for a single macro. Definitions must include all fields
marked as **Required**.

| JSON representation |
|---|
| ``` { "defaultShortcut": string, "functionName": string, "menuName": string } ``` |

| Fields ||
|---|---|
| `defaultShortcut` | `string` The keyboard shortcut that executes the macro. It must be in the form `Ctrl+Alt+Shift+*Number*`. Macros without shortcuts can only be executed from the \*\*Tools\*\* \> \*\*Macros\*\* menu. > [!WARNING] > The keyboard shortcut used by each defined macro must be unique. |
| `functionName` | `string` **Required.** The name of the Apps Script function that executes the macro. By default, this matches the `menuName` for functions automatically created, but this is not a requirement. |
| `menuName` | `string` **Required.** The name of the macro as it appears in the Google Sheets UI. |