---
title: "Updates the project settings of the plug-in."
method: PUT
path: "/projects/{projectKey}/settings"
tags: ["Project settings"]
---

# Updates the project settings of the plug-in.

`PUT /projects/{projectKey}/settings`

## Path parameters

- `projectKey` string, required

## Request body

- ProjectSettings
  - `allowUsersToChooseTemplate` boolean — true if a user is allowed to choose another template than the default when creating a new repository
  - `cronExpression` string — the cron expression to use for resetting the settings of associated repositories to the one of the configured template (use null to deactivate the periodic reset)
  - `forkTemplateSyncEnabled` boolean — Sync settings from template to new repository forks
  - `gitMirrorType` 'MIRROR' | 'WITHOUTHISTORY' — Configure how the repository template content should be copied to the new repository.
  - `repoMirrorEnabled` boolean — true if you want the content of a template being mirrored to a repository on its creation
  - `settingsToUse` SettingsToUse — choose all settings which should be copied (when creating a new repository with a template) or reset (when you have the periodic settings reset enabled below) from templates to their associated repositories
    - `accessKeys` boolean
    - `autoDecline` boolean
    - `autoMergeSettings` boolean
    - `branchPermissions` boolean
    - `codeInsights` boolean
    - `defaultReviewersAndReviewerGroups` boolean — Requires Repository Permissions to be enabled
    - `jiraIssues` boolean
    - `pullRequestSettings` boolean
    - `pullRequestTemplate` boolean
    - `repositoryDetails` boolean
    - `repositoryHooks` boolean
    - `repositoryHooksToIgnore` string[]
    - `repositoryPermissions` boolean
    - `requiredBuild` boolean
    - `requiredTasks` boolean
    - `secretScanning` boolean
    - `webhooks` boolean
    - `workflowBranches` boolean
  - `templateFeatureEnabled` boolean — Enables/disables repository templates for project

## Response `200`

Project settings updated

- ProjectSettings
  - `allowUsersToChooseTemplate` boolean — true if a user is allowed to choose another template than the default when creating a new repository
  - `cronExpression` string — the cron expression to use for resetting the settings of associated repositories to the one of the configured template (use null to deactivate the periodic reset)
  - `forkTemplateSyncEnabled` boolean — Sync settings from template to new repository forks
  - `gitMirrorType` 'MIRROR' | 'WITHOUTHISTORY' — Configure how the repository template content should be copied to the new repository.
  - `repoMirrorEnabled` boolean — true if you want the content of a template being mirrored to a repository on its creation
  - `settingsToUse` SettingsToUse — choose all settings which should be copied (when creating a new repository with a template) or reset (when you have the periodic settings reset enabled below) from templates to their associated repositories
    - `accessKeys` boolean
    - `autoDecline` boolean
    - `autoMergeSettings` boolean
    - `branchPermissions` boolean
    - `codeInsights` boolean
    - `defaultReviewersAndReviewerGroups` boolean — Requires Repository Permissions to be enabled
    - `jiraIssues` boolean
    - `pullRequestSettings` boolean
    - `pullRequestTemplate` boolean
    - `repositoryDetails` boolean
    - `repositoryHooks` boolean
    - `repositoryHooksToIgnore` string[]
    - `repositoryPermissions` boolean
    - `requiredBuild` boolean
    - `requiredTasks` boolean
    - `secretScanning` boolean
    - `webhooks` boolean
    - `workflowBranches` boolean
  - `templateFeatureEnabled` boolean — Enables/disables repository templates for project

## Other responses

- `400` — Bad request: the provided project settings are invalid
- `401` — The currently authenticated user does not have PROJECT_ADMIN credentials
- `404` — Project not found or project settings do not exist

## Changes

- **2026-02-13** `34d717f7cf3a` — 16 info
  - added the new optional request property `settingsToUse/autoDecline`
  - added the new optional request property `settingsToUse/autoMergeSettings`
  - added the new optional request property `settingsToUse/codeInsights`
  - added the new optional request property `settingsToUse/jiraIssues`
  - …12 more
- **2025-02-04** `c973497aa59f` — 1 breaking, 4 warning, 2 info
  - removed the media type `application/json` for the response with the status `400`
  - removed the request property `settingsToUse/defaultReviewers`
  - removed the request property `settingsToUse/reviewerGroups`
  - removed the optional property `settingsToUse/defaultReviewers` from the response with the `200` status
  - …3 more
- **2024-10-08** `7772d627dec5` — 7 info
  - added the new optional request property `settingsToUse/defaultReviewers`
  - added the new optional request property `settingsToUse/pullRequestTemplate`
  - added the new optional request property `settingsToUse/reviewerGroups`
  - added the non-success response with the status `400`
  - …3 more

[Change history](https://skmtc.dev/mibexsoftware/apis/repository-templates-for-bitbucket-rest-api/changes/projects/:projectKey/settings/put.md)

---

[API](https://skmtc.dev/mibexsoftware/apis/repository-templates-for-bitbucket-rest-api.md) · [All operations](https://skmtc.dev/mibexsoftware/apis/repository-templates-for-bitbucket-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/mibexsoftware/repository-templates-for-bitbucket-rest-api/revisions/34d717f7cf3a/schema)
