---
title: "Copy Campaign Template to a Project"
method: POST
path: "/management/v1/projects/{projectId}/templates/campaigns/{campaignTemplateId}/copy"
tags: ["Management"]
---

# Copy Campaign Template to a Project

`POST /management/v1/projects/{projectId}/templates/campaigns/{campaignTemplateId}/copy`

Copies a campaign template to another project.

The resources, like validation rules or products, will not be copied to the destination project yet. When the template is used to create a new campaign or add a new promotion tier, the resources will be created in the destination project.

> 📘 Campaign Templates – Documentation
>
>Read the [Campaign Templates documentation](/build/campaign-templates) to learn more about this feature.

## Request body

- ManagementProjectsTemplatesCampaignsCopyCreateRequestBody — Request body for updating a campaign template.
  - `name` string, required — User-defined name of the campaign template. It must be unique.
  - `description` string, nullable — User-defined description of the campaign template.
  - `destination_project_id` string, required — Unique identifier of the project to which the campaign template will be copied.

## Response `200`

Returns the details about the copied campaign template.

- ManagementProjectsTemplatesCampaignsCopyCreateResponseBody — Stores details about a campaign template.
  - `id` string, required — Unique identifier of the campaign template. It is assigned by Voucherify.
  - `name` string, required — User-defined name of the campaign template.
  - `description` string — User-defined description of the campaign template.
  - `campaign_type` 'DISCOUNT_COUPONS' | 'GIFT_VOUCHERS', required — Type of the campaign used to create the campaign template. Templates created from a promotion tier are converted to `DISCOUNT_COUPONS`.
  - `created_at` string, date-time, required — Timestamp representing the date and time when the campaign template was created. The value is shown in the ISO 8601 format.
  - `object` 'campaign_template', required — The type of the object represented by JSON.

## Other responses

- `401` — Returns an error if an invalid token was provided.
- `402` — Returns an error if the current plan does not include the Management API feature.
- `404` — Returns an error when a resource could not be found.
- `409` — Returns an error if a campaign template with the same name already exists.

---

[API](https://skmtc.net/voucherifyio/apis/voucherify-api-async-actions.md) · [All operations](https://skmtc.net/voucherifyio/apis/voucherify-api-async-actions/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/voucherifyio/voucherify-api-async-actions/revisions/4982266e0494/schema)
