---
title: "Batch create campaigns"
method: POST
path: "/marketing/campaigns/2026-09/batch/create"
tags: ["Batch"]
---

# Batch create campaigns

`POST /marketing/campaigns/2026-09/batch/create`

## Request

- Base URL: `https://api.hubapi.com`
- URL: `https://api.hubapi.com/marketing/campaigns/2026-09/batch/create`
- Auth: OAuth 2
  - Authorization code: `https://app.hubspot.com/oauth/authorize`
  - Token URL: `https://api.hubapi.com/oauth/v1/token` scopes: `marketing.campaigns.write`

Create a batch of marketing campaigns with specified properties. This endpoint allows for the creation of multiple campaigns in a single request. Note that the 'hs_goal' property is deprecated and will be ignored if included in the request.

## Request body

- BatchInputPublicCampaignInput
  - `inputs` PublicCampaignInput[], required: An array of PublicCampaignInput objects, each representing the properties of a campaign to be created. This is a required field.
    - `properties` object, required: An object containing key-value pairs where each key is a property name and each value is a string representing the property's value. This object holds the various attributes of the campaign.

## Response `201`

successful operation

- BatchResponsePublicCampaign
  - `completedAt` string, date-time, required: The date and time when the batch operation was completed, in ISO 8601 format.
  - `links` object: A map of link names to associated URIs that provide additional information related to the batch operation.
  - `requestedAt` string, date-time: The date and time when the batch operation was requested, in ISO 8601 format.
  - `results` PublicCampaign[], required: An array of public campaign objects that represent the results of the batch operation.
    - `businessUnits` PublicBusinessUnit[], required: An array of business units associated with the campaign, where each business unit is represented by its unique identifier.
      - `id` integer, required: The unique identifier for the business unit, represented as a 64-bit integer.
    - `createdAt` string, date-time, required: The date and time when the campaign was created, in ISO 8601 format.
    - `id` string, required: The unique identifier for the campaign.
    - `properties` object, required: A map of custom property names to their values, representing specific attributes of the campaign.
    - `updatedAt` string, date-time, required: The date and time when the campaign was last updated, in ISO 8601 format.
  - `startedAt` string, date-time, required: The date and time when the batch operation started, in ISO 8601 format.
  - `status` 'CANCELED' | 'COMPLETE' | 'PENDING' | 'PROCESSING', required: The current status of the batch operation. Valid values include 'PENDING', 'PROCESSING', 'CANCELED', and 'COMPLETE'.

## Other responses

- `207`: multiple statuses
- `default`: An error occurred.

---

[API](https://skmtc.dev/hubspot/apis/marketing-campaigns-public-api.md) - [All operations](https://skmtc.dev/hubspot/apis/marketing-campaigns-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/hubspot/apis/marketing-campaigns-public-api/revisions/c1eb1c9b504c?raw)
