> For the complete documentation index, see [llms.txt](https://docs.zerve.ai/zerve-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.zerve.ai/zerve-docs/notebooks/layers.md).

# Layers

Separate a canvas into workflows, such as development, deployment and scheduled jobs.

{% hint style="info" %}
Layers are only available in the **canvas view**. In the notebook view, deployments and scheduled jobs are set up from their own screens. See [The notebook and canvas](/zerve-docs/notebooks/notebook-and-canvas.md).
{% endhint %}

**Layers** split a canvas into separate workflows, each with its own blocks. A project might have one layer for developing a model, one for serving it as an API, and one for retraining it on a schedule.

Open the layers sidebar with **Ctrl+1** (Windows) or **⌘+1** (Mac).

## Layer types

| Layer                         | What it's for                                                                                                                       |
| ----------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| **Development**               | Writing and running code: data preparation, modeling and analysis. Every canvas has one.                                            |
| **Deployment (API)**          | Building APIs from API Controller and API Route blocks. See [APIs](/zerve-docs/ship-your-work/apis.md#building-apis-in-the-canvas). |
| **Scheduled Jobs**            | Running blocks on a schedule. See [Scheduled jobs](/zerve-docs/ship-your-work/scheduled-jobs.md).                                   |
| **AWS SageMaker Deployments** | Deploying models as SageMaker endpoints                                                                                             |

Blocks in one layer can use variables from another, so a deployment layer can use the model trained in the development layer. When you retrain the model and redeploy, the deployment uses the new version.

## Grouping blocks

In a development layer, you can group related blocks by naming them `groupName.blockName`. Blocks with the same group name are shown together. For example, naming blocks `data.load` and `data.clean` groups them under `data`.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.zerve.ai/zerve-docs/notebooks/layers.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
