Edit

  • PATCH
  • /workspaces
  • /:workspace
  • /projects
  • /:project_name

Update project configuration

Request

REQUIRED SCOPES
WORKSPACE
URL PARAMETERS
workspacerequiredstring
The human-readable ID of the workspace

Example: "my-company"

project_namerequiredstring
The human-readable ID of the project

Example: "my-project"

POST PARAMETERS
namestring
The human-readable ID of the project
display_namestring
The Name of the project
statusstring enum
The status of the project
Allowed enum:
ACTIVE,
CLOSED
accessstring enum
Indicates if this is a public project
Allowed enum:
PRIVATE,
PUBLIC
fetch_submodulesboolean
Defines whether the submodules are fetched during the runs in this project
fetch_submodules_env_keystring
Name of the key that will be used to authorize while fetching the submodules. Required when fetch_submodules is set to true
allow_pull_requestsboolean
Enables/disables pull requests in the project. Available only for projects synchronized with GitHub or GitHub Enterprise repository
update_default_branch_from_externalboolean
If set to true, the default branch will be updated from GitHub/GitLab/Bitbucket.

Response

RESPONSE BODY
urlread-onlystring
API endpoint to GET this object
html_urlread-onlystring
Web URL to view this object in Buddy.works
namestring
The human-readable ID of the project
display_namerequiredstring
The Name of the project
statusstring
The status of the project
accessstring enum
Indicates if this is a public project
Allowed enum:
PRIVATE,
PUBLIC
create_datestring
The creation date of the project
external_project_idstring
Repo slug of the Bitbucket, GitHub or GitLab project. Required when adding the integrated project
git_lab_project_idinteger
ID of the project in GitLab
custom_repo_urlstring
SSH or HTTPS url of the git repository. Required when adding the project integrated with custom git repository
custom_repo_userstring
Username used to authorize access to the git repository. Required when adding the project integrated with custom git repository
custom_repo_passstring
Password used to authorize access to the git repository. Required when adding the project integrated with custom git repository and the provided custom_repo_url is the HTTPS url
custom_repo_ssh_key_idinteger
The ID of the private SSH key used to authorize access to the git repository. Required when adding the project integrated with private git server by SSH url
created_byMemberView
User/member reference
http_repositorystring
The HTTP repository URL
ssh_repositorystring
The SSH repository URL
default_branchstring
The default branch name
integrationIntegrationIdView
Integration reference
fetch_submodulesboolean
Defines whether the submodules are fetched during the runs in this project
fetch_submodules_env_keystring
Name of the key that will be used to authorize while fetching the submodules. Required when fetch_submodules is set to true
allow_pull_requestsboolean
Enables/disables pull requests in the project. Available only for projects synchronized with GitHub or GitHub Enterprise repository
update_default_branch_from_externalboolean
If set to true, the default branch will be updated from GitHub/GitLab/Bitbucket.
without_repositoryboolean
If set to true, the project is created without any repository attached.

Last modified on Jan 26, 2026

Examples

Example: Update project configuration

curl -X PATCH "https://api.buddy.works/workspaces/:workspace/projects/:project_name" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "Content-Type: application/json" \ -d '{ "name": "updated-landing-page", "display_name": "Updated Landing Page", "status": "ACTIVE", "access": "PUBLIC", "fetch_submodules": false, "fetch_submodules_env_key": "updated_key", "allow_pull_requests": false, "update_default_branch_from_external": true }'

Example: Update project name only

curl -X PATCH "https://api.buddy.works/workspaces/:workspace/projects/:project_name" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "Content-Type: application/json" \ -d '{ "display_name": "My Renamed Project" }'
EXAMPLE RESPONSE
{ "url": "https://api.buddy.works/workspaces/my-workspace/projects/my-project", "html_url": "https://app.buddy.works/my-workspace/projects/my-project", "name": "my-project", "display_name": "My Project", "external_project_id": null, "gitlab_project_id": null, "custom_repo_url": null, "custom_repo_user": null, "custom_repo_pass": null, "custom_repo_ssh_key_id": null, "status": "ACTIVE", "access": "PRIVATE", "create_date": "2023-01-15T10:30:00Z", "created_by": { "url": "https://api.buddy.works/workspaces/my-workspace/members/123", "html_url": "https://app.buddy.works/my-workspace/profile/123", "id": 123, "name": "John Doe", "avatar_url": "https://app.buddy.works/image-server/user/0/0/0/0/0/0/123/a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6/w/32/32/AVATAR.png?ts=1674644200000", "email": "john.doe@company.com", "admin": false, "workspace_owner": false }, "http_repository": "https://git.buddy.works/my-workspace/my-project.git", "ssh_repository": "git@git.buddy.works:my-workspace/my-project.git", "default_branch": "main", "integration": null, "fetch_submodules": true, "fetch_submodules_env_key": "id_workspace", "allow_pull_requests": true, "update_default_branch_from_external": false, "without_repository": false }
STATUS
200 OK