---
title: "Assign designations to a campaign"
method: POST
path: "/v1/campaigns/{id}/designations/assign"
tags: ["Campaigns"]
---

# Assign designations to a campaign

`POST /v1/campaigns/{id}/designations/assign`

This request allows you to assign designations to a campaign. Each item is processed independently; the response reports the per-item outcome. Only base campaign types are supported.

## Path parameters

- `id` string, required

## Request body

- AssignDesignationsRequest — Contains the request parameters required for assigning designations to a campaign.
  - `items` AssignDesignationItem[], required — An array of designations to assign.
    - `frequencies` string[], required — Donation frequencies to assign this designation to.
    - `id` string, required — Unique identifier of the designation, formatted as E[A-Z\d]{7}.
  - `livemode` boolean — Specifies whether the request is executed in live or test mode. Required for API keys created after 30th January 2026.

## Response `200`

On success, the API returns the overall status and a per-item result array describing which designations were assigned.

- AssignDesignationsResponse — Provides the per-item results of a batch designation assignment request.
  - `results` AssignDesignationResultItem[], required — An array containing the result for each item in the request, in the same order.
    - `error` AssignDesignationError, required — Describes the error that prevented assigning a single designation.
      - `code` 'designation_not_found' | 'designation_already_attached' | 'frequency_not_active', required — Error code.
      - `message` string, required — Error message.
    - `frequencies` string[], required — Donation frequencies from the request.
    - `id` string, required — Unique identifier of the designation, formatted as E[A-Z\d]{7}.
  - `status` 'complete' | 'partial' | 'failed', required — Status of the bulk operation.

## Other responses

- `403` — Forbidden. The API key does not have permission to manage campaigns.
- `404` — Resource not found.
- `422` — Duplicated ids: The request contains duplicated ids. Campaign type not supported. Assign-mode limit exceeded: assign-mode campaigns support a maximum of 2 designations per request. Designation frequency conflict: in assign mode, a frequency cannot be assigned to more than one designation.

---

[API](https://skmtc.net/fundraiseup/apis/fundraise-up-api.md) · [All operations](https://skmtc.net/fundraiseup/apis/fundraise-up-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/fundraiseup/fundraise-up-api/revisions/f59881dadecd/schema)
