GitLab
DevOps platform for repositories, merge requests, issues, pipelines, releases, projects, and groups.
Supports DevOps work across repositories, branches, commits, issues, epics, audit events, and project activity.
Use GitLab with Snow
Snow is a personal AI assistant that builds real apps for you, and they can put GitLab to work.
What Snow can do with GitLab
These are the GitLab operations Snow and the apps you build with it can run. Sign in to choose which ones Snow may run without asking.
Reads61
Look at your data without changing it.
- Get Current User
Retrieves information about the currently authenticated user. Use this action when you need to get details about the user who owns the authentication token, such as their profile information, permissions, and settings.
- Get Issue
Retrieves a single issue from a GitLab project by its internal ID (iid). Returns comprehensive issue details including description, state, labels, assignees, time tracking, and task status. Use this action when you need to inspect a specific issue's current state, check its metadata, or retrieve detailed information before performing updates or analysis. Requires knowing both the project ID/path and the issue's internal ID.
- Get Issue Note
Retrieves a single comment (note) from a GitLab issue by its ID. Use this action when you need to fetch the details of a specific note on an issue, including its content, author information, and metadata.
- Get Merge Request Notes
Tool to fetch comments on a merge request. Use when you need to retrieve all notes for a specific merge request.
- Get Milestone
Retrieves a single milestone by its ID for a specific project. Returns detailed information including title, description, dates, and state. Use when you need to fetch complete details about a specific milestone.
- Get Project
Tool to get a single project by ID or URL-encoded path.
- Get Project Label
Retrieves a single project label by its ID or title. Use this action when you need to fetch details about a specific label within a GitLab project, such as its color, description, or associated issue/MR counts.
- Get Project Merge Request
Tool to fetch full details for a single merge request when the MR IID is known. Use when you need to retrieve canonical metadata, description, state, branches, authors, and approval-related fields for a specific merge request.
- Get Projects
Tool to list all projects accessible to the authenticated user. Supports filtering. Private or group projects may be silently omitted if the token lacks sufficient scopes or group membership.
- Get Raw File
Retrieves the raw contents of a file from a GitLab repository without Base64 encoding. Use this action when you need to read the actual file content directly from a repository. Unlike the standard file retrieval endpoint, this returns unencoded file content.
Creates17
Add something new to your account.
- Create Commit Comment
Posts a comment to a specific commit in a GitLab project repository. Use this action when you need to provide feedback, review notes, or discussion on a particular commit. Line-specific comments require both path and line parameters; if invalid, the comment is placed at the commit level.
- Create GitLab Group
Tool to create a new group in GitLab. Use when you need to establish a new group for projects or collaboration.
- Create Issue Note
Creates a new note (comment) on a project issue in GitLab. Use this action when you need to add a comment, provide feedback, or document information on an existing issue.
- Create Label
Creates a new label for a GitLab project with specified name, color, and optional attributes. Use this action when you need to create a new label for organizing issues and merge requests within a project. Labels help categorize and filter project items, making project management more efficient.
- Create Merge Request
Creates a new merge request in a GitLab project to propose changes from a source branch into a target branch. Use this action when you need to create a merge request for code review, feature integration, or bug fixes. This action requires both the source and target branches to exist in the project.
- Create Milestone
Creates a new milestone in a GitLab project. Milestones track progress towards a goal with a start date, due date, and associated issues. Use this action when you need to establish a new project milestone for organizing work, tracking release schedules, or planning sprints.
- Create Pipeline
Tool to create a new pipeline for a specific branch or tag in a GitLab project. Use when you need to manually trigger a CI/CD pipeline run, optionally passing variables or inputs. For merge request pipelines, use the dedicated merge requests endpoint instead.
- Create Project
Tool to create a new project in GitLab. Implements POST /projects endpoint.
- Create Project Issue
Tool to create a new issue in a GitLab project. Use when you need to report a bug, request a feature, or track a task within a specific project.
- Create Project Webhook
Creates a new webhook (project hook) for a GitLab project to receive real-time event notifications. Use this action when you need to set up automated integrations that respond to GitLab events like pushes, merge requests, issues, or CI/CD pipeline activities. Configure which events trigger the webhook by enabling the appropriate event flags. The webhook will send POST requests to your specified URL whenever the configured events occur.
Updates24
Change something that is already there.
- Add Spent Time
Adds spent time to a GitLab issue for time tracking purposes. This action logs time against an issue, accumulating with any previously logged time. Use this action when you need to record time spent working on an issue, track billable hours, or maintain project time logs.
- Approve Merge Request
Approves a merge request in a GitLab project. Use this action when you need to record an approval from the authenticated user on a specific merge request. The authenticated user must be an eligible approver with appropriate permissions. Note that this action is idempotent — calling it multiple times on the same merge request will not create duplicate approvals.
- Archive Project
Tool to archive a project. Use when you need to mark a project read-only after finishing active development. Call after confirming no further changes are required.
- Create Commit
Creates a new commit with multiple file operations in a GitLab project. This action supports batch operations including creating, updating, deleting, moving files, and changing file permissions in a single atomic commit. Use this action when you need to perform multiple file changes at once or when you need to commit changes to a GitLab repository programmatically. Note: Commits over 20 MB are rate-limited to 3 requests per 30 seconds, and commits over 300 MB are rejected.
- Move Issue
Moves an issue from one project to another in GitLab. The issue receives a new IID and project_id in the destination project. Use this action when you need to relocate an issue to a different project, such as when reorganizing work or transferring issues between team projects. If equivalent labels or milestones exist in the destination project, they are automatically assigned to the moved issue.
- Play Job
Triggers execution of a manual job in a GitLab project. Use this action when you need to start or run a job that requires manual intervention or has a manual status.
- Retry Pipeline
Retries failed or canceled jobs in a pipeline. Use this action when you need to re-run a pipeline that has failed or was canceled. Note that if there are no failed or canceled jobs in the pipeline, calling this action has no effect.
- Star Project
Stars a project in GitLab, marking it as a favorite for the authenticated user. This adds the project to your starred projects list and increments its star count. Use this action when you want to bookmark or show support for a project. The operation is idempotent - starring an already-starred project succeeds without error.
- Unstar Project
Unstar a previously starred GitLab project to remove it from your favorites list. Use this action when you need to remove a project from your starred projects. This action removes the star that was previously added by the authenticated user.
- Update GitLab Group
Updates an existing GitLab group's settings and properties. Use this action when you need to modify group configuration such as name, path, visibility, permissions, or feature settings. Administrators can update additional settings like shared runners limits and IP restrictions.
Deletes14
Remove something. This often cannot be undone.
- Cancel Job
Cancel a GitLab CI/CD job within a specified project. This action stops a running or pending job and is irreversible. Use this action when you need to cancel a job that is running, pending, or stuck in a canceling state. The optional force parameter allows cancellation of jobs that are in a canceling state. Once canceled, the job cannot be restarted.
- Delete Group
Deletes a GitLab group by its ID or URL-encoded path. Use this action when you need to remove a group entirely. This action is irreversible — the group cannot be recovered once permanently removed. On GitLab.com, groups are retained for 30 days before permanent deletion unless permanently_remove=true is specified. You must have Owner permissions on the group to delete it.
- Delete Issue Note
Deletes a note (comment) from an issue in a GitLab project. Use this action when you need to remove a specific comment from an issue. This action is irreversible — the note cannot be recovered once deleted.
- Delete Label
Deletes a label from a GitLab project by its ID or title. Use this action when you need to remove a label from a project permanently. This action is irreversible — the label cannot be recovered once deleted.
- Delete Merge Request
Tool to permanently delete a merge request from a GitLab project. Use when you need to remove a merge request entirely, though closing is typically preferred to preserve the discussion history and audit trail. This action is irreversible — the merge request and its associated data cannot be recovered once deleted.
- Delete Milestone
Deletes a project milestone by its ID. Use when you need to permanently remove a milestone from a project. This action is irreversible — the milestone cannot be recovered once deleted. Requires at minimum the Planner role for the project.
- Delete Pipeline
Tool to delete a CI/CD pipeline by its ID within a specified project. This action expires all pipeline caches and deletes all immediately related objects such as builds, logs, artifacts, and triggers. This action is irreversible — the pipeline cannot be recovered once deleted. Use when you need to permanently remove a pipeline and all its associated data.
- Delete Project
Tool to delete a GitLab project by its ID. Use when you need to remove a project, either by marking it for later deletion or deleting it immediately.
- Delete Repository Branch
Tool to delete a branch from a GitLab project repository. Use when you need to remove a branch that is no longer needed. This action is irreversible — the branch cannot be recovered once deleted. Cannot delete default or protected branches.
- Delete Repository File
Deletes a file from a GitLab repository by creating a new commit. Use this action when you need to remove a file from a project's repository on a specific branch. This action is irreversible — the file will be removed from the specified branch, though it remains in the git history and can be recovered from previous commits.
Related integrations
Ready to put GitLab to work?
Sign up free, build an app by chatting, and connect GitLab in minutes. No credit card required.