---
title: "Attach Policy Set Campaigns"
method: POST
path: "/api/v1/policy-sets/{policy_set_id}/campaigns/attach"
tags: ["policy-sets"]
---

# Attach Policy Set Campaigns

`POST /api/v1/policy-sets/{policy_set_id}/campaigns/attach`

## Request

- Base URL: `https://app.kaminari.ad`
- URL: `https://app.kaminari.ad/api/v1/policy-sets/{policy_set_id}/campaigns/attach`
- Auth: HTTP bearer

Bind up to 500 campaigns to a policy set.

Incremental alternative to the PUT full-replace: existing bindings
stay intact; campaigns bound to another set are reassigned here.

## Path parameters

- `policy_set_id` string, uuid, required

## Request body

- AttachCampaignsRequest: Request body for POST /policy-sets/{id}/campaigns/attach. Incremental bind: the listed campaigns are bound to the set (campaigns bound to another set are reassigned); other bindings stay intact. Large memberships are built up in <=500-id batches.
  - `campaign_ids` string[], required

## Response `204`

Successful Response

## Other responses

- `422`: Validation Error

---

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