---
title: "Update Strategy Foundation parts"
method: PATCH
path: "/v1/workspaces/{workspaceId}/strategy/foundation"
tags: ["Strategy"]
---

# Update Strategy Foundation parts

`PATCH /v1/workspaces/{workspaceId}/strategy/foundation`

## 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}/strategy/foundation`
- Auth: HTTP bearer

Replaces one or more Foundation parts (audience, objective, positioning, voice). Each part sent replaces the saved part whole; parts left out stay as saved.

## Path parameters

- `workspaceId` string, uuid, required

## Request body

- object
  - `audience` object
    - `who` string, required
    - `pains` string[], required
    - `wants` string[], required
  - `objective` object
    - `categories` object[], required: Objective categories. Presets: awareness (Brand awareness), growth (Audience growth), engagement (Engagement), traffic (Website traffic), leads (Leads and enquiries), revenue (Sales and revenue). Custom categories use id custom-<slug> with a label of your choice.
      - `id` string, required
      - `label` string, required
    - `smart` string, required
  - `positioning` object
    - `format` 'classic' | 'we-help' | 'only' | 'dunford' | 'custom', required
    - `fields` object, required: Positioning statement fields. Each format has its own keys (required for completion marked *): classic: target*, need, category*, benefit*, alternative, differentiator; we-help: target*, outcome*, how; only: brand*, category*, benefit*, target; dunford: alternatives, attributes, value*, customers*, marketCategory; custom: text*. Keys from other formats are kept as saved, and any other key is rejected.
      - `target` string
      - `need` string
      - `category` string
      - `benefit` string
      - `alternative` string
      - `differentiator` string
      - `outcome` string
      - `how` string
      - `brand` string
      - `alternatives` string
      - `attributes` string
      - `value` string
      - `customers` string
      - `marketCategory` string
      - `text` string
  - `voice` object
    - `adjectives` string[], required
    - `soundsLike` string, required
    - `avoid` string, required

## Response `200`

Saved Strategy Foundation brief

- object
  - `data` PublicStrategyFoundationDto, required
    - `id` string, nullable, required
    - `workspaceId` string, required
    - `audience` PublicStrategyFoundationAudienceDto, required
      - `who` string, required
      - `pains` string[], required
      - `wants` string[], required
    - `objective` PublicStrategyFoundationObjectiveDto, required
      - `categories` PublicStrategyFoundationObjectiveCategoryDto[], required
        - `id` string, required
        - `label` string, required
      - `smart` string, required
    - `positioning` PublicStrategyFoundationPositioningDto, required
      - `format` 'classic' | 'we-help' | 'only' | 'dunford' | 'custom', required
      - `fields` object, required
    - `voice` PublicStrategyFoundationVoiceDto, required
      - `adjectives` string[], required
      - `soundsLike` string, required
      - `avoid` string, required
    - `completion` PublicStrategyFoundationCompletionDto, required
      - `audience` boolean, required
      - `objective` boolean, required
      - `positioning` boolean, required
      - `voice` boolean, required
      - `doneCount` number, required
      - `total` 4, required
    - `createdAt` string, nullable, required
    - `updatedAt` string, nullable, 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)
