Action domain
merge_request
Every action this domain exposes through gitlab_execute_action, from the gitlab://tools manifest. Each entry folds out to its full upstream description and required parameters.
46 · actions7 · destructive23 · read-only
Counted with a Free-tier token against gitlab.com, which is the only host this endpoint talks to: to use it against a self-managed instance, run the server yourself — its documentation covers that. The catalog is scoped to the token that asks, so the count moves with both its tier and its permissions: higher tiers expose more actions, and administration domains only appear to tokens allowed to use them. That is why the figures differ elsewhere: the upstream project counts 868 operations on Community Edition and up to 1,094 on GitLab.com's top tier, while this deployment publishes 768 because it is OAuth-only and acts with your token, so the administration domains a non-admin account cannot call never appear. All three describe the same catalog, counted from three vantage points.
Each entry also says what a GitLab fine-grained personal access token needs to run it, as GitLab 19.4.1 declares it: every permission of one line, at one of the boundaries named. Where there are alternatives, any one is enough.
MR Approval Configread-onlymerge_request.approval_configGet the approvals of a merge request. Returns: whether it is approved, the approved-by users with timestamps, and whether the calling user has approved and may approve, and on an Enterprise Edition instance also the approvals required and left, the rules left to satisfy and the suggested approvers, which Community Edition does not send. For each rule's status, use the approval state. See also:
merge_request.approve.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Readat project
MR Approval Resetdestructivemerge_request.approval_resetReset all approvals on a merge request. Returns: a success confirmation. See also:
merge_request.approval_config,merge_request.unapprove.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Approveat project
MR Approvemerge_request.approveApprove a merge request on behalf of the caller. Returns: the approval state with the approved-by count, overall approved flag, the approvers with when each approved, and whether the caller has approved and may approve, and on an Enterprise Edition instance also the approvals required and left and the rules left to satisfy. See also:
merge_request.unapprove,merge_request.merge,merge_request.get.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Approveat project
MR Cancel Auto Mergemerge_request.cancel_auto_mergeCancel auto-merge (merge-when-pipeline-succeeds) on a merge request. Returns: the MR with auto-merge disabled. See also:
merge_request.merge,merge_request.get.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Mergeat project
MR Commitsread-onlymerge_request.commitsList the commits that make up a merge request. Returns: commit SHAs, titles, authors, and timestamps with pagination metadata. See also:
merge_request.get,repository.commit_get.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Readat project
Create MR Context Commitsmerge_request.context_commits_createAttach existing repository commit SHAs to a merge request as context commits. Returns: each pinned commit's full and short SHA, title and message, author and committer with their dates, parents, trailers and web URL. See also:
merge_request.context_commits_list,merge_request.context_commits_delete,repository.commit_get.Required parameters:
commits (array),merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Updateat project
Delete MR Context Commitsdestructivemerge_request.context_commits_deleteRemove context commits from a merge request by SHA, detaching them from the review. Returns: a success confirmation. The underlying repository commits are left intact. See also:
merge_request.context_commits_list,merge_request.context_commits_create,merge_request.get.Required parameters:
commits (array),merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Updateat project
List MR Context Commitsread-onlymerge_request.context_commits_listList the context commits pinned to a merge request for review. Returns: each commit's full and short SHA, title and message, the title and description rendered to HTML, author and committer with their dates, the GitLab account the author email belongs to and the author's Gravatar image, trailers and web URL, with pagination metadata. See also:
merge_request.get,merge_request.context_commits_create,merge_request.context_commits_delete.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Readat project
MR Createmerge_request.createOpen a new merge request from a source branch into a target branch. Returns: the created MR with IID, state, source/target branches, merge status, assignees, reviewers, labels, and web URL. See also:
merge_request.get,merge_request.list,merge_request.merge.Required parameters:
project_id (string|integer),source_branch (string),target_branch (string),title (string)Fine-grained token:
Merge Request: Createat project
MR Create Pipelinemerge_request.create_pipelineTrigger a new CI/CD pipeline for a merge request. Returns: the created pipeline with id, status, ref, sha, and web URL. See also:
merge_request.pipelines,pipeline.get.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Updateat project
MR Create Todomerge_request.create_todoCreate a to-do for a merge request for the caller. Returns: the created to-do item with action, target title and URL, project name, author, body, state and created and updated times. See also:
merge_request.get,merge_request.subscribe.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Todo: Createat project
MR Deletedestructivemerge_request.deleteDelete a merge request permanently. Returns: a success confirmation naming the MR and project. See also:
merge_request.update,merge_request.get.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Deleteat project
MR Emoji Createmerge_request.emoji_mr_createAdd an emoji reaction to a merge request. Returns: the created award with its emoji name, awarding user object, timestamps, and awardable id/type. See also:
merge_request.emoji_mr_list,merge_request.emoji_mr_delete.Required parameters:
merge_request_iid (integer),name (string),project_id (string|integer)Fine-grained token:
Work Item: Createat project
MR Emoji Deletedestructivemerge_request.emoji_mr_deleteRemove an emoji reaction from a merge request by award id. Returns: a success confirmation naming the award emoji. See also:
merge_request.emoji_mr_list,merge_request.emoji_mr_get.Required parameters:
award_id (integer),merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Work Item: Deleteat project
MR Emoji Getread-onlymerge_request.emoji_mr_getGet a single emoji reaction on a merge request by award id. Returns: the award with its emoji name, awarding user object, timestamps, and awardable id/type. See also:
merge_request.emoji_mr_list,merge_request.emoji_mr_delete.Required parameters:
award_id (integer),merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Work Item: Readat project
MR Emoji Listread-onlymerge_request.emoji_mr_listList all emoji reactions on a merge request. Returns: each award with its emoji name, the awarding user object, awardable id/type, and pagination metadata. See also:
merge_request.emoji_mr_get,merge_request.emoji_mr_create,merge_request.get.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Work Item: Readat project
MR Note Emoji Createmerge_request.emoji_mr_note_createAdd an emoji reaction to a merge request note. Returns: the created award with its emoji name, awarding user object, timestamps, and awardable id/type. See also:
merge_request.emoji_mr_note_list,merge_request.emoji_mr_note_delete.Required parameters:
merge_request_iid (integer),name (string),note_id (integer),project_id (string|integer)Fine-grained token:
Work Item: Createat project
MR Note Emoji Deletedestructivemerge_request.emoji_mr_note_deleteRemove an emoji reaction from a merge request note by award id. Returns: a success confirmation naming the award emoji. See also:
merge_request.emoji_mr_note_list,merge_request.emoji_mr_note_get.Required parameters:
award_id (integer),merge_request_iid (integer),note_id (integer),project_id (string|integer)Fine-grained token:
Work Item: Deleteat project
MR Note Emoji Getread-onlymerge_request.emoji_mr_note_getGet a single emoji reaction on a merge request note by award id. Returns: the award with its emoji name, awarding user object, timestamps, and awardable id/type. See also:
merge_request.emoji_mr_note_list,merge_request.emoji_mr_note_delete.Required parameters:
award_id (integer),merge_request_iid (integer),note_id (integer),project_id (string|integer)Fine-grained token:
Work Item: Readat project
MR Note Emoji Listread-onlymerge_request.emoji_mr_note_listList all emoji reactions on a merge request note (comment). Returns: each award with its emoji name, the awarding user object, awardable id/type, and pagination metadata. See also:
merge_request.emoji_mr_note_get,merge_request.emoji_mr_note_create,mr_review.note_get.Required parameters:
merge_request_iid (integer),note_id (integer),project_id (string|integer)Fine-grained token:
Work Item: Readat project
MR Label Event Getread-onlymerge_request.event_mr_label_getGet a single label event for a merge request. Returns: the event with action, the label object, and the acting user. See also:
merge_request.event_mr_label_list.Required parameters:
label_event_id (integer),merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Readat project
MR Label Event Listread-onlymerge_request.event_mr_label_listList label events for a merge request. Returns: label events with action, the label object, the acting user, and pagination metadata. See also:
merge_request.event_mr_label_get,merge_request.get.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Readat project
MR Milestone Event Getread-onlymerge_request.event_mr_milestone_getGet a single milestone event for a merge request. Returns: the event with action, the milestone object, and the acting user. See also:
merge_request.event_mr_milestone_list.Required parameters:
merge_request_iid (integer),milestone_event_id (integer),project_id (string|integer)Fine-grained token:
Work Item: Readat project
MR Milestone Event Listread-onlymerge_request.event_mr_milestone_listList milestone events for a merge request. Returns: milestone events with action, the milestone object, the acting user, and pagination metadata. See also:
merge_request.event_mr_milestone_get,merge_request.get.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Work Item: Readat project
MR State Event Getread-onlymerge_request.event_mr_state_getGet a single state event for a merge request. Returns: the event with the state value and the acting user. See also:
merge_request.event_mr_state_list.Required parameters:
merge_request_iid (integer),project_id (string|integer),state_event_id (integer)Fine-grained token:
Work Item: Readat project
MR State Event Listread-onlymerge_request.event_mr_state_listList state events for a merge request. Returns: state events with the state value, the acting user, and pagination metadata. See also:
merge_request.event_mr_state_get,merge_request.get.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Work Item: Readat project
MR Getread-onlymerge_request.getGet a single merge request from a project by its IID. Returns: MR metadata, state, source/target branches, merge status, assignees, reviewers, labels, milestone, and web URL. See also:
merge_request.list,merge_request.update,merge_request.merge,merge_request.commits.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Readat project
MR Issues Closedread-onlymerge_request.issues_closedList issues that will be closed when the merge request is merged. Returns: issues with state, labels, assignees, and web URL plus pagination metadata. See also:
merge_request.related_issues,issue.get.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Readat project
MR Listread-onlymerge_request.listList merge requests in one project with filtering and pagination. Returns: matching MRs with state, branches, merge status, assignees, reviewers, labels, and pagination metadata. See also:
merge_request.get,merge_request.create,merge_request.list_group.Required parameters:
project_id (string|integer)Fine-grained token:
Merge Request: Readat project
MR List Globalread-onlymerge_request.list_globalList merge requests across projects: only the ones the caller created when scope is omitted, since GitLab defaults to scope=created_by_me, and every merge request the caller can see with scope=all. Returns: the matching MRs with project context, state, branches, and pagination metadata. See also:
merge_request.list,merge_request.list_group,search.merge_requests.Required parameters: No required parameters
Fine-grained token:
Merge Request: Readat user
MR List Groupread-onlymerge_request.list_groupList merge requests across a group and its projects. Returns: visible MRs with project context, state, branches, and pagination metadata. See also:
merge_request.list,merge_request.list_global,group.get.Required parameters:
group_id (string|integer)Fine-grained token:
Merge Request: Readat group
MR Mergedestructivemerge_request.mergeMerge a merge request now, or schedule auto-merge when its pipeline succeeds. Returns: the merged MR with merge_commit_sha and updated state. See also:
merge_request.get,merge_request.pipelines,merge_request.cancel_auto_merge.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Mergeat project
MR Participantsread-onlymerge_request.participantsList the participants of a merge request. Returns: participating users with username, name, state, locked flag and public email, with pagination metadata. See also:
merge_request.reviewers,merge_request.get.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Readat project
MR Pipelinesread-onlymerge_request.pipelinesList the CI/CD pipelines attached to a merge request. Returns: pipelines with id, status, ref, sha, and web URL, with pagination metadata. See also:
merge_request.create_pipeline,merge_request.merge,pipeline.get.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Readat project
MR Rebasemerge_request.rebaseRebase a merge request's source branch onto its target. Returns: whether a rebase is now in progress (poll
merge_request.getto track completion). See also:merge_request.get,merge_request.merge.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Updateat project
MR Reviewersread-onlymerge_request.reviewersList the reviewers of a merge request. Returns: reviewer users with username, name, state, locked flag, public email, review state and assignment time, with pagination metadata. See also:
merge_request.participants,merge_request.update.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Readat project
MR Add Spent Timemerge_request.spent_time_addAdd spent time to a merge request. Returns: the updated time tracking stats (estimate and spent time, seconds and human-readable). See also:
merge_request.spent_time_reset,merge_request.time_estimate_set,merge_request.time_stats.Required parameters:
duration (string),merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Work Item: Updateat project
MR Reset Spent Timemerge_request.spent_time_resetReset a merge request's spent time. Returns: the updated time tracking stats. See also:
merge_request.spent_time_add,merge_request.time_stats.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Work Item: Updateat project
MR Subscribemerge_request.subscribeSubscribe the caller to a merge request's notifications. Returns: the MR with the updated subscription state. See also:
merge_request.unsubscribe,merge_request.get.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Subscribeat project
MR Reset Time Estimatemerge_request.time_estimate_resetClear a merge request's time estimate. Returns: the updated time tracking stats. See also:
merge_request.time_estimate_set,merge_request.time_stats.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Work Item: Updateat project
MR Set Time Estimatemerge_request.time_estimate_setSet a merge request's time estimate. Returns: the updated time tracking stats (estimate and spent time, seconds and human-readable). See also:
merge_request.time_estimate_reset,merge_request.spent_time_add,merge_request.time_stats.Required parameters:
duration (string),merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Work Item: Updateat project
MR Time Statsread-onlymerge_request.time_statsRead a merge request's time tracking totals. Returns: estimate and spent time in seconds and human-readable form. See also:
merge_request.time_estimate_set,merge_request.spent_time_add.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Work Item: Readat project
MR Unapprovedestructivemerge_request.unapproveRemove the caller's approval from a merge request. Returns: the approval state left after the withdrawal, in the shape the approve answers with: the approved-by count and users, the overall approved flag, whether the caller has approved and may approve, and on an Enterprise Edition instance the approvals required and left. See also:
merge_request.approve,merge_request.get.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Approveat project
MR Unsubscribemerge_request.unsubscribeUnsubscribe the caller from a merge request's notifications. Returns: the MR with the updated subscription state. See also:
merge_request.subscribe,merge_request.get.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Subscribeat project
MR Updatemerge_request.updateUpdate an existing merge request's fields or state. Returns: the updated MR with its new field values, state, labels, assignees, and reviewers. See also:
merge_request.get,merge_request.merge,merge_request.approve.Required parameters:
merge_request_iid (integer),project_id (string|integer)Fine-grained token:
Merge Request: Updateat project