> For the complete documentation index, see [llms.txt](https://learn.mechanic.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://learn.mechanic.dev/app/settings.md).

# Settings

The Settings page is organized into sections, accessed from the sidebar on the left or a dropdown on smaller screens. General and User cover common account preferences; the rest only matter if you're using the feature they're named after.

<figure><img src="/files/QKv6wmiF7w6Ehp0hi7s7" alt="The Mechanic Settings page, organized by section"><figcaption></figcaption></figure>

## General

* **System contact email** — receives Mechanic system notifications, like rate limit alerts or platform maintenance announcements. Supports multiple addresses separated by commas.
* **Read all orders** — by default, Mechanic accesses the last 60 days of order history. Enable this if you have tasks that need to search older orders. Learn more in [Read all orders](/platform/shopify/read-all-orders.md).
* **Subscription** — your current plan and billing status.

## User

* **Use the task editor’s Advanced mode by default** — open the [task editor](/app/task-editor.md) in Advanced mode (for editing code) instead of Basic mode (for adjusting settings)
* **Show shop identity banner** — display a banner identifying the current shop (helpful when managing multiple stores)
* **Use dark theme for code editor** — apply a dark theme to all code editors in the app

## Permissions

Most of the time, Mechanic figures out the Shopify API scopes your tasks need from subscriptions, Shopify data access, and previewed Shopify actions. This section shows which scopes are already granted and which ones still need approval; it does not grant scopes directly. When scopes need approval, Mechanic prompts you to update Shopify access. When a task's needs are hard to prove during preview — for example, when a mutation's scope depends on a realistic resource ID, or logic only runs in a live branch — you can declare scopes directly with the [`permissions` tag](/platform/liquid/tags/permissions.md). Active [custom Shopify webhooks](/platform/shopify/custom-webhooks.md) can also contribute required scopes. See [Permissions](/core/tasks/permissions.md) for the full model.

<figure><img src="/files/5qYGwQ7g96KwxpKmGvBM" alt="The Permissions section in Mechanic settings, showing required and available Shopify API scopes"><figcaption></figcaption></figure>

## Mechanic webhooks

Inbound HTTP webhooks that let any external system (a form builder, a CRM, an ERP, a fulfillment service) trigger your tasks. Each webhook gets a unique URL you can POST data to, and incoming requests become `user/...` events. See [Mechanic webhooks](/platform/webhooks.md).

## Custom Shopify webhooks

Advanced Shopify-side filters and payload customization for supported Shopify webhook topics, routed onto a custom Mechanic event topic. Most tasks should use regular `shopify/...` subscriptions; reach for this when you want filtered deliveries, slim payloads, Shopify-side metafield filtering or delivery, or [metaobject webhooks](/platform/shopify/custom-webhooks.md#how-do-i-receive-shopify-metaobject-webhooks-in-mechanic) (which native subscriptions don't cover). See [Custom Shopify webhooks](/platform/shopify/custom-webhooks.md).

If you're not sure which path you want: most data coming from Shopify should use a regular `shopify/...` task subscription. Use Custom Shopify webhooks only when Shopify should filter or reshape the delivery before Mechanic receives it. Data coming from anywhere else should use Mechanic webhooks.

## Event filters

Advanced. Liquid code that runs before tasks to decide whether an event should be processed — for example, skipping test orders or pausing processing during maintenance. See [Event filters](/platform/events/filters.md).

## Email

* **Default outbound email** — the auto-assigned email address Mechanic uses for sending, with email verification status
* **Custom outbound email** — use your own domain, verified via DNS records. See [Custom email addresses](/platform/email/custom-email-domain.md).

## Email templates

Optional. Reusable HTML [email templates](/platform/email/templates.md) for use in tasks. Templates support Liquid variables.

## Cache endpoints

Only needed if external apps need to read data from your tasks. Create URLs that return [cached](/platform/cache.md) task data as JSON — useful for dashboards or integrations that need to pull information from Mechanic.

## Globals and secrets

Reusable shop-level values for tasks. Globals are visible JSON values that can be shared with task repos and the CLI. Secrets are write-only string values for credentials, tokens, signing keys, and other sensitive data.

Tasks can read globals with `globals.some_key` and reference secrets with `secrets.some_key`. Task options can also render dropdowns for selecting existing globals or secrets. See [Globals and secrets](/platform/globals-and-secrets.md).

<figure><img src="/files/aShK1YHJfUKDO8suW81e" alt="The Globals and secrets section in Mechanic settings, showing one global and one secret"><figcaption></figcaption></figure>

## API tokens

Only needed if you are using [local task development with the Mechanic CLI](/resources/mechanic-cli.md), GitHub Actions, scripts, or agents that sync tasks or manage globals and secrets for this shop. API tokens can read, preview, and publish tasks, and can manage shop globals and secrets, until revoked. Mechanic only shows a token once, when it is created; if a token is lost or exposed, revoke it and create a new one.

Use a separate token for each device, repository, or automation. Each shop can have up to five active API tokens; revoke unused tokens before creating more.

<figure><img src="/files/Md8lFMpmc9pZdS0y4Nrc" alt="The API tokens section in Mechanic settings, showing one active API token"><figcaption></figcaption></figure>

See [API tokens and task sync API](/resources/mechanic-cli/mechanic-task-sync-api.md) for token safety and automation details.

## Authentication

Only needed if your tasks use Google Sheets, Airtable, or Slack integrations. Connect your accounts here so tasks can interact with those services. Credentials are encrypted and stored securely. See [Integrations](/platform/integrations.md).


---

# 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 dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://learn.mechanic.dev/app/settings.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
