---
title: "Save campaign phases in bulk"
method: PUT
path: "/v1/workspaces/{workspaceId}/campaigns/{id}/phases"
tags: ["Campaigns"]
---

# Save campaign phases in bulk

`PUT /v1/workspaces/{workspaceId}/campaigns/{id}/phases`

## Request

- Base URL: `https://api.maevesocial.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.maevesocial.com/v1/workspaces/{workspaceId}/campaigns/{id}/phases`
- Auth: HTTP bearer

## Path parameters

- `id` string, required
- `workspaceId` string, uuid, required

## Request body

- SaveCampaignPhasesDto
  - `phases` SaveCampaignPhaseDraftDto[], required
    - `id` string, uuid
    - `name` string, required
    - `color` string, nullable
    - `startDate` string, date-time, nullable
    - `endDate` string, date-time, nullable

## Response `200`

Campaign with updated phases

- object
  - `data` PublicCampaignDto, required
    - `id` string, uuid, required
    - `workspaceId` string, uuid, required
    - `name` string, required
    - `color` string, nullable, required
    - `goal` string, nullable, required
    - `description` string, nullable, required
    - `startDate` string, date, required
    - `endDate` string, date, required
    - `status` 'upcoming' | 'live' | 'ended', required
    - `targetPlatforms` string[], required
    - `estimatedBudget` string, nullable: Estimated budget in major currency units as a decimal string, such as "4050.50".
    - `actualBudget` string, nullable: Actual budget in major currency units as a decimal string, such as "4050.50".
    - `budgetCurrency` string, nullable: ISO 4217 currency code required when a budget is set.
    - `createdByUserId` string, uuid, nullable
    - `updatedByUserId` string, uuid, nullable
    - `createdAt` string, required
    - `updatedAt` string, required
    - `phases` PublicCampaignPhaseDto[]
      - `id` string, uuid, required
      - `workspaceId` string, uuid, required
      - `campaignId` string, uuid, required
      - `name` string, required
      - `color` string, nullable, required
      - `startDate` string, date, nullable, required
      - `endDate` string, date, nullable, required
      - `sortOrder` number, required
      - `createdAt` string, required
      - `updatedAt` string, required
  - `meta` unknown, required

---

[API](https://skmtc.dev/maevesocial/apis/maeve-social-api.md) · [All operations](https://skmtc.dev/maevesocial/apis/maeve-social-api/llms.txt) · [OpenAPI document](https://skmtc.dev/maevesocial/apis/maeve-social-api/revisions/1b00fd7e4b15?raw)
