# block

> The block Liquid object in a Shoplazza theme, which carries the content and settings of a section block as it is rendered inside a template.

The content and settings of a [section block](/docs/theme/architecture/sections/section-schema#blocks).

Sections and blocks are reusable modules of content that make up [templates](/docs/theme/architecture/templates/overview).

| Properties | Type | Description |
| --- | --- | --- |
| `id` | [number](/docs/theme/references/liquid/basics/liquid-types#number) | The ID of the block.<br>The ID is dynamically generated by Shoplazza. |
| `settings` |  | The [settings](/docs/theme/architecture/sections/section-schema#blocks) of the block.<br>To learn about how to access settings, refer to [Access settings](/docs/theme/architecture/settings/overview#access-settings). To learn which input settings can be applied to the type property within settings, refer to [Input settings](/docs/theme/architecture/settings/input-settings). |
| `shoplaza_attributes` | [string](/docs/theme/references/liquid/basics/liquid-types#string) | The data attributes for the block for use in the theme editor.<br>The theme editor's JavaScript API uses the data attributes to identify blocks and listen for events. No value for `block.shoplaza_attributes` is returned outside the theme editor. |
| `type` | [string](/docs/theme/references/liquid/basics/liquid-types#string) | The type of the block.<br>The type is a free-form string that's defined in the [block's schema](/docs/theme/architecture/sections/section-schema#blocks). You can use the type as an identifier. For example, you might display different markups based on the block type. |

**Object**

```json
{
  "id": "0",
  "type": "announcement",
  "settings": {},
  "shoplaza_attributes": "data-shoplaza-editor-block=\"{\"index\":0,\"type\":\"announcement\"}"
}
```
