---
title: "Market triggers, step by step"
description: "Step-by-step Shopify Flow tutorials for Shopify Markets: market created, updated, deleted and status changed."
canonical: "https://docs.workflow-trigger-extensions.app/market-trigger-tutorials"
---

# Market triggers, step by step

Four triggers for Shopify Markets: created, updated, deleted, and the status change that matters most - a market going live.

**On this page:** [Market Created](#market-created), [Market Updated](#market-updated), [Market Status Changed](#market-status-changed), [Market Deleted](#market-deleted)

> [!TIP]
> **New to Shopify Flow?**
> Every example follows the same five moves: pick the trigger, add a condition, add an action, turn the workflow on, check Event History. [Your first workflow, step by step](https://docs.workflow-trigger-extensions.app/first-workflow-tutorial.md) shows each of them with screenshots.

![Shopify Flow's trigger picker inside Workflow Trigger Extensions, searched for Market](https://cdn-dev.eu.codecreationlabs.cloud/crm-tool/uploads/SjJ78gKLnLlocopCui3Cs62dJbGZ7F1n/4895790d9f08fce0.png)
*Where you find them: in Shopify Flow choose Select a trigger, open Workflow Trigger Extensions and search for "Market".*

## Market Created

Fires when a market is created.

| | |
| --- | --- |
| **Fires from** | Shopify webhook |
| **Permission** | **Markets Data Access** |
| **Switched on** | Turning on a Flow workflow that uses it switches it on. Its own switch is on the app's **Triggers** page |

**Use it for**

- Start the launch checklist for a new country: translations, duties, payment methods.

### What Market Created sends to your workflow

| Variable in Flow | Type | What it holds |
| --- | --- | --- |
| `market` | Object | The created market |
| `market.id` | ID | The Shopify GID of the market |
| `market.name` | Text | The merchant-visible name of the market |
| `market.handle` | Text | The handle of the market |
| `market.type` | Text | The market type (REGION, POINT_OF_SALE, B2B) |
| `market.status` | Text | The market status (ACTIVE, DRAFT) |
| `market.enabled` | True / false | Whether the market is enabled (deprecated - prefer status) |
| `market.primary` | True / false | Whether this is the shop's primary market |
| `eventId` | Text | The id of this event. Search for it in the app's Event History to see exactly what was sent. |

### Example: Open a launch checklist for a new market

1. Pick **Market Created** as the trigger.
2. Add **Send internal email** (or a request to your project tool): `New market {{market.name}} ({{market.type}}) was created with status {{market.status}}`.
3. Turn the workflow on.

## Market Updated

Fires when a market is edited.

| | |
| --- | --- |
| **Fires from** | Shopify webhook |
| **Permission** | **Markets Data Access** |
| **Switched on** | Turning on a Flow workflow that uses it switches it on. Its own switch is on the app's **Triggers** page |

**Use it for**

- Review changes to live markets.

### What Market Updated sends to your workflow

| Variable in Flow | Type | What it holds |
| --- | --- | --- |
| `market` | Object | The updated market |
| `market.id` | ID | The Shopify GID of the market |
| `market.name` | Text | The merchant-visible name of the market |
| `market.handle` | Text | The handle of the market |
| `market.type` | Text | The market type (REGION, POINT_OF_SALE, B2B) |
| `market.status` | Text | The market status (ACTIVE, DRAFT) |
| `market.enabled` | True / false | Whether the market is enabled (deprecated - prefer status) |
| `market.primary` | True / false | Whether this is the shop's primary market |
| `eventId` | Text | The id of this event. Search for it in the app's Event History to see exactly what was sent. |

### Example: Review edits to active markets

1. Pick **Market Updated** as the trigger.
2. Add a **Condition**: `market.status` **Equal to** `ACTIVE`.
3. Add **Send internal email** with `{{market.name}}`.
4. Turn the workflow on.

## Market Status Changed

Fires when the status of a market changes, for example `DRAFT` to `ACTIVE`.

| | |
| --- | --- |
| **Fires from** | Shopify webhook plus change detection |
| **Permission** | **Markets Data Access** |
| **Switched on** | Turning on a Flow workflow that uses it switches it on. Its own switch is on the app's **Triggers** page |

**Use it for**

- Announce a market launch.
- Get warned when a live market is deactivated.

### What Market Status Changed sends to your workflow

| Variable in Flow | Type | What it holds |
| --- | --- | --- |
| `market` | Object | The market whose status changed |
| `market.id` | ID | The Shopify GID of the market |
| `market.name` | Text | The merchant-visible name of the market |
| `market.handle` | Text | The handle of the market |
| `market.type` | Text | The market type (REGION, POINT_OF_SALE, B2B) |
| `market.status` | Text | The market status (ACTIVE, DRAFT) |
| `market.enabled` | True / false | Whether the market is enabled (deprecated - prefer status) |
| `market.primary` | True / false | Whether this is the shop's primary market |
| `oldStatus` | Text | The previous market status (for example DRAFT) |
| `newStatus` | Text | The new market status (for example ACTIVE) |
| `eventId` | Text | The id of this event. Search for it in the app's Event History to see exactly what was sent. |

### Example: Announce a market going live

1. Pick **Market Status Changed** as the trigger.
2. Add a **Condition**: `newStatus` **Equal to** `ACTIVE`.
3. Add **Send internal email**: `{{market.name}} is live (was {{oldStatus}})`.
4. Turn the workflow on.

> [!NOTE]
> **Good to know**
> Market status values are upper case, unlike product status.

## Market Deleted

Fires when a market is deleted. Only the id and the time remain.

| | |
| --- | --- |
| **Fires from** | Shopify webhook |
| **Permission** | **Markets Data Access** |
| **Switched on** | Turning on a Flow workflow that uses it switches it on. Its own switch is on the app's **Triggers** page |

**Use it for**

- Clean up market-specific settings in other systems.

### What Market Deleted sends to your workflow

| Variable in Flow | Type | What it holds |
| --- | --- | --- |
| `marketId` | Text | The Shopify GID of the market |
| `deletedAt` | Text | The timestamp when the market was deleted |
| `eventId` | Text | The id of this event. Search for it in the app's Event History to see exactly what was sent. |

### Example: Log a deleted market

1. Pick **Market Deleted** as the trigger.
2. Add **Send internal email** with `{{marketId}}` and `{{deletedAt}}`.
3. Turn the workflow on.

## Next steps

- [Complete trigger reference](https://docs.workflow-trigger-extensions.app/trigger-reference.md) - every trigger on one page.
- [Choosing the right trigger](https://docs.workflow-trigger-extensions.app/choosing-the-right-trigger.md) - which one fits your case.
- [Custom triggers](https://docs.workflow-trigger-extensions.app/custom-triggers.md) - when no built-in trigger fits, write your own.
- [Event history and troubleshooting](https://docs.workflow-trigger-extensions.app/event-history-and-troubleshooting.md) - see what fired and what it carried.
