---
title: Common workflows
slug: commerce-connect-15/docs/common-workflows
docTags: 
createdAt: 2026-07-30T20:34:43.000Z
---

The following workflows show how to use Mark (Optimizely Agent Platform) tools to create campaigns, clone promotions, and analyze performance in Optimizely Commerce Connect.

## Create a campaign with promotions

1. List available campaign types with the `campaign_types_list` tool.
2. Create the campaign with the `campaign_create` tool.

```json
{
  "Name": "Holiday Sale 2024",
  "ValidFrom": "2024-12-01T00:00:00Z",
  "ValidUntil": "2024-12-31T23:59:59Z"
}
```

3. List available promotion types with the `promotion_types_list` tool.
4. Create a promotion within the campaign with the `promotion_create` tool.

```json
{
  "Name": "25% Off All Items",
  "Campaign": "Holiday Sale 2024",
  "PromotionType": "EPiServer.Commerce.Marketing.Promotions.SpendAmountGetOrderDiscount"
}
```

5. Configure promotion properties with the `promotion_dynamic_update` tool.

```json
{
  "Id": "456",
  "Properties": {
    "Condition_SpendAmount": 50.00,
    "Discount_Percentage": 25.0
  }
}
```

## Clone and modify a promotion

1. Find the source promotion with the `promotion_filter` tool.

```json
{ "Name": "Summer Discount" }
```

2. Get promotion details with the `promotion_detail` tool.

```json
{ "Identifier": "456", "IncludeAdditionalDetails": true }
```

3. Clone the promotion with the `promotion_clone` tool.

```json
{ "PromotionId": "456", "CampaignId": "789" }
```

4. Update the cloned promotion with the `promotion_update` tool.

```json
{ "Id": "new-id", "Name": "Winter Discount" }
```

## Analyze promotion performance

1. List promotions by sales with the `promotion_list_by_sales` tool.

```json
{ "MarketId": "US" }
```

2. Get details of the top-performing promotion with the `promotion_detail` tool.

```json
{ "Identifier": "top-promotion-id", "IncludeAdditionalDetails": true }
```
