Integrations · Playbook

What an AI coworker
can do in GitLab.

The GitLab integration exposes 82 actions — 51 read,31 write — that any agent, team or AI employee can use once GitLab is connected at the organization level. Every write can be gated behindhuman approval, and every call lands in theaudit trail.

Read actions (51)

Safe to run freely — they observe, fetch and search.

ActionFunctionKey params
Create branchcreate_branchbranch
Create issuecreate_issuetitle
Create issue linkcreate_issue_link
Create issue notecreate_issue_notebody
Create labelcreate_labelname, color
Create notecreate_notenoteable_type, body
Create releasecreate_releasetag_name
Create release evidencecreate_release_evidencetag_name
Create repositorycreate_repositoryname
Delete issuedelete_issue
Delete issue linkdelete_issue_link
Delete labeldelete_label
Delete releasedelete_releasetag_name
Download attachmentdownload_attachmentproject_id, secret, filename
Download release assetdownload_release_assettag_name, direct_asset_path
Execute graphqlexecute_graphqlquery
Fork repositoryfork_repository
Get branch diffsget_branch_diffsfrom, to
Get commitget_commitsha
Get commit diffget_commit_diffsha
Get file contentsget_file_contentsfile_path
Get issueget_issue
Get issue linkget_issue_link
Get labelget_label
Get namespaceget_namespace
Get projectget_project
Get project eventsget_project_events
Get releaseget_releasetag_name
Get repository treeget_repository_tree
Get usersget_usersusernames
List commitslist_commits
List eventslist_events
List group iterationslist_group_iterations
List group projectslist_group_projects
List issue discussionslist_issue_discussions
List issue linkslist_issue_links
List issueslist_issues
List labelslist_labels
List namespaceslist_namespaces
List project memberslist_project_membersproject_id
List projectslist_projects
List releaseslist_releases
Mr discussionsmr_discussions
My issuesmy_issues
Push filespush_filesbranch, files, commit_message
Search repositoriessearch_repositoriessearch
Update issueupdate_issueissue_type
Update issue noteupdate_issue_note
Update labelupdate_label
Update releaseupdate_releasetag_name
Verify namespaceverify_namespacepath

Write actions (31)

They change things. Gate the sensitive ones with approval policies; approvals are single-use.

ActionFunctionKey params
Approve merge requestapprove_merge_request
Bulk publish draft notesbulk_publish_draft_notes
Create draft notecreate_draft_notebody
Create merge requestcreate_merge_requesttitle, source_branch, target_branch
Create merge request discussion notecreate_merge_request_discussion_notebody
Create merge request notecreate_merge_request_notebody
Create merge request threadcreate_merge_request_threadbody
Create or update filecreate_or_update_filefile_path, content, commit_message, branch
Delete draft notedelete_draft_note
Delete merge request discussion notedelete_merge_request_discussion_note
Delete merge request notedelete_merge_request_note
Get draft noteget_draft_note
Get merge requestget_merge_request
Get merge request approval stateget_merge_request_approval_state
Get merge request diffsget_merge_request_diffs
Get merge request noteget_merge_request_note
Get merge request notesget_merge_request_notes
Get merge request versionget_merge_request_version
List draft noteslist_draft_notes
List merge request diffslist_merge_request_diffs
List merge request versionslist_merge_request_versions
List merge requestslist_merge_requests
Merge merge requestmerge_merge_request
Publish draft notepublish_draft_note
Resolve merge request threadresolve_merge_request_threadresolved
Unapprove merge requestunapprove_merge_request
Update draft noteupdate_draft_note
Update merge requestupdate_merge_request
Update merge request discussion noteupdate_merge_request_discussion_note
Update merge request noteupdate_merge_request_notebody
Upload markdownupload_markdownproject_id, file_path

Put GitLab in an AI coworker's hands.

Browse templates and solution packs that work with GitLab, or start from the problem you're trying to fix.

Browse templates