GitLab
Connect to GitLab to manage repositories, issues, merge requests, pipelines, CI/CD, users, groups, and DevOps workflows.
Supports authentication: OAuth 2.0
Set up the agent connector
Section titled “Set up the agent connector”Register your Scalekit environment with the GitLab connector so Scalekit handles the OAuth 2.0 flow and token lifecycle for you. The connection name you create will be used to identify and invoke the connection programmatically. Then complete the configuration in your application as follows:
-
Set up auth redirects
-
In Scalekit dashboard, go to Agent Auth → Create Connection. Find GitLab and click Create.
-
Click Use your own credentials and copy the redirect URI. It looks like
https://<SCALEKIT_ENVIRONMENT_URL>/sso/v1/oauth/<CONNECTION_ID>/callback.
-
Go to GitLab Applications settings (User Settings → Applications) and open or create your OAuth application.
-
Paste the copied URI into the Redirect URI field and click Save application.

-
Under Scopes, select the permissions your agent needs:
Scope Access granted Use when apiFull read/write access to all API endpoints Most tools — recommended for full access read_userCurrent user’s profile gitlab_current_user_getonlyread_apiRead-only access to all API endpoints Read-only agents read_repositoryRead access to repositories File and commit reads only write_repositoryPush access to repositories gitlab_file_create,gitlab_file_update,gitlab_branch_create
-
-
Get client credentials
After saving the application, GitLab shows the Application ID and Secret on the application detail page:

- Application ID — listed on the app’s main settings page
- Secret — shown only once after creation; if you lose it, regenerate it from the same page
-
Add credentials in Scalekit
-
In Scalekit dashboard, go to Agent Auth → Connections and open the connection you created.
-
Enter your credentials:
- Client ID — paste your GitLab Application ID
- Client Secret — paste your GitLab Secret

-
Click Save.
-
Tool list
Section titled “Tool list”gitlab_branch_create
Section titled “gitlab_branch_create”Create a new branch in a GitLab repository.
| Name | Type | Required | Description |
|---|---|---|---|
branch | string | Yes | The name of the new branch. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
ref | string | Yes | The source branch, tag, or commit SHA to branch from. |
gitlab_branch_delete
Section titled “gitlab_branch_delete”Delete a branch from a GitLab repository.
| Name | Type | Required | Description |
|---|---|---|---|
branch | string | Yes | The name of the branch to delete. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
gitlab_branch_get
Section titled “gitlab_branch_get”Get details of a specific branch in a GitLab repository.
| Name | Type | Required | Description |
|---|---|---|---|
branch | string | Yes | The name of the branch. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
gitlab_branches_list
Section titled “gitlab_branches_list”List repository branches for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
search | string | No | Filter branches by name. |
gitlab_commit_comment_create
Section titled “gitlab_commit_comment_create”Add a comment to a specific commit.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
line | integer | No | Line number for an inline comment. |
note | string | Yes | The comment text. |
path | string | No | File path for an inline comment. |
sha | string | Yes | The commit SHA. |
gitlab_commit_comments_list
Section titled “gitlab_commit_comments_list”List comments on a specific commit.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
sha | string | Yes | The commit SHA. |
gitlab_commit_diff_get
Section titled “gitlab_commit_diff_get”Get the diff of a specific commit.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
sha | string | Yes | The commit SHA. |
gitlab_commit_get
Section titled “gitlab_commit_get”Get details of a specific commit by its SHA.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
sha | string | Yes | The commit SHA. |
gitlab_commits_list
Section titled “gitlab_commits_list”List repository commits for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
author | string | No | Filter commits by author name or email. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
page | integer | No | Page number for pagination. |
path | string | No | Filter commits by file path. |
per_page | integer | No | Number of results per page (max 100). |
ref_name | string | No | The branch or tag name to list commits from. |
since | string | No | Only commits after this date are returned (ISO 8601 format). |
until | string | No | Only commits before this date are returned (ISO 8601 format). |
gitlab_compare_refs
Section titled “gitlab_compare_refs”Compare two refs (branches, tags, or commits) in a GitLab repository.
| Name | Type | Required | Description |
|---|---|---|---|
from | string | Yes | The source branch, tag, or commit SHA to compare from. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
straight | string | No | Comparison method: ‘true’ for straight diff, ‘false’ for merge base. |
to | string | Yes | The target branch, tag, or commit SHA to compare to. |
gitlab_current_user_get
Section titled “gitlab_current_user_get”Get the currently authenticated user’s profile.
gitlab_current_user_ssh_keys_list
Section titled “gitlab_current_user_ssh_keys_list”List SSH keys for the currently authenticated user.
gitlab_deploy_key_create
Section titled “gitlab_deploy_key_create”Create a new deploy key for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
can_push | string | No | If ‘true’, the deploy key has write access. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
key | string | Yes | The SSH public key content. |
title | string | Yes | A descriptive title for the deploy key. |
gitlab_deploy_key_delete
Section titled “gitlab_deploy_key_delete”Delete a deploy key from a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
key_id | integer | Yes | The numeric ID of the deploy key to delete. |
gitlab_deploy_keys_list
Section titled “gitlab_deploy_keys_list”List deploy keys for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
gitlab_file_create
Section titled “gitlab_file_create”Create a new file in a GitLab repository.
| Name | Type | Required | Description |
|---|---|---|---|
author_email | string | No | The author’s email for the commit. |
author_name | string | No | The author’s name for the commit. |
branch | string | Yes | The branch to create the file on. |
commit_message | string | Yes | The commit message for creating this file. |
content | string | Yes | The file content (plain text or base64 encoded). |
encoding | string | No | The encoding type: ‘text’ or ‘base64’. |
file_path | string | Yes | URL-encoded file path in the repository. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
gitlab_file_delete
Section titled “gitlab_file_delete”Delete a file from a GitLab repository.
| Name | Type | Required | Description |
|---|---|---|---|
branch | string | Yes | The branch to delete the file from. |
commit_message | string | Yes | The commit message for deleting this file. |
file_path | string | Yes | URL-encoded file path in the repository. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
gitlab_file_get
Section titled “gitlab_file_get”Get a file’s content and metadata from a GitLab repository.
| Name | Type | Required | Description |
|---|---|---|---|
file_path | string | Yes | URL-encoded file path in the repository. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
ref | string | Yes | The branch, tag, or commit SHA to get the file from. |
gitlab_file_update
Section titled “gitlab_file_update”Update an existing file in a GitLab repository.
| Name | Type | Required | Description |
|---|---|---|---|
branch | string | Yes | The branch to update the file on. |
commit_message | string | Yes | The commit message for updating this file. |
content | string | Yes | The new file content. |
file_path | string | Yes | URL-encoded file path in the repository. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
last_commit_id | string | No | Last known file commit ID (for conflict detection). |
gitlab_global_search
Section titled “gitlab_global_search”Search globally across GitLab for projects, issues, merge requests, and more.
| Name | Type | Required | Description |
|---|---|---|---|
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
scope | string | Yes | The scope to search in. |
search | string | Yes | The search query string. |
gitlab_group_create
Section titled “gitlab_group_create”Create a new GitLab group or subgroup.
| Name | Type | Required | Description |
|---|---|---|---|
description | string | No | Optional group description. |
name | string | Yes | The name of the group. |
parent_id | integer | No | ID of the parent group (for subgroups). |
path | string | Yes | URL-friendly path slug for the group. |
visibility | string | No | Visibility level: private, internal, or public. |
gitlab_group_delete
Section titled “gitlab_group_delete”Delete a GitLab group. This is an asynchronous operation (returns 202 Accepted).
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The group ID (numeric) or URL-encoded path. |
gitlab_group_get
Section titled “gitlab_group_get”Get a specific group by numeric ID or URL-encoded path.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The group ID (numeric) or URL-encoded path. |
gitlab_group_member_add
Section titled “gitlab_group_member_add”Add a member to a GitLab group.
| Name | Type | Required | Description |
|---|---|---|---|
access_level | integer | Yes | Access level for the member. 10=Guest, 20=Reporter, 30=Developer, 40=Maintainer, 50=Owner. |
id | string | Yes | The group ID (numeric) or URL-encoded path. |
user_id | integer | Yes | The numeric ID of the user to add. |
gitlab_group_member_remove
Section titled “gitlab_group_member_remove”Remove a member from a GitLab group.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The group ID (numeric) or URL-encoded path. |
user_id | integer | Yes | The numeric ID of the user to remove. |
gitlab_group_members_list
Section titled “gitlab_group_members_list”List members of a GitLab group.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The group ID (numeric) or URL-encoded path. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
query | string | No | Filter members by name. |
gitlab_group_projects_list
Section titled “gitlab_group_projects_list”List projects belonging to a GitLab group.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The group ID (numeric) or URL-encoded path. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
search | string | No | Filter projects by name. |
visibility | string | No | Filter by visibility level: public, internal, or private. |
gitlab_group_update
Section titled “gitlab_group_update”Update a GitLab group’s settings.
| Name | Type | Required | Description |
|---|---|---|---|
description | string | No | Updated group description. |
id | string | Yes | The group ID (numeric) or URL-encoded path. |
name | string | No | New name for the group. |
visibility | string | No | New visibility level: private, internal, or public. |
gitlab_groups_list
Section titled “gitlab_groups_list”List groups accessible to the authenticated user.
| Name | Type | Required | Description |
|---|---|---|---|
min_access_level | integer | No | Minimum access level filter (10=Guest, 20=Reporter, 30=Developer, 40=Maintainer, 50=Owner). |
owned | string | No | If ‘true’, limits to groups explicitly owned by the current user. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
search | string | No | Search groups by name. |
gitlab_issue_create
Section titled “gitlab_issue_create”Create a new issue in a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
assignee_ids | string | No | Comma-separated list of user IDs to assign. |
description | string | No | Detailed description of the issue (Markdown supported). |
due_date | string | No | Due date for the issue in YYYY-MM-DD format. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
labels | string | No | Comma-separated list of label names to apply. |
milestone_id | integer | No | The ID of the milestone to assign. |
title | string | Yes | The title of the issue. |
gitlab_issue_delete
Section titled “gitlab_issue_delete”Delete an issue from a GitLab project (admin only).
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
issue_iid | integer | Yes | The internal ID of the issue within the project. |
gitlab_issue_get
Section titled “gitlab_issue_get”Get a specific issue by its internal ID (IID).
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
issue_iid | integer | Yes | The internal ID of the issue within the project. |
gitlab_issue_labels_list
Section titled “gitlab_issue_labels_list”List labels for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
gitlab_issue_note_create
Section titled “gitlab_issue_note_create”Add a comment to a specific issue.
| Name | Type | Required | Description |
|---|---|---|---|
body | string | Yes | The comment text (Markdown supported). |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
issue_iid | integer | Yes | The internal ID of the issue. |
gitlab_issue_note_delete
Section titled “gitlab_issue_note_delete”Delete a comment on a specific issue.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
issue_iid | integer | Yes | The internal ID of the issue. |
note_id | integer | Yes | The ID of the note to delete. |
gitlab_issue_note_update
Section titled “gitlab_issue_note_update”Update a comment on a specific issue.
| Name | Type | Required | Description |
|---|---|---|---|
body | string | Yes | The updated comment text (Markdown supported). |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
issue_iid | integer | Yes | The internal ID of the issue. |
note_id | integer | Yes | The ID of the note to update. |
gitlab_issue_notes_list
Section titled “gitlab_issue_notes_list”List comments (notes) on a specific issue.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
issue_iid | integer | Yes | The internal ID of the issue. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
gitlab_issue_update
Section titled “gitlab_issue_update”Update an existing issue in a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
assignee_ids | string | No | Comma-separated list of user IDs to assign. |
description | string | No | Updated description of the issue. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
issue_iid | integer | Yes | The internal ID of the issue within the project. |
labels | string | No | Comma-separated list of label names. |
state_event | string | No | State transition: ‘close’ to close, ‘reopen’ to reopen. |
title | string | No | New title for the issue. |
gitlab_issues_list
Section titled “gitlab_issues_list”List issues for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
assignee_id | integer | No | Filter issues by assignee user ID. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
labels | string | No | Filter issues by comma-separated label names. |
milestone | string | No | Filter issues by milestone title. |
order_by | string | No | Order issues by field (created_at, updated_at, priority). |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
search | string | No | Search issues by title or description. |
sort | string | No | Sort order: asc or desc. |
state | string | No | Filter issues by state: opened, closed, or all. |
gitlab_job_artifacts_download
Section titled “gitlab_job_artifacts_download”Download the artifacts archive of a specific CI/CD job.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
job_id | integer | Yes | The numeric ID of the job. |
gitlab_job_cancel
Section titled “gitlab_job_cancel”Cancel a specific CI/CD job.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
job_id | integer | Yes | The numeric ID of the job to cancel. |
gitlab_job_get
Section titled “gitlab_job_get”Get details of a specific CI/CD job.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
job_id | integer | Yes | The numeric ID of the job. |
gitlab_job_log_get
Section titled “gitlab_job_log_get”Get the log (trace) output of a specific CI/CD job.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
job_id | integer | Yes | The numeric ID of the job. |
gitlab_job_retry
Section titled “gitlab_job_retry”Retry a specific CI/CD job.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
job_id | integer | Yes | The numeric ID of the job to retry. |
gitlab_jobs_list
Section titled “gitlab_jobs_list”List all jobs for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
scope | string | No | Filter jobs by scope/status. |
gitlab_label_create
Section titled “gitlab_label_create”Create a new label in a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
color | string | Yes | The color for the label in hex format (e.g. #FF0000). |
description | string | No | Optional description for the label. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
name | string | Yes | The name of the label. |
gitlab_merge_request_approvals_get
Section titled “gitlab_merge_request_approvals_get”Get the approval state of a specific merge request.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
merge_request_iid | integer | Yes | The internal ID of the merge request. |
gitlab_merge_request_approve
Section titled “gitlab_merge_request_approve”Approve a merge request.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
merge_request_iid | integer | Yes | The internal ID of the merge request. |
gitlab_merge_request_commits_list
Section titled “gitlab_merge_request_commits_list”List commits in a specific merge request.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
merge_request_iid | integer | Yes | The internal ID of the merge request. |
gitlab_merge_request_create
Section titled “gitlab_merge_request_create”Create a new merge request in a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
assignee_id | integer | No | The numeric ID of the user to assign. |
description | string | No | Description for the merge request (Markdown supported). |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
labels | string | No | Comma-separated list of label names. |
remove_source_branch | string | No | If ‘true’, removes the source branch after merging. |
source_branch | string | Yes | The source branch name. |
squash | string | No | If ‘true’, squashes all commits into one on merge. |
target_branch | string | Yes | The target branch name. |
title | string | Yes | The title of the merge request. |
gitlab_merge_request_diff_get
Section titled “gitlab_merge_request_diff_get”Get the diffs of a specific merge request.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
merge_request_iid | integer | Yes | The internal ID of the merge request. |
gitlab_merge_request_get
Section titled “gitlab_merge_request_get”Get a specific merge request by its internal ID (IID).
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
merge_request_iid | integer | Yes | The internal ID of the merge request within the project. |
gitlab_merge_request_merge
Section titled “gitlab_merge_request_merge”Merge an approved merge request in a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
merge_commit_message | string | No | Custom merge commit message. |
merge_request_iid | integer | Yes | The internal ID of the merge request. |
should_remove_source_branch | string | No | If ‘true’, removes the source branch after merging. |
squash | string | No | If ‘true’, squashes all commits into one. |
gitlab_merge_request_note_create
Section titled “gitlab_merge_request_note_create”Add a comment to a specific merge request.
| Name | Type | Required | Description |
|---|---|---|---|
body | string | Yes | The comment text (Markdown supported). |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
merge_request_iid | integer | Yes | The internal ID of the merge request. |
gitlab_merge_request_notes_list
Section titled “gitlab_merge_request_notes_list”List comments on a specific merge request.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
merge_request_iid | integer | Yes | The internal ID of the merge request. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
gitlab_merge_request_update
Section titled “gitlab_merge_request_update”Update an existing merge request in a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
assignee_id | integer | No | The numeric ID of the user to assign. |
description | string | No | Updated description for the merge request. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
labels | string | No | Comma-separated list of label names. |
merge_request_iid | integer | Yes | The internal ID of the merge request. |
state_event | string | No | State transition: ‘close’ to close, ‘reopen’ to reopen. |
target_branch | string | No | New target branch name. |
title | string | No | New title for the merge request. |
gitlab_merge_requests_list
Section titled “gitlab_merge_requests_list”List merge requests for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
labels | string | No | Filter by comma-separated label names. |
order_by | string | No | Order MRs by field (created_at, updated_at, title). |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
search | string | No | Search MRs by title or description. |
sort | string | No | Sort order: asc or desc. |
source_branch | string | No | Filter by source branch name. |
state | string | No | Filter by state: opened, closed, locked, merged, or all. |
target_branch | string | No | Filter by target branch name. |
gitlab_milestone_create
Section titled “gitlab_milestone_create”Create a new milestone in a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
description | string | No | Optional description for the milestone. |
due_date | string | No | Due date for the milestone in YYYY-MM-DD format. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
start_date | string | No | Start date for the milestone in YYYY-MM-DD format. |
title | string | Yes | The title of the milestone. |
gitlab_milestone_delete
Section titled “gitlab_milestone_delete”Delete a milestone from a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
milestone_id | integer | Yes | The numeric ID of the milestone. |
gitlab_milestone_get
Section titled “gitlab_milestone_get”Get a specific project milestone.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
milestone_id | integer | Yes | The numeric ID of the milestone. |
gitlab_milestone_update
Section titled “gitlab_milestone_update”Update an existing milestone in a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
description | string | No | Updated description for the milestone. |
due_date | string | No | Updated due date in YYYY-MM-DD format. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
milestone_id | integer | Yes | The numeric ID of the milestone. |
state_event | string | No | State transition: ‘close’ to close, ‘activate’ to reopen. |
title | string | No | New title for the milestone. |
gitlab_milestones_list
Section titled “gitlab_milestones_list”List milestones for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
search | string | No | Filter milestones by title. |
state | string | No | Filter milestones by state: active or closed. |
gitlab_namespaces_list
Section titled “gitlab_namespaces_list”List namespaces available to the current user (personal namespaces and groups).
| Name | Type | Required | Description |
|---|---|---|---|
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
search | string | No | Filter namespaces by name. |
gitlab_pipeline_cancel
Section titled “gitlab_pipeline_cancel”Cancel a running pipeline.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
pipeline_id | integer | Yes | The numeric ID of the pipeline to cancel. |
gitlab_pipeline_create
Section titled “gitlab_pipeline_create”Trigger a new CI/CD pipeline for a specific branch or tag. Note: GitLab.com requires identity verification on the account before pipelines can be triggered via API. Ensure the authenticated user has verified their identity at gitlab.com/-/profile/verify.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
ref | string | Yes | The branch or tag name to run the pipeline on. |
variables | string | No | JSON array of pipeline variables, each with ‘key’ and ‘value’ fields. |
gitlab_pipeline_delete
Section titled “gitlab_pipeline_delete”Delete a pipeline from a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
pipeline_id | integer | Yes | The numeric ID of the pipeline to delete. |
gitlab_pipeline_get
Section titled “gitlab_pipeline_get”Get details of a specific pipeline.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
pipeline_id | integer | Yes | The numeric ID of the pipeline. |
gitlab_pipeline_jobs_list
Section titled “gitlab_pipeline_jobs_list”List jobs for a specific pipeline.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
pipeline_id | integer | Yes | The numeric ID of the pipeline. |
scope | string | No | Filter jobs by scope. |
gitlab_pipeline_retry
Section titled “gitlab_pipeline_retry”Retry a failed pipeline.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
pipeline_id | integer | Yes | The numeric ID of the pipeline to retry. |
gitlab_pipelines_list
Section titled “gitlab_pipelines_list”List pipelines for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
ref | string | No | Filter pipelines by branch or tag name. |
sha | string | No | Filter pipelines by commit SHA. |
status | string | No | Filter by pipeline status. |
gitlab_project_create
Section titled “gitlab_project_create”Create a new GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
description | string | No | A short description of the project. |
initialize_with_readme | string | No | If ‘true’, initializes the repository with a README. |
name | string | Yes | The name of the project. |
visibility | string | No | Visibility level: private, internal, or public. Defaults to private. |
gitlab_project_delete
Section titled “gitlab_project_delete”Delete a GitLab project. This is an asynchronous operation (returns 202 Accepted).
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path (e.g. ‘namespace%2Fproject’). |
gitlab_project_fork
Section titled “gitlab_project_fork”Fork a GitLab project into a namespace.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path to fork. |
name | string | No | The name for the forked project. |
namespace_id | integer | No | The ID of the namespace to fork the project into. |
path | string | No | The URL path (slug) for the forked project. Must be unique in the target namespace. If omitted, GitLab uses the source project path which may already be taken. |
gitlab_project_forks_list
Section titled “gitlab_project_forks_list”List forks of a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
gitlab_project_get
Section titled “gitlab_project_get”Get a specific project by numeric ID or URL-encoded namespace/project path.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path (e.g. ‘namespace%2Fproject’). |
gitlab_project_member_add
Section titled “gitlab_project_member_add”Add a member to a GitLab project with a specified access level.
| Name | Type | Required | Description |
|---|---|---|---|
access_level | integer | Yes | Access level for the member. 10=Guest, 20=Reporter, 30=Developer, 40=Maintainer, 50=Owner. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
user_id | integer | Yes | The numeric ID of the user to add. |
gitlab_project_member_remove
Section titled “gitlab_project_member_remove”Remove a member from a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
user_id | integer | Yes | The numeric ID of the user to remove. |
gitlab_project_members_list
Section titled “gitlab_project_members_list”List members of a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
query | string | No | Filter members by name. |
gitlab_project_search
Section titled “gitlab_project_search”Search within a specific GitLab project for issues, merge requests, commits, code, and more.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
ref | string | No | The branch or tag name to search (for blobs or commits scope). |
scope | string | Yes | The scope to search in within the project. |
search | string | Yes | The search query string. |
gitlab_project_snippet_create
Section titled “gitlab_project_snippet_create”Create a new snippet in a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
content | string | Yes | The content of the snippet. |
description | string | No | Optional description for the snippet. |
file_name | string | Yes | The filename for the snippet. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
title | string | Yes | The title of the snippet. |
visibility | string | No | Visibility level: private, internal, or public. |
gitlab_project_snippet_get
Section titled “gitlab_project_snippet_get”Get a specific snippet from a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
snippet_id | integer | Yes | The numeric ID of the snippet. |
gitlab_project_snippets_list
Section titled “gitlab_project_snippets_list”List all snippets in a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
gitlab_project_star
Section titled “gitlab_project_star”Star a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
gitlab_project_unstar
Section titled “gitlab_project_unstar”Unstar a GitLab project. Returns 200 with project data if successfully unstarred, or 304 if the project was not starred.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
gitlab_project_update
Section titled “gitlab_project_update”Update an existing GitLab project’s settings.
| Name | Type | Required | Description |
|---|---|---|---|
default_branch | string | No | The default branch name for the project. |
description | string | No | A short description of the project. |
id | string | Yes | The project ID (numeric) or URL-encoded path (e.g. ‘namespace%2Fproject’). |
name | string | No | New name for the project. |
visibility | string | No | New visibility level: private, internal, or public. |
gitlab_project_variable_create
Section titled “gitlab_project_variable_create”Create a new CI/CD variable for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
environment_scope | string | No | The environment scope for this variable (default ’*’). |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
key | string | Yes | The variable key name. |
masked | string | No | If ‘true’, masks the variable in job logs. |
protected | string | No | If ‘true’, the variable is only available on protected branches/tags. |
value | string | Yes | The value of the variable. |
variable_type | string | No | The variable type: env_var (default) or file. |
gitlab_project_variable_delete
Section titled “gitlab_project_variable_delete”Delete a CI/CD variable from a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
key | string | Yes | The variable key name to delete. |
gitlab_project_variable_get
Section titled “gitlab_project_variable_get”Get a specific CI/CD variable for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
key | string | Yes | The variable key name. |
gitlab_project_variable_update
Section titled “gitlab_project_variable_update”Update an existing CI/CD variable for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
key | string | Yes | The variable key name to update. |
masked | string | No | If ‘true’, masks the variable in job logs. |
protected | string | No | If ‘true’, the variable is only available on protected branches/tags. |
value | string | Yes | The new value of the variable. |
gitlab_project_variables_list
Section titled “gitlab_project_variables_list”List all CI/CD variables for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
gitlab_project_webhook_create
Section titled “gitlab_project_webhook_create”Create a new webhook for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
issues_events | string | No | If ‘true’, trigger the webhook on issue events. |
merge_requests_events | string | No | If ‘true’, trigger on merge request events. |
pipeline_events | string | No | If ‘true’, trigger on pipeline events. |
push_events | string | No | If ‘true’, trigger the webhook on push events. |
token | string | No | Secret token to validate webhook payloads. |
url | string | Yes | The URL to send webhook payloads to. |
gitlab_project_webhook_delete
Section titled “gitlab_project_webhook_delete”Delete a webhook from a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
hook_id | integer | Yes | The numeric ID of the webhook to delete. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
gitlab_project_webhook_get
Section titled “gitlab_project_webhook_get”Get a specific webhook for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
hook_id | integer | Yes | The numeric ID of the webhook. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
gitlab_project_webhook_update
Section titled “gitlab_project_webhook_update”Update an existing webhook for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
hook_id | integer | Yes | The numeric ID of the webhook to update. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
merge_requests_events | string | No | If ‘true’, trigger on merge request events. |
pipeline_events | string | No | If ‘true’, trigger on pipeline events. |
push_events | string | No | If ‘true’, trigger on push events. |
url | string | Yes | The new URL to send webhook payloads to. |
gitlab_project_webhooks_list
Section titled “gitlab_project_webhooks_list”List all webhooks configured for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
gitlab_projects_list
Section titled “gitlab_projects_list”List all projects accessible to the authenticated user. Supports filtering by search, ownership, membership, and visibility.
| Name | Type | Required | Description |
|---|---|---|---|
membership | string | No | If ‘true’, limits by projects where the user is a member. |
order_by | string | No | Order projects by a field (e.g. id, name, created_at). |
owned | string | No | If ‘true’, limits by projects explicitly owned by the current user. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
search | string | No | Search query to filter projects by name. |
sort | string | No | Sort order: ‘asc’ or ‘desc’. |
visibility | string | No | Filter by visibility level: public, internal, or private. |
gitlab_release_create
Section titled “gitlab_release_create”Create a new release in a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
description | string | Yes | Release notes in Markdown format. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
name | string | Yes | The release name. |
ref | string | No | The branch or commit to create the tag from (only if tag does not exist). |
tag_name | string | Yes | The tag name for the release. |
gitlab_release_delete
Section titled “gitlab_release_delete”Delete a release from a GitLab project. Returns the deleted release object.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
tag_name | string | Yes | The tag name of the release to delete. |
gitlab_release_get
Section titled “gitlab_release_get”Get a specific release by tag name.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
tag_name | string | Yes | The tag name for the release. |
gitlab_release_update
Section titled “gitlab_release_update”Update an existing release in a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
description | string | No | Updated release notes in Markdown format. |
id | string | Yes | The project ID (numeric) or URL-encoded path. |
name | string | No | Updated release name. |
tag_name | string | Yes | The tag name of the release to update. |
gitlab_releases_list
Section titled “gitlab_releases_list”List releases for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
gitlab_repository_tree_list
Section titled “gitlab_repository_tree_list”List files and directories in a GitLab repository.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
page | integer | No | Page number for pagination. |
path | string | No | Folder path to list files from. |
per_page | integer | No | Number of results per page (max 100). |
recursive | string | No | If ‘true’, lists files recursively. |
ref | string | No | The branch, tag, or commit SHA to list files from. |
gitlab_ssh_key_add
Section titled “gitlab_ssh_key_add”Add an SSH key for the currently authenticated user.
| Name | Type | Required | Description |
|---|---|---|---|
key | string | Yes | The SSH public key content. |
title | string | Yes | A descriptive title for the SSH key. |
gitlab_tag_create
Section titled “gitlab_tag_create”Create a new tag in a GitLab repository.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
message | string | No | Message for an annotated tag. |
ref | string | Yes | The commit SHA, branch name, or another tag name to create the tag from. |
release_description | string | No | Release notes for the tag. |
tag_name | string | Yes | The name of the new tag. |
gitlab_tag_delete
Section titled “gitlab_tag_delete”Delete a tag from a GitLab repository.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
tag_name | string | Yes | The name of the tag to delete. |
gitlab_tag_get
Section titled “gitlab_tag_get”Get details of a specific repository tag.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
tag_name | string | Yes | The name of the tag. |
gitlab_tags_list
Section titled “gitlab_tags_list”List repository tags for a GitLab project.
| Name | Type | Required | Description |
|---|---|---|---|
id | string | Yes | The project ID (numeric) or URL-encoded path. |
order_by | string | No | Order tags by field (name, updated, version). |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
search | string | No | Filter tags by name. |
sort | string | No | Sort order: asc or desc. |
gitlab_user_get
Section titled “gitlab_user_get”Get a specific user by ID.
| Name | Type | Required | Description |
|---|---|---|---|
id | integer | Yes | The ID of the user. |
gitlab_user_projects_list
Section titled “gitlab_user_projects_list”List projects owned by a specific user.
| Name | Type | Required | Description |
|---|---|---|---|
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
user_id | integer | Yes | The numeric ID of the user whose projects to list. |
gitlab_users_list
Section titled “gitlab_users_list”List users. Supports filtering by search term, username, and active status.
| Name | Type | Required | Description |
|---|---|---|---|
active | string | No | Filter by active status. Use ‘true’ or ‘false’. |
page | integer | No | Page number for pagination. |
per_page | integer | No | Number of results per page (max 100). |
search | string | No | Search users by name or email. |
username | string | No | Filter by exact username. |