Skip to content

Latest commit

 

History

History
1936 lines (1509 loc) · 79.5 KB

File metadata and controls

1936 lines (1509 loc) · 79.5 KB
title GitLab
description Interact with GitLab projects, issues, merge requests, and pipelines

import { BlockInfoCard } from "@/components/ui/block-info-card"

{/* MANUAL-CONTENT-START:intro */} GitLab is a comprehensive DevOps platform that allows teams to manage, collaborate on, and automate their software development lifecycle. With GitLab, you can effortlessly handle source code management, CI/CD, reviews, and collaboration in a single application.

With GitLab in Sim, you can:

  • Manage projects and repositories: List and retrieve your GitLab projects, access details, and organize your repositories
  • Work with issues: List, create, and comment on issues to track work and collaborate effectively
  • Handle merge requests: Review, create, and manage merge requests for code changes and peer reviews
  • Automate CI/CD pipelines: Trigger, monitor, and interact with GitLab pipelines as part of your automation flows
  • Collaborate with comments: Add comments to issues or merge requests for efficient communication within your team

Using Sim’s GitLab integration, your agents can programmatically interact with your GitLab projects. Automate project management, issue tracking, code reviews, and pipeline operations seamlessly in your workflows, optimizing your software development process and enhancing collaboration across your team. {/* MANUAL-CONTENT-END */}

Usage Instructions

Integrate GitLab into the workflow. Can manage projects, issues, merge requests, pipelines, and add comments, plus project/group membership, invitations, access requests, SAML group links, and instance user administration. Supports all core GitLab DevOps operations.

Actions

gitlab_list_projects

List GitLab projects accessible to the authenticated user

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
owned boolean No Limit to projects owned by the current user
membership boolean No Limit to projects the current user is a member of
search string No Search projects by name
visibility string No Filter by visibility (public, internal, private)
orderBy string No Order by field (id, name, path, created_at, updated_at, last_activity_at)
sort string No Sort direction (asc, desc)
perPage number No Number of results per page (default 20, max 100)
page number No Page number for pagination

Output

Parameter Type Description
projects array List of GitLab projects
total number Total number of projects

gitlab_get_project

Get details of a specific GitLab project

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject) (e.g., "namespace/project")

Output

Parameter Type Description
project object The GitLab project details

gitlab_list_issues

List issues in a GitLab project

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
state string No Filter by state (opened, closed, all)
labels string No Comma-separated list of label names
assigneeId number No Filter by assignee user ID
milestoneTitle string No Filter by milestone title
search string No Search issues by title and description
orderBy string No Order by field (created_at, updated_at, priority, due_date, relative_position, label_priority, milestone_due, popularity, weight)
sort string No Sort direction (asc, desc)
perPage number No Number of results per page (default 20, max 100)
page number No Page number for pagination

Output

Parameter Type Description
issues array List of GitLab issues
total number Total number of issues

gitlab_get_issue

Get details of a specific GitLab issue

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
issueIid number Yes Issue number within the project (the # shown in GitLab UI)

Output

Parameter Type Description
issue object The GitLab issue details

gitlab_create_issue

Create a new issue in a GitLab project

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
title string Yes Issue title
description string No Issue description (Markdown supported)
labels string No Comma-separated list of label names
assigneeIds array No Array of user IDs to assign
milestoneId number No Milestone ID to assign
dueDate string No Due date in YYYY-MM-DD format
confidential boolean No Whether the issue is confidential

Output

Parameter Type Description
issue object The created GitLab issue

gitlab_update_issue

Update an existing issue in a GitLab project

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
issueIid number Yes Issue internal ID (IID)
title string No New issue title
description string No New issue description (Markdown supported)
stateEvent string No State event (close or reopen)
labels string No Comma-separated list of label names
assigneeIds array No Array of user IDs to assign
milestoneId number No Milestone ID to assign
dueDate string No Due date in YYYY-MM-DD format
confidential boolean No Whether the issue is confidential

Output

Parameter Type Description
issue object The updated GitLab issue

gitlab_delete_issue

Delete an issue from a GitLab project

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
issueIid number Yes Issue internal ID (IID)

Output

Parameter Type Description
success boolean Whether the issue was deleted successfully

gitlab_create_issue_note

Add a comment to a GitLab issue

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
issueIid number Yes Issue internal ID (IID)
body string Yes Comment body (Markdown supported)
internal boolean No Create the comment as an internal note visible only to project members

Output

Parameter Type Description
note object The created comment

gitlab_list_merge_requests

List merge requests in a GitLab project

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
state string No Filter by state (opened, closed, locked, merged, all)
labels string No Comma-separated list of label names
sourceBranch string No Filter by source branch
targetBranch string No Filter by target branch
orderBy string No Order by field (created_at, updated_at, merged_at, priority, label_priority, milestone_due, popularity, title)
sort string No Sort direction (asc, desc)
perPage number No Number of results per page (default 20, max 100)
page number No Page number for pagination

Output

Parameter Type Description
mergeRequests array List of GitLab merge requests
total number Total number of merge requests

gitlab_get_merge_request

Get details of a specific GitLab merge request

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
mergeRequestIid number Yes Merge request internal ID (IID)

Output

Parameter Type Description
mergeRequest object The GitLab merge request details

gitlab_create_merge_request

Create a new merge request in a GitLab project

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
sourceBranch string Yes Source branch name
targetBranch string Yes Target branch name
title string Yes Merge request title
description string No Merge request description (Markdown supported)
labels string No Comma-separated list of label names
assigneeIds array No Array of user IDs to assign
milestoneId number No Milestone ID to assign
removeSourceBranch boolean No Delete source branch after merge
squash boolean No Squash commits on merge
draft boolean No Mark as draft (applied via the "Draft:" title prefix)

Output

Parameter Type Description
mergeRequest object The created GitLab merge request

gitlab_update_merge_request

Update an existing merge request in a GitLab project

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
mergeRequestIid number Yes Merge request internal ID (IID)
title string No New merge request title
description string No New merge request description
stateEvent string No State event (close or reopen)
labels string No Comma-separated list of label names
assigneeIds array No Array of user IDs to assign
milestoneId number No Milestone ID to assign
targetBranch string No New target branch
removeSourceBranch boolean No Delete source branch after merge
squash boolean No Squash commits on merge
draft boolean No Mark as draft or remove draft status (applied via the "Draft:" title prefix; requires title to be set)

Output

Parameter Type Description
mergeRequest object The updated GitLab merge request

gitlab_merge_merge_request

Merge a merge request in a GitLab project

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
mergeRequestIid number Yes Merge request internal ID (IID)
mergeCommitMessage string No Custom merge commit message
squashCommitMessage string No Custom squash commit message
squash boolean No Squash commits before merging
shouldRemoveSourceBranch boolean No Delete source branch after merge
mergeWhenPipelineSucceeds boolean No Merge when pipeline succeeds

Output

Parameter Type Description
mergeRequest object The merged GitLab merge request

gitlab_create_merge_request_note

Add a comment to a GitLab merge request

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
mergeRequestIid number Yes Merge request internal ID (IID)
body string Yes Comment body (Markdown supported)
internal boolean No Create the comment as an internal note visible only to project members

Output

Parameter Type Description
note object The created comment

gitlab_list_pipelines

List pipelines in a GitLab project

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
ref string No Filter by ref (branch or tag)
status string No Filter by status (created, waiting_for_resource, preparing, pending, running, success, failed, canceling, canceled, skipped, manual, scheduled, waiting_for_callback)
orderBy string No Order by field (id, status, ref, updated_at, user_id)
sort string No Sort direction (asc, desc)
perPage number No Number of results per page (default 20, max 100)
page number No Page number for pagination

Output

Parameter Type Description
pipelines array List of GitLab pipelines
total number Total number of pipelines

gitlab_get_pipeline

Get details of a specific GitLab pipeline

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
pipelineId number Yes Pipeline ID

Output

Parameter Type Description
pipeline object The GitLab pipeline details

gitlab_create_pipeline

Trigger a new pipeline in a GitLab project

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
ref string Yes Branch or tag to run the pipeline on
variables array No Array of variables for the pipeline (each with key, value, and optional variable_type)
inputs json No Pipeline inputs as a key/value object (for pipelines with spec:inputs)

Output

Parameter Type Description
pipeline object The created GitLab pipeline

gitlab_retry_pipeline

Retry a failed GitLab pipeline

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
pipelineId number Yes Pipeline ID

Output

Parameter Type Description
pipeline object The retried GitLab pipeline

gitlab_cancel_pipeline

Cancel a running GitLab pipeline

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
pipelineId number Yes Pipeline ID

Output

Parameter Type Description
pipeline object The cancelled GitLab pipeline

gitlab_list_repository_tree

List files and directories in a GitLab project repository

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
path string No Path inside the repository to list
ref string No Branch, tag, or commit SHA to list from
recursive boolean No Whether to list files recursively
perPage number No Number of results per page (default 20, max 100)
page number No Page number for pagination

Output

Parameter Type Description
tree array List of repository tree entries
total number Total number of tree entries

gitlab_get_file

Get the contents of a file from a GitLab project repository

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
filePath string Yes Path to the file in the repository
ref string Yes Branch, tag, or commit SHA

Output

Parameter Type Description
filePath string The file path
fileName string The file name
size number The file size in bytes
ref string The branch, tag, or commit SHA
blobId string The blob ID
lastCommitId string The last commit ID that modified the file
content string The decoded file content, truncated to 1M characters
truncated boolean Whether the content was truncated

gitlab_create_file

Create a new file in a GitLab project repository

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
filePath string Yes Path to the file in the repository
branch string Yes Branch to commit the new file to
content string Yes File content
startBranch string No Name of the base branch to create the target branch from, if it does not exist
authorName string No Commit author name (defaults to the token user)
authorEmail string No Commit author email (defaults to the token user)
executeFilemode boolean No Enable the execute flag on the file
commitMessage string Yes Commit message

Output

Parameter Type Description
filePath string The created file path
branch string The branch the file was committed to

gitlab_update_file

Update an existing file in a GitLab project repository

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
filePath string Yes Path to the file in the repository
branch string Yes Branch to commit the update to
content string Yes New file content
startBranch string No Name of the base branch to create the target branch from, if it does not exist
authorName string No Commit author name (defaults to the token user)
authorEmail string No Commit author email (defaults to the token user)
executeFilemode boolean No Enable or disable the execute flag on the file
commitMessage string Yes Commit message
lastCommitId string No Last known commit ID for the file (optimistic locking)

Output

Parameter Type Description
filePath string The updated file path
branch string The branch the update was committed to

gitlab_create_branch

Create a new branch in a GitLab project repository

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
branch string Yes Name of the new branch
ref string Yes Source branch/tag/SHA

Output

Parameter Type Description
name string The created branch name
webUrl string The web URL of the branch
protected boolean Whether the branch is protected
commit object The commit the branch points to

gitlab_delete_branch

Delete a branch from a GitLab project repository

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
branch string Yes Name of the branch to delete

Output

Parameter Type Description
success boolean Whether the branch was deleted successfully

gitlab_compare_branches

Compare two branches, tags, or commits in a GitLab project repository

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
from string Yes Commit SHA or branch/tag name to compare from
to string Yes Commit SHA or branch/tag name to compare to
straight boolean No Compare directly from..to instead of using the merge base (defaults to false)
fromProjectId string No ID of the project to compare from (for cross-fork comparisons)
unidiff boolean No Return diffs in unified diff format (GitLab 16.5+)

Output

Parameter Type Description
commit object The latest commit in the comparison
commits array Commits between the two references
diffs array File diffs between the two references
compareTimeout boolean Whether the comparison exceeded size limits or timed out
compareSameRef boolean Whether both references point to the same commit
webUrl string The web URL for viewing the comparison

gitlab_list_branches

List branches in a GitLab project repository

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
search string No Filter branches by name
perPage number No Number of results per page (default 20, max 100)
page number No Page number for pagination

Output

Parameter Type Description
branches array List of branches
total number Total number of branches

gitlab_list_commits

List commits in a GitLab project repository

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
refName string No Branch, tag, or revision range to list commits from
since string No Only commits after this ISO 8601 date
until string No Only commits before this ISO 8601 date
path string No Only commits affecting this file path
author string No Filter commits by author
perPage number No Number of results per page (default 20, max 100)
page number No Page number for pagination

Output

Parameter Type Description
commits array List of commits
total number Number of commits returned on this page (GitLab does not report a grand total for commits)

gitlab_get_merge_request_changes

Get the file changes (diffs) of a GitLab merge request

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
mergeRequestIid number Yes Merge request internal ID (IID)

Output

Parameter Type Description
mergeRequestIid number The merge request internal ID (IID)
changes array List of file changes (diffs)
changesCount number Number of changed files returned (first 100)
hasMore boolean Whether the merge request has more than 100 changed files (results truncated)

gitlab_approve_merge_request

Approve a GitLab merge request

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
mergeRequestIid number Yes Merge request internal ID (IID)
sha string No HEAD SHA of the merge request to approve

Output

Parameter Type Description
approvalsRequired number Number of approvals required
approvalsLeft number Number of approvals still needed
approvedBy array List of approvers

gitlab_list_pipeline_jobs

List jobs for a GitLab pipeline

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
pipelineId number Yes Pipeline ID
scope string No Filter jobs by scope (e.g. created, running, success, failed)
includeRetried boolean No Whether to include retried jobs
perPage number No Number of results per page (default 20, max 100)
page number No Page number for pagination

Output

Parameter Type Description
jobs array List of pipeline jobs
total number Total number of jobs

gitlab_get_job_log

Get the log (trace) of a GitLab job

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
jobId number Yes Job ID

Output

Parameter Type Description
log string The job log (trace) output, truncated to 200k characters
truncated boolean Whether the log was truncated

gitlab_play_job

Trigger (play) a manual GitLab job

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
jobId number Yes Job ID
jobVariables array No Variables for the manual job (array of objects with key and value)

Output

Parameter Type Description
id number The job ID
name string The job name
status string The job status
webUrl string The web URL of the job

gitlab_list_releases

List releases in a GitLab project

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
orderBy string No Order by field (released_at, created_at)
sort string No Sort direction (asc, desc)
perPage number No Number of results per page (default 20, max 100)
page number No Page number for pagination

Output

Parameter Type Description
releases array List of GitLab releases
total number Total number of releases

gitlab_create_release

Create a new release in a GitLab project

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
projectId string Yes Project ID or path (e.g. mygroup/myproject)
tagName string Yes The Git tag for the release
name string No The release name
description string No Release description/notes (Markdown supported)
ref string No Commit SHA, branch, or tag to create the tag from if it does not already exist
releasedAt string No ISO 8601 date for an upcoming or historical release
tagMessage string No Annotation message to use if creating a new annotated tag
assetLinks array No Release asset links: array of objects with name, url, and optional link_type (other, runbook, image, package)
milestones array No Array of milestone titles to associate with the release

Output

Parameter Type Description
release object The created GitLab release

gitlab_list_members

List members of a GitLab project or group. Includes members inherited from ancestor groups by default.

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
resourceType string Yes Whether the resource is a 'project' or a 'group'
resourceId string Yes Project or group ID or path (e.g. mygroup/myproject)
directOnly boolean No When true, returns only direct members. Defaults to false, which also returns members inherited from ancestor groups.
query string No Filter members by name, email, or username
userIds string No Comma-separated user IDs to filter the results to
state string No Filter inherited-member results by state: 'awaiting' or 'active' (Premium/Ultimate; only applies when inherited members are included)
showSeatInfo boolean No Include seat information for each member
perPage number No Number of results per page (default 20, max 100)
page number No Page number for pagination

Output

Parameter Type Description
members array List of project or group members
total number Total number of members

gitlab_add_member

Add an existing GitLab user to a project or group at a given access level

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
resourceType string Yes Whether the resource is a 'project' or a 'group'
resourceId string Yes Project or group ID or path (e.g. mygroup/myproject)
userId number No The ID of the user to add. Provide either userId or username.
username string No The username of the user to add. Provide either userId or username.
accessLevel number Yes Access level: 0 (No access), 5 (Minimal), 10 (Guest), 15 (Planner), 20 (Reporter), 25 (Security Manager), 30 (Developer), 40 (Maintainer), 50 (Owner)
expiresAt string No Access expiration date in YYYY-MM-DD format
memberRoleId number No Custom member role ID (GitLab Ultimate only)

Output

Parameter Type Description
member object The added member
alreadyMember boolean Whether the user was already a member (add was a no-op)

gitlab_update_member

Update a member's access level in a GitLab project or group

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
resourceType string Yes Whether the resource is a 'project' or a 'group'
resourceId string Yes Project or group ID or path (e.g. mygroup/myproject)
userId number Yes The ID of the member to update
accessLevel number Yes New access level: 0 (No access), 5 (Minimal), 10 (Guest), 15 (Planner), 20 (Reporter), 25 (Security Manager), 30 (Developer), 40 (Maintainer), 50 (Owner)
expiresAt string No Access expiration date in YYYY-MM-DD format. Pass an empty string to clear an existing expiration.
memberRoleId number No Custom member role ID (GitLab Ultimate only). Warning: when omitted, GitLab removes any custom role the member currently holds.

Output

Parameter Type Description
member object The updated member

gitlab_remove_member

Remove a member from a GitLab project or group

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
resourceType string Yes Whether the resource is a 'project' or a 'group'
resourceId string Yes Project or group ID or path (e.g. mygroup/myproject)
userId number Yes The ID of the member to remove
skipSubresources boolean No Skip deleting the member from subgroups and projects below the target (defaults to false)
unassignIssuables boolean No Unassign the member from all issues and merge requests in the target (defaults to false)

Output

Parameter Type Description
success boolean Whether the member was removed successfully

gitlab_invite_member

Invite a person to a GitLab project or group by email address

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
resourceType string Yes Whether the resource is a 'project' or a 'group'
resourceId string Yes Project or group ID or path (e.g. mygroup/myproject)
email string Yes Email address to invite (comma-separated for multiple)
accessLevel number Yes Access level: 0 (No access), 5 (Minimal), 10 (Guest), 15 (Planner), 20 (Reporter), 25 (Security Manager), 30 (Developer), 40 (Maintainer), 50 (Owner)
expiresAt string No Access expiration date in YYYY-MM-DD format
memberRoleId number No Custom member role ID (GitLab Ultimate only)
inviteSource string No Identifier recorded as the source of the invitation (for attribution)

Output

Parameter Type Description
status string Invitation status returned by GitLab
message object Per-email result detail, if any

gitlab_list_invitations

List pending email invitations for a GitLab project or group

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
resourceType string Yes Whether the resource is a 'project' or a 'group'
resourceId string Yes Project or group ID or path (e.g. mygroup/myproject)
query string No Filter invitations by invited email
perPage number No Number of results per page (default 20, max 100)
page number No Page number for pagination

Output

Parameter Type Description
invitations array List of pending invitations
total number Total number of invitations

gitlab_update_invitation

Update a pending invitation to a GitLab project or group

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
resourceType string Yes Whether the resource is a 'project' or a 'group'
resourceId string Yes Project or group ID or path (e.g. mygroup/myproject)
email string Yes Email address of the invitation to update
accessLevel number No New access level: 10 (Guest), 15 (Planner), 20 (Reporter), 25 (Security Manager), 30 (Developer), 40 (Maintainer), 50 (Owner)
expiresAt string No Access expiration date (ISO 8601, e.g. 2026-12-31T00:00:00Z; date-only also accepted). At least one of accessLevel or expiresAt must be provided.

Output

Parameter Type Description
invitation object The updated invitation

gitlab_revoke_invitation

Revoke a pending email invitation to a GitLab project or group

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
resourceType string Yes Whether the resource is a 'project' or a 'group'
resourceId string Yes Project or group ID or path (e.g. mygroup/myproject)
email string Yes Email address of the invitation to revoke

Output

Parameter Type Description
success boolean Whether the invitation was revoked successfully

gitlab_list_access_requests

List pending access requests for a GitLab project or group

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
resourceType string Yes Whether the resource is a 'project' or a 'group'
resourceId string Yes Project or group ID or path (e.g. mygroup/myproject)
perPage number No Number of results per page (default 20, max 100)
page number No Page number for pagination

Output

Parameter Type Description
accessRequests array List of pending access requests
total number Total number of access requests

gitlab_approve_access_request

Approve a pending access request for a GitLab project or group

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
resourceType string Yes Whether the resource is a 'project' or a 'group'
resourceId string Yes Project or group ID or path (e.g. mygroup/myproject)
userId number Yes The user ID of the access requester
accessLevel number No Access level to grant: 10 (Guest), 15 (Planner), 20 (Reporter), 25 (Security Manager), 30 (Developer), 40 (Maintainer), 50 (Owner). Defaults to 30 (Developer).

Output

Parameter Type Description
accessRequest object The approved access request

gitlab_deny_access_request

Deny (delete) a pending access request for a GitLab project or group

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
resourceType string Yes Whether the resource is a 'project' or a 'group'
resourceId string Yes Project or group ID or path (e.g. mygroup/myproject)
userId number Yes The user ID of the access requester

Output

Parameter Type Description
success boolean Whether the access request was denied successfully

gitlab_list_saml_group_links

List SAML group links for a GitLab group. Use this to detect whether a group is governed by SAML group sync before provisioning members.

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
groupId string Yes Group ID or path (e.g. my-org/my-group)

Output

Parameter Type Description
samlGroupLinks array List of SAML group links
total number Number of SAML group links

gitlab_search_users

Search for GitLab users by name, username, or email. Email matches must be exact; private emails match only with an admin token. Use this to resolve an email to a user ID before adding a member.

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
search string Yes Name, username, or email to search for
perPage number No Number of results per page (default 20, max 100)
page number No Page number for pagination

Output

Parameter Type Description
users array List of matching users
total number Total number of matching users

gitlab_create_user

Create a new GitLab user. Requires an administrator token with admin_mode on the instance.

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
email string Yes The user's email address
username string Yes The user's username
name string Yes The user's display name
password string No The user's password. Omit and set resetPassword to email a reset link instead.
resetPassword boolean No Send the user a password reset link instead of setting a password
forceRandomPassword boolean No Set a random password without emailing a reset link (useful for SSO-only accounts). One of password, resetPassword, or forceRandomPassword is required.
admin boolean No Whether the new user is an administrator
skipConfirmation boolean No Skip email confirmation for the new user

Output

Parameter Type Description
user object The created user

gitlab_update_user

Modify an existing GitLab user. Requires an administrator token with admin_mode on the instance.

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
userId number Yes The ID of the user to modify
email string No The user's new email address (GitLab only allows changing to one of the user's existing verified secondary emails)
username string No The user's new username
name string No The user's new display name
admin boolean No Whether the user is an administrator

Output

Parameter Type Description
user object The updated user

gitlab_delete_user

Delete a GitLab user. Requires an administrator token with admin_mode on the instance.

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
userId number Yes The ID of the user to delete
hardDelete boolean No When true, contributions, personal projects, AND groups owned solely by this user are deleted rather than moved to a Ghost User

Output

Parameter Type Description
success boolean Whether the user was deleted successfully

gitlab_block_user

Input

Parameter Type Required Description

Output

Parameter Type Description
projects json List of projects
project json Project details
issues json List of issues
issue json Issue details
mergeRequests json List of merge requests
mergeRequest json Merge request details
mergeRequestIid number Merge request internal ID (IID)
pipelines json List of pipelines
pipeline json Pipeline details
note json Comment/note details
tree json Repository tree entries
content string File contents (decoded)
fileName string File name
filePath string Path to the file in the repository
branch string Branch the file was committed to
branches json List of branches
commits json List of commits
commit json A single commit (e.g. latest commit in a comparison)
name string Created branch name
protected boolean Whether the branch is protected
size number File size in bytes
ref string The branch, tag, or commit SHA
blobId string The blob ID
lastCommitId string The last commit ID that modified the file
webUrl string Web URL
changes json Merge request file changes/diffs
changesCount number Number of changed files returned (first 100)
hasMore boolean Whether more changed files exist beyond the first 100
approvalsRequired number Approvals required
approvalsLeft number Approvals remaining
approvedBy json List of approvers
jobs json Pipeline jobs
log string Job log output
id number Job ID
status string Job status
diffs json File diffs between two compared references
compareTimeout boolean Whether the comparison timed out
compareSameRef boolean Whether both compared references match
releases json List of releases
release json Release details
members json List of project or group members
member json A single member
alreadyMember boolean Whether the user was already a member
invitations json List of pending invitations
invitation json A single invitation
accessRequests json List of pending access requests
accessRequest json A single access request
samlGroupLinks json List of SAML group links
samlGroupLink json A single SAML group link
message json Per-email invitation result detail
users json List of matching users
user json User details
total number Total number of items available across all pages
truncated boolean Whether returned content (file content or job log) was truncated
success boolean Operation success status

gitlab_unblock_user

Input

Parameter Type Required Description

Output

Parameter Type Description
projects json List of projects
project json Project details
issues json List of issues
issue json Issue details
mergeRequests json List of merge requests
mergeRequest json Merge request details
mergeRequestIid number Merge request internal ID (IID)
pipelines json List of pipelines
pipeline json Pipeline details
note json Comment/note details
tree json Repository tree entries
content string File contents (decoded)
fileName string File name
filePath string Path to the file in the repository
branch string Branch the file was committed to
branches json List of branches
commits json List of commits
commit json A single commit (e.g. latest commit in a comparison)
name string Created branch name
protected boolean Whether the branch is protected
size number File size in bytes
ref string The branch, tag, or commit SHA
blobId string The blob ID
lastCommitId string The last commit ID that modified the file
webUrl string Web URL
changes json Merge request file changes/diffs
changesCount number Number of changed files returned (first 100)
hasMore boolean Whether more changed files exist beyond the first 100
approvalsRequired number Approvals required
approvalsLeft number Approvals remaining
approvedBy json List of approvers
jobs json Pipeline jobs
log string Job log output
id number Job ID
status string Job status
diffs json File diffs between two compared references
compareTimeout boolean Whether the comparison timed out
compareSameRef boolean Whether both compared references match
releases json List of releases
release json Release details
members json List of project or group members
member json A single member
alreadyMember boolean Whether the user was already a member
invitations json List of pending invitations
invitation json A single invitation
accessRequests json List of pending access requests
accessRequest json A single access request
samlGroupLinks json List of SAML group links
samlGroupLink json A single SAML group link
message json Per-email invitation result detail
users json List of matching users
user json User details
total number Total number of items available across all pages
truncated boolean Whether returned content (file content or job log) was truncated
success boolean Operation success status

gitlab_deactivate_user

Input

Parameter Type Required Description

Output

Parameter Type Description
projects json List of projects
project json Project details
issues json List of issues
issue json Issue details
mergeRequests json List of merge requests
mergeRequest json Merge request details
mergeRequestIid number Merge request internal ID (IID)
pipelines json List of pipelines
pipeline json Pipeline details
note json Comment/note details
tree json Repository tree entries
content string File contents (decoded)
fileName string File name
filePath string Path to the file in the repository
branch string Branch the file was committed to
branches json List of branches
commits json List of commits
commit json A single commit (e.g. latest commit in a comparison)
name string Created branch name
protected boolean Whether the branch is protected
size number File size in bytes
ref string The branch, tag, or commit SHA
blobId string The blob ID
lastCommitId string The last commit ID that modified the file
webUrl string Web URL
changes json Merge request file changes/diffs
changesCount number Number of changed files returned (first 100)
hasMore boolean Whether more changed files exist beyond the first 100
approvalsRequired number Approvals required
approvalsLeft number Approvals remaining
approvedBy json List of approvers
jobs json Pipeline jobs
log string Job log output
id number Job ID
status string Job status
diffs json File diffs between two compared references
compareTimeout boolean Whether the comparison timed out
compareSameRef boolean Whether both compared references match
releases json List of releases
release json Release details
members json List of project or group members
member json A single member
alreadyMember boolean Whether the user was already a member
invitations json List of pending invitations
invitation json A single invitation
accessRequests json List of pending access requests
accessRequest json A single access request
samlGroupLinks json List of SAML group links
samlGroupLink json A single SAML group link
message json Per-email invitation result detail
users json List of matching users
user json User details
total number Total number of items available across all pages
truncated boolean Whether returned content (file content or job log) was truncated
success boolean Operation success status

gitlab_activate_user

Input

Parameter Type Required Description

Output

Parameter Type Description
projects json List of projects
project json Project details
issues json List of issues
issue json Issue details
mergeRequests json List of merge requests
mergeRequest json Merge request details
mergeRequestIid number Merge request internal ID (IID)
pipelines json List of pipelines
pipeline json Pipeline details
note json Comment/note details
tree json Repository tree entries
content string File contents (decoded)
fileName string File name
filePath string Path to the file in the repository
branch string Branch the file was committed to
branches json List of branches
commits json List of commits
commit json A single commit (e.g. latest commit in a comparison)
name string Created branch name
protected boolean Whether the branch is protected
size number File size in bytes
ref string The branch, tag, or commit SHA
blobId string The blob ID
lastCommitId string The last commit ID that modified the file
webUrl string Web URL
changes json Merge request file changes/diffs
changesCount number Number of changed files returned (first 100)
hasMore boolean Whether more changed files exist beyond the first 100
approvalsRequired number Approvals required
approvalsLeft number Approvals remaining
approvedBy json List of approvers
jobs json Pipeline jobs
log string Job log output
id number Job ID
status string Job status
diffs json File diffs between two compared references
compareTimeout boolean Whether the comparison timed out
compareSameRef boolean Whether both compared references match
releases json List of releases
release json Release details
members json List of project or group members
member json A single member
alreadyMember boolean Whether the user was already a member
invitations json List of pending invitations
invitation json A single invitation
accessRequests json List of pending access requests
accessRequest json A single access request
samlGroupLinks json List of SAML group links
samlGroupLink json A single SAML group link
message json Per-email invitation result detail
users json List of matching users
user json User details
total number Total number of items available across all pages
truncated boolean Whether returned content (file content or job log) was truncated
success boolean Operation success status

gitlab_ban_user

Input

Parameter Type Required Description

Output

Parameter Type Description
projects json List of projects
project json Project details
issues json List of issues
issue json Issue details
mergeRequests json List of merge requests
mergeRequest json Merge request details
mergeRequestIid number Merge request internal ID (IID)
pipelines json List of pipelines
pipeline json Pipeline details
note json Comment/note details
tree json Repository tree entries
content string File contents (decoded)
fileName string File name
filePath string Path to the file in the repository
branch string Branch the file was committed to
branches json List of branches
commits json List of commits
commit json A single commit (e.g. latest commit in a comparison)
name string Created branch name
protected boolean Whether the branch is protected
size number File size in bytes
ref string The branch, tag, or commit SHA
blobId string The blob ID
lastCommitId string The last commit ID that modified the file
webUrl string Web URL
changes json Merge request file changes/diffs
changesCount number Number of changed files returned (first 100)
hasMore boolean Whether more changed files exist beyond the first 100
approvalsRequired number Approvals required
approvalsLeft number Approvals remaining
approvedBy json List of approvers
jobs json Pipeline jobs
log string Job log output
id number Job ID
status string Job status
diffs json File diffs between two compared references
compareTimeout boolean Whether the comparison timed out
compareSameRef boolean Whether both compared references match
releases json List of releases
release json Release details
members json List of project or group members
member json A single member
alreadyMember boolean Whether the user was already a member
invitations json List of pending invitations
invitation json A single invitation
accessRequests json List of pending access requests
accessRequest json A single access request
samlGroupLinks json List of SAML group links
samlGroupLink json A single SAML group link
message json Per-email invitation result detail
users json List of matching users
user json User details
total number Total number of items available across all pages
truncated boolean Whether returned content (file content or job log) was truncated
success boolean Operation success status

gitlab_unban_user

Input

Parameter Type Required Description

Output

Parameter Type Description
projects json List of projects
project json Project details
issues json List of issues
issue json Issue details
mergeRequests json List of merge requests
mergeRequest json Merge request details
mergeRequestIid number Merge request internal ID (IID)
pipelines json List of pipelines
pipeline json Pipeline details
note json Comment/note details
tree json Repository tree entries
content string File contents (decoded)
fileName string File name
filePath string Path to the file in the repository
branch string Branch the file was committed to
branches json List of branches
commits json List of commits
commit json A single commit (e.g. latest commit in a comparison)
name string Created branch name
protected boolean Whether the branch is protected
size number File size in bytes
ref string The branch, tag, or commit SHA
blobId string The blob ID
lastCommitId string The last commit ID that modified the file
webUrl string Web URL
changes json Merge request file changes/diffs
changesCount number Number of changed files returned (first 100)
hasMore boolean Whether more changed files exist beyond the first 100
approvalsRequired number Approvals required
approvalsLeft number Approvals remaining
approvedBy json List of approvers
jobs json Pipeline jobs
log string Job log output
id number Job ID
status string Job status
diffs json File diffs between two compared references
compareTimeout boolean Whether the comparison timed out
compareSameRef boolean Whether both compared references match
releases json List of releases
release json Release details
members json List of project or group members
member json A single member
alreadyMember boolean Whether the user was already a member
invitations json List of pending invitations
invitation json A single invitation
accessRequests json List of pending access requests
accessRequest json A single access request
samlGroupLinks json List of SAML group links
samlGroupLink json A single SAML group link
message json Per-email invitation result detail
users json List of matching users
user json User details
total number Total number of items available across all pages
truncated boolean Whether returned content (file content or job log) was truncated
success boolean Operation success status

gitlab_approve_user

Input

Parameter Type Required Description

Output

Parameter Type Description
projects json List of projects
project json Project details
issues json List of issues
issue json Issue details
mergeRequests json List of merge requests
mergeRequest json Merge request details
mergeRequestIid number Merge request internal ID (IID)
pipelines json List of pipelines
pipeline json Pipeline details
note json Comment/note details
tree json Repository tree entries
content string File contents (decoded)
fileName string File name
filePath string Path to the file in the repository
branch string Branch the file was committed to
branches json List of branches
commits json List of commits
commit json A single commit (e.g. latest commit in a comparison)
name string Created branch name
protected boolean Whether the branch is protected
size number File size in bytes
ref string The branch, tag, or commit SHA
blobId string The blob ID
lastCommitId string The last commit ID that modified the file
webUrl string Web URL
changes json Merge request file changes/diffs
changesCount number Number of changed files returned (first 100)
hasMore boolean Whether more changed files exist beyond the first 100
approvalsRequired number Approvals required
approvalsLeft number Approvals remaining
approvedBy json List of approvers
jobs json Pipeline jobs
log string Job log output
id number Job ID
status string Job status
diffs json File diffs between two compared references
compareTimeout boolean Whether the comparison timed out
compareSameRef boolean Whether both compared references match
releases json List of releases
release json Release details
members json List of project or group members
member json A single member
alreadyMember boolean Whether the user was already a member
invitations json List of pending invitations
invitation json A single invitation
accessRequests json List of pending access requests
accessRequest json A single access request
samlGroupLinks json List of SAML group links
samlGroupLink json A single SAML group link
message json Per-email invitation result detail
users json List of matching users
user json User details
total number Total number of items available across all pages
truncated boolean Whether returned content (file content or job log) was truncated
success boolean Operation success status

gitlab_reject_user

Input

Parameter Type Required Description

Output

Parameter Type Description
projects json List of projects
project json Project details
issues json List of issues
issue json Issue details
mergeRequests json List of merge requests
mergeRequest json Merge request details
mergeRequestIid number Merge request internal ID (IID)
pipelines json List of pipelines
pipeline json Pipeline details
note json Comment/note details
tree json Repository tree entries
content string File contents (decoded)
fileName string File name
filePath string Path to the file in the repository
branch string Branch the file was committed to
branches json List of branches
commits json List of commits
commit json A single commit (e.g. latest commit in a comparison)
name string Created branch name
protected boolean Whether the branch is protected
size number File size in bytes
ref string The branch, tag, or commit SHA
blobId string The blob ID
lastCommitId string The last commit ID that modified the file
webUrl string Web URL
changes json Merge request file changes/diffs
changesCount number Number of changed files returned (first 100)
hasMore boolean Whether more changed files exist beyond the first 100
approvalsRequired number Approvals required
approvalsLeft number Approvals remaining
approvedBy json List of approvers
jobs json Pipeline jobs
log string Job log output
id number Job ID
status string Job status
diffs json File diffs between two compared references
compareTimeout boolean Whether the comparison timed out
compareSameRef boolean Whether both compared references match
releases json List of releases
release json Release details
members json List of project or group members
member json A single member
alreadyMember boolean Whether the user was already a member
invitations json List of pending invitations
invitation json A single invitation
accessRequests json List of pending access requests
accessRequest json A single access request
samlGroupLinks json List of SAML group links
samlGroupLink json A single SAML group link
message json Per-email invitation result detail
users json List of matching users
user json User details
total number Total number of items available across all pages
truncated boolean Whether returned content (file content or job log) was truncated
success boolean Operation success status

gitlab_delete_user_identity

Delete a user's authentication identity (e.g. SAML or LDAP). Requires an administrator token with admin_mode on the instance.

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
userId number Yes The ID of the user
provider string Yes The external identity provider name (e.g. saml, ldapmain)

Output

Parameter Type Description
success boolean Whether the identity was deleted successfully

gitlab_add_saml_group_link

Add a SAML group link that maps an identity-provider group to a GitLab group at a given access level (GitLab Premium/Ultimate)

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
groupId string Yes Group ID or path (e.g. my-org/my-group)
samlGroupName string Yes The name of the SAML group as sent by the identity provider
accessLevel number Yes Access level granted to members of the SAML group: 10 (Guest), 15 (Planner), 20 (Reporter), 25 (Security Manager), 30 (Developer), 40 (Maintainer), 50 (Owner)
memberRoleId number No Custom member role ID (GitLab Ultimate only)
provider string No Unique provider name that must match for this group link to be applied (GitLab 18.2+)

Output

Parameter Type Description
samlGroupLink object The created SAML group link

gitlab_delete_saml_group_link

Delete a SAML group link from a GitLab group (GitLab Premium/Ultimate)

Input

Parameter Type Required Description
host string No Self-managed GitLab host (e.g. gitlab.example.com). Defaults to gitlab.com.
groupId string Yes Group ID or path (e.g. my-org/my-group)
samlGroupName string Yes The name of the SAML group link to delete
provider string No Provider name of the link to delete. Required when multiple links share the same SAML group name.

Output

Parameter Type Description
success boolean Whether the SAML group link was deleted successfully

Triggers

A Trigger is a block that starts a workflow when an event happens in this service.

GitLab Comment

Trigger workflow when a comment is added on a commit, merge request, or issue

Configuration

Parameter Type Required Description
accessToken string Yes Used to create the webhook in your project. Requires the Maintainer or Owner role.
projectId string Yes The GitLab project to register the webhook on.
host string No Self-managed GitLab host. Leave blank for gitlab.com.

Output

Parameter Type Description
object_kind string Event kind (note)
event_type string GitLab event type from the X-Gitlab-Event header
object_attributes object object_attributes output from the tool
id number Comment ID
note string Comment body
noteable_type string What the comment is on (Commit, MergeRequest, Issue, Snippet)
action string Action (create, update)
url string Comment URL

GitLab Event

Trigger workflow from any GitLab webhook event

Configuration

Parameter Type Required Description
accessToken string Yes Used to create the webhook in your project. Requires the Maintainer or Owner role.
projectId string Yes The GitLab project to register the webhook on.
host string No Self-managed GitLab host. Leave blank for gitlab.com.

Output

Parameter Type Description
object_kind string Event kind (push, merge_request, issue, etc.)
event_type string GitLab event type from the X-Gitlab-Event header
user json Actor that triggered the event (when present)
object_attributes json Event-specific attributes (varies by object_kind)

GitLab Issue

Trigger workflow when an issue is opened, updated, or closed in GitLab

Configuration

Parameter Type Required Description
accessToken string Yes Used to create the webhook in your project. Requires the Maintainer or Owner role.
projectId string Yes The GitLab project to register the webhook on.
host string No Self-managed GitLab host. Leave blank for gitlab.com.

Output

Parameter Type Description
object_kind string Event kind (issue)
event_type string GitLab event type from the X-Gitlab-Event header
object_attributes object object_attributes output from the tool
id number Global issue ID
iid number Project-scoped issue number
title string Issue title
state string State (opened, closed)
action string Action (open, close, reopen, update)
description string Issue description
confidential boolean Whether the issue is confidential
url string Issue URL
work_item_type string Work item type (e.g. Issue, Incident, Task); GitLab 17.2+ only

GitLab Merge Request

Trigger workflow when a merge request is opened, updated, or merged in GitLab

Configuration

Parameter Type Required Description
accessToken string Yes Used to create the webhook in your project. Requires the Maintainer or Owner role.
projectId string Yes The GitLab project to register the webhook on.
host string No Self-managed GitLab host. Leave blank for gitlab.com.

Output

Parameter Type Description
object_kind string Event kind (merge_request)
event_type string GitLab event type from the X-Gitlab-Event header
object_attributes object object_attributes output from the tool
id number Global merge request ID
iid number Project-scoped merge request number
title string Merge request title
state string State (opened, closed, merged, locked)
action string Action (open, close, reopen, update, merge, etc.)
source_branch string Source branch
target_branch string Target branch
merge_status string Merge status (deprecated by GitLab)
detailed_merge_status string Detailed merge status
draft boolean Whether the merge request is a draft
url string Merge request URL

GitLab Pipeline

Trigger workflow when a pipeline status changes in GitLab

Configuration

Parameter Type Required Description
accessToken string Yes Used to create the webhook in your project. Requires the Maintainer or Owner role.
projectId string Yes The GitLab project to register the webhook on.
host string No Self-managed GitLab host. Leave blank for gitlab.com.

Output

Parameter Type Description
object_kind string Event kind (pipeline)
event_type string GitLab event type from the X-Gitlab-Event header
object_attributes object object_attributes output from the tool
id number Pipeline ID
status string Pipeline status (success, failed, running, etc.)
detailed_status string Detailed pipeline status
ref string Ref the pipeline ran on
sha string Commit SHA
source string Pipeline source (push, web, schedule, etc.)
duration number Pipeline duration in seconds
url string Pipeline URL

GitLab Push

Trigger workflow when commits are pushed to a GitLab project

Configuration

Parameter Type Required Description
accessToken string Yes Used to create the webhook in your project. Requires the Maintainer or Owner role.
projectId string Yes The GitLab project to register the webhook on.
host string No Self-managed GitLab host. Leave blank for gitlab.com.

Output

Parameter Type Description
object_kind string Event kind (push)
event_type string GitLab event type from the X-Gitlab-Event header
ref string Git ref that was pushed (e.g. refs/heads/main)
branch string Branch name derived from ref
before string SHA before the push
after string SHA after the push
checkout_sha string SHA of the most recent commit
user_username string Username of the pusher
user_name string Display name of the pusher
user_email string Email of the pusher
total_commits_count number Number of commits in the push
commits json Array of commit objects included in this push