---
title: "Pause or resume many campaigns"
method: POST
path: "/v1/ads/campaigns/bulk-status"
tags: ["Ad Campaigns"]
---

# Pause or resume many campaigns

`POST /v1/ads/campaigns/bulk-status`

Process up to 50 campaigns in one call. Each campaign is updated
concurrently and the response contains a per-campaign result so a
single bad row does not fail the whole batch.

## Request body

- object
  - `status` 'active' | 'paused', required
  - `campaigns` object[], required
    - `platformCampaignId` string, required
    - `platform` 'facebook' | 'instagram' | 'tiktok' | 'linkedin' | 'pinterest' | 'google' | 'twitter' | 'openai', required

## Response `200`

Per-campaign results

- object
  - `status` 'active' | 'paused'
  - `totals` object
    - `updated` integer
    - `skipped` integer
    - `failed` integer
  - `results` object[]
    - `platformCampaignId` string
    - `platform` string
    - `updated` integer
    - `skipped` integer
    - `error` string

## Other responses

- `400` — Invalid input
- `401` — Unauthorized

---

[API](https://skmtc.net/zernio/apis/zernio-api.md) · [All operations](https://skmtc.net/zernio/apis/zernio-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/zernio/zernio-api/versions/f81ca70ea6b9/schema)
