Advanced

Clone a campaign

Clone a campaign identified by sourceCampaignGuid in the request body. The cloned campaign will have its own GUID and the provided properties. Asset cloning is performed asynchronously. Use the clone-status endpoint to check progress.

post/marketing/campaigns/2026-09/clone

Request

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

Request body

assetsToCloneobject required

A map of asset types to be cloned, where each key is an asset type and the value is an array of asset identifiers. It is an object.

audiencestring

The target audience for the cloned campaign. It is a string.

currencyCodestring

The currency code for the cloned campaign's budget. It is a string. This value is optional.

endDatestring

The end date for the cloned campaign. It is a string in ISO 8601 format (YYYY-MM-DD). If omitted, this will match the start date of the source campaign.

namestring required

The name for the new cloned campaign. It is a string. The name needs to be unique compared to other campaigns in the portal.

notesstring

Additional notes or comments about the cloned campaign. It is a string. This value is optional.

shouldCloneDraftNodesboolean required

A boolean indicating whether draft nodes should be cloned. By default this is true.

shouldCloneEdgesboolean required

A boolean indicating whether edges should be cloned. By default this is true.

shouldCloneStickyNotesboolean required

A boolean indicating whether sticky notes should be cloned. By default this is true.

shouldCloneTasksboolean required

A boolean indicating whether tasks should be cloned. By default this is true.

shouldCloneTrackingUrlsboolean required

A boolean indicating whether tracking URLs should be cloned. By default this is true.

sourceCampaignGuidstring required

The unique identifier of the campaign to be cloned. It is a string.

startDatestring

The start date for the cloned campaign. It is a string in ISO 8601 format (YYYY-MM-DD). If omitted, this will match the start date of the source campaign.

Response

successful operation

campaignGuidstring required

The unique identifier for the newly cloned campaign.

status'COMPLETE' | 'FAILED' | 'PARTIAL_FAILURE' | 'PENDING' required

The status of the cloning operation. Valid values include 'PENDING', 'COMPLETE', 'FAILED', and 'PARTIAL_FAILURE'.

Changes

No recorded changes to this operation across all 5 revisions of this API.