---
title: "Perform multiple operations with status-presets"
method: POST
path: "/api/status-presets/bulk"
tags: ["CRUD", "StatusPresets"]
---

# Perform multiple operations with status-presets

`POST /api/status-presets/bulk`

## Request

- Base URL: `https://app.airfocus.com`
- URL: `https://app.airfocus.com/api/status-presets/bulk`
- Auth: HTTP bearer

Accepts a list of create/update/patch/delete operations (see the request model for more details).<br/>
Each operation can target a single or multiple status-presets.<br/>
Returns a list of results for each input operation including errors.<br/>
Guarantees that the size and order of the returned results matches the order of input operations.<br/>Requirements:<br/>- auth-client scopes: "team"

## Query parameters

- `actAsAdmin` boolean

## Request body

- StatusPresetBulkAction[]
  - union
    - StatusPresetBulkCreate
      - `resource` CreateStatusPresetRequest, required
        - `name` string, required: Name of the status preset.
        - `statuses` Status[], required: Statuses to include in this preset.
          - `category` 'active' | 'closed' | 'draft', required: Status category adds some additional meaning to each status: - 'draft': only semantic meaning - 'active': only semantic meaning - 'closed': items with a status in this category will be considered as completed, which contributes to progress calculation (e.g. "1/3 items completed").
          - `color` 'blue' | 'coco' | 'daulphine' | 'great' | 'orange' | 'pink' | 'red' | 'violet' | 'yellow': Color of a status-chip in UI.
          - `default` boolean, required: Whether this status should be applied by default to newly created items. There can be only one default status in each workspace.
          - `id` string, uuid, required
          - `name` string, required: Name of this status in UI.
          - `order` integer, required: Order of this status comparing to other statuses in the same workspace.
          - `presetId` string, uuid: Id of the status preset it is part of. Empty if this status is custom for a workspace.
          - `workspaceId` string, uuid: The workspace this status belongs to. Empty for preset statuses, which are shared across workspaces
      - `type` 'create', required
    - StatusPresetBulkDelete
      - `id` string, uuid, required
      - `type` 'delete', required
    - StatusPresetBulkPatch
      - `id` string, uuid, required
      - `transform` JsonPatchOperation[], required: A JSON Patch document. See https://jsonpatch.com/ for more information.
        - union
          - JsonPatchAdd
            - `op` 'add', required
            - `path` string, required
            - `value` unknown, required
          - JsonPatchCopy
            - `from` string, required
            - `op` 'copy', required
            - `path` string, required
          - JsonPatchMove
            - `from` string, required
            - `op` 'move', required
            - `path` string, required
          - JsonPatchRemove
            - `old` unknown
            - `op` 'remove', required
            - `path` string, required
          - JsonPatchReplace
            - `old` unknown
            - `op` 'replace', required
            - `path` string, required
            - `value` unknown, required
          - JsonPatchTest
            - `op` 'test', required
            - `path` string, required
            - `value` unknown, required
      - `type` 'patch', required
    - StatusPresetBulkUpdate
      - `id` string, uuid, required
      - `resource` UpdateStatusPresetRequest, required
        - `name` string: Updated name of the status preset.
      - `type` 'update', required

## Response `200`

- StatusPresetWithStatusPresetEmbed[]
  - `_embedded` StatusPresetEmbed, required
    - `itemStatusCount` object, required
    - `itemStatusCountArchived` object, required
    - `statuses` Status[], required
      - `category` 'active' | 'closed' | 'draft', required: Status category adds some additional meaning to each status: - 'draft': only semantic meaning - 'active': only semantic meaning - 'closed': items with a status in this category will be considered as completed, which contributes to progress calculation (e.g. "1/3 items completed").
      - `color` 'blue' | 'coco' | 'daulphine' | 'great' | 'orange' | 'pink' | 'red' | 'violet' | 'yellow': Color of a status-chip in UI.
      - `default` boolean, required: Whether this status should be applied by default to newly created items. There can be only one default status in each workspace.
      - `id` string, uuid, required
      - `name` string, required: Name of this status in UI.
      - `order` integer, required: Order of this status comparing to other statuses in the same workspace.
      - `presetId` string, uuid: Id of the status preset it is part of. Empty if this status is custom for a workspace.
      - `workspaceId` string, uuid: The workspace this status belongs to. Empty for preset statuses, which are shared across workspaces
    - `workspaceIds` string[], required
  - `id` string, uuid, required
  - `name` string, required: Name of this status preset.
  - `teamId` string, uuid, required

## Other responses

- `400`: If payload is invalid.
- `401`: If missing authentication token.
- `403`: If authenticated client does not have the required access scopes.
- `default`: If any other error happens.

---

[API](https://skmtc.dev/airfocus/apis/airfocus-api.md) · [All operations](https://skmtc.dev/airfocus/apis/airfocus-api/llms.txt) · [OpenAPI document](https://skmtc.dev/airfocus/apis/airfocus-api/revisions/fc9ccaa2ec6d?raw)
