Update a project for a workspace
Since this endpoint can be used to both update and to create a project, the request body depends on the intent.
Creation
See the POST documentation for the project collection for an example of the request body.
Note: The key should not be specified in the body of request
(since it is already present in the URL). The name is required,
everything else is optional.
Update
See the POST documentation for the project collection for an example of the request body.
Note: The key is not required in the body (since it is already in
the URL). The key may be specified in the body, if the intent is
to change the key itself. In such a scenario, the location of the
project is changed and is returned in the Location header of the
response.
Authorizations
Section titled “ Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “ Path Parameters ”The project in question. This is the actual key assigned
to the project.
This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: {workspace UUID}.
Request Body required
Section titled “ Request Body required ”object
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
The project’s immutable id.
The project’s key.
object
Links related to an Account.
object
A link to a resource related to this object.
object
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
The name of the project.
Indicates whether the project is publicly accessible, or whether it is private to the team and consequently only visible to team members. Note that private projects cannot contain public repositories.
Indicates whether the project contains publicly visible repositories. Note that private projects cannot contain public repositories.
Example generated
{ "type": "example", "links": { "html": { "href": "https://example.com", "name": "example" }, "avatar": { "href": "https://example.com", "name": "example" } }, "uuid": "example", "key": "example", "owner": { "type": "example", "links": { "avatar": { "href": "https://example.com", "name": "example" }, "self": { "href": "https://example.com", "name": "example" }, "html": { "href": "https://example.com", "name": "example" }, "members": { "href": "https://example.com", "name": "example" }, "projects": { "href": "https://example.com", "name": "example" }, "repositories": { "href": "https://example.com", "name": "example" } }, "created_on": "2026-04-15T12:00:00Z", "display_name": "example", "uuid": "example" }, "name": "example", "description": "example", "is_private": true, "created_on": "2026-04-15T12:00:00Z", "updated_on": "2026-04-15T12:00:00Z", "has_publicly_visible_repos": true}Responses
Section titled “ Responses ”The existing project is has been updated.
object
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
The project’s immutable id.
The project’s key.
object
Links related to an Account.
object
A link to a resource related to this object.
object
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
The name of the project.
Indicates whether the project is publicly accessible, or whether it is private to the team and consequently only visible to team members. Note that private projects cannot contain public repositories.
Indicates whether the project contains publicly visible repositories. Note that private projects cannot contain public repositories.
Example generated
{ "type": "example", "links": { "html": { "href": "https://example.com", "name": "example" }, "avatar": { "href": "https://example.com", "name": "example" } }, "uuid": "example", "key": "example", "owner": { "type": "example", "links": { "avatar": { "href": "https://example.com", "name": "example" }, "self": { "href": "https://example.com", "name": "example" }, "html": { "href": "https://example.com", "name": "example" }, "members": { "href": "https://example.com", "name": "example" }, "projects": { "href": "https://example.com", "name": "example" }, "repositories": { "href": "https://example.com", "name": "example" } }, "created_on": "2026-04-15T12:00:00Z", "display_name": "example", "uuid": "example" }, "name": "example", "description": "example", "is_private": true, "created_on": "2026-04-15T12:00:00Z", "updated_on": "2026-04-15T12:00:00Z", "has_publicly_visible_repos": true}Headers
Section titled “ Headers ”The location of the project. This header is only provided when the project key is updated.
A new project has been created.
object
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
The project’s immutable id.
The project’s key.
object
Links related to an Account.
object
A link to a resource related to this object.
object
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
A link to a resource related to this object.
object
The name of the project.
Indicates whether the project is publicly accessible, or whether it is private to the team and consequently only visible to team members. Note that private projects cannot contain public repositories.
Indicates whether the project contains publicly visible repositories. Note that private projects cannot contain public repositories.
Example generated
{ "type": "example", "links": { "html": { "href": "https://example.com", "name": "example" }, "avatar": { "href": "https://example.com", "name": "example" } }, "uuid": "example", "key": "example", "owner": { "type": "example", "links": { "avatar": { "href": "https://example.com", "name": "example" }, "self": { "href": "https://example.com", "name": "example" }, "html": { "href": "https://example.com", "name": "example" }, "members": { "href": "https://example.com", "name": "example" }, "projects": { "href": "https://example.com", "name": "example" }, "repositories": { "href": "https://example.com", "name": "example" } }, "created_on": "2026-04-15T12:00:00Z", "display_name": "example", "uuid": "example" }, "name": "example", "description": "example", "is_private": true, "created_on": "2026-04-15T12:00:00Z", "updated_on": "2026-04-15T12:00:00Z", "has_publicly_visible_repos": true}Headers
Section titled “ Headers ”The location of the newly created project
The requesting user isn’t authorized to update or create the project.
Base type for most resource objects. It defines the common type element that identifies an object’s type. It also identifies the element as Swagger’s discriminator.
object
object
Optional structured data that is endpoint-specific.
object
Example generated
{ "type": "example", "error": { "message": "example", "detail": "example", "data": {} }}A workspace doesn’t exist at the location. Note that the project’s absence from this location doesn’t raise a 404, since a PUT at a non-existent location can be used to create a new project.
Base type for most resource objects. It defines the common type element that identifies an object’s type. It also identifies the element as Swagger’s discriminator.
object
object
Optional structured data that is endpoint-specific.
object
Example generated
{ "type": "example", "error": { "message": "example", "detail": "example", "data": {} }}