Skip to main content
Every gitlab.api.* operation is listed below with parameter shapes and return types from the plugin Zod schemas.
New to Corsair? See API access, authentication, and error handling.

Branches

create

branches.create Create a new branch Risk: write
await corsair.gitlab.api.branches.create({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
branchstringYes
refstringYes
Output
NameTypeRequiredDescription
namestringYes
mergedbooleanNo
protectedbooleanNo
defaultbooleanNo
developers_can_pushbooleanNo
developers_can_mergebooleanNo
can_pushbooleanNo
web_urlstringNo
commitobjectNo
{
  id: string,
  short_id?: string,
  title?: string,
  message?: string,
  author_name?: string,
  author_email?: string,
  authored_date?: string,
  committed_date?: string,
  committer_name?: string,
  committer_email?: string,
  parent_ids?: string[],
  web_url?: string
}

delete

branches.delete Delete a branch [DESTRUCTIVE] Risk: destructive
await corsair.gitlab.api.branches.delete({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
branchstringYes
Output: empty object

get

branches.get Get a specific branch Risk: read
await corsair.gitlab.api.branches.get({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
branchstringYes
Output
NameTypeRequiredDescription
namestringYes
mergedbooleanNo
protectedbooleanNo
defaultbooleanNo
developers_can_pushbooleanNo
developers_can_mergebooleanNo
can_pushbooleanNo
web_urlstringNo
commitobjectNo
{
  id: string,
  short_id?: string,
  title?: string,
  message?: string,
  author_name?: string,
  author_email?: string,
  authored_date?: string,
  committed_date?: string,
  committer_name?: string,
  committer_email?: string,
  parent_ids?: string[],
  web_url?: string
}

list

branches.list List branches in a repository Risk: read
await corsair.gitlab.api.branches.list({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
project_idnumber | stringYes
searchstringNo
Output: object[]
{
  name: string,
  merged?: boolean,
  protected?: boolean,
  default?: boolean,
  developers_can_push?: boolean,
  developers_can_merge?: boolean,
  can_push?: boolean,
  web_url?: string,
  commit?: {
    id: string,
    short_id?: string,
    title?: string,
    message?: string,
    author_name?: string,
    author_email?: string,
    authored_date?: string,
    committed_date?: string,
    committer_name?: string,
    committer_email?: string,
    parent_ids?: string[],
    web_url?: string
  }
}[]

Commits

get

commits.get Get a specific commit Risk: read
await corsair.gitlab.api.commits.get({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
shastringYes
statsbooleanNo
Output
NameTypeRequiredDescription
idstringYes
short_idstringNo
titlestringNo
messagestringNo
author_namestringNo
author_emailstringNo
authored_datestringNo
committed_datestringNo
committer_namestringNo
committer_emailstringNo
parent_idsstring[]No
web_urlstringNo
statsobjectNo
{
  additions?: number,
  deletions?: number,
  total?: number
}

getDiff

commits.getDiff Get the diff of a commit Risk: read
await corsair.gitlab.api.commits.getDiff({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
project_idnumber | stringYes
shastringYes
Output: object[]
{
  old_path: string,
  new_path: string,
  a_mode?: string,
  b_mode?: string,
  diff: string,
  new_file?: boolean,
  renamed_file?: boolean,
  deleted_file?: boolean
}[]

list

commits.list List commits in a repository Risk: read
await corsair.gitlab.api.commits.list({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
project_idnumber | stringYes
ref_namestringNo
sincestringNo
untilstringNo
pathstringNo
allbooleanNo
with_statsbooleanNo
Output: object[]
{
  id: string,
  short_id?: string,
  title?: string,
  message?: string,
  author_name?: string,
  author_email?: string,
  authored_date?: string,
  committed_date?: string,
  committer_name?: string,
  committer_email?: string,
  parent_ids?: string[],
  web_url?: string
}[]

Groups

create

groups.create Create a new group Risk: write
await corsair.gitlab.api.groups.create({});
Input
NameTypeRequiredDescription
namestringYes
pathstringYes
descriptionstringNo
visibilitypublic | internal | privateNo
parent_idnumberNo
Output
NameTypeRequiredDescription
idnumberYes
namestringYes
pathstringNo
full_pathstringNo
full_namestringNo
descriptionstringNo
visibilitystringNo
parent_idnumberNo
web_urlstringNo
created_atstringNo
avatar_urlstringNo

delete

groups.delete Delete a group [DESTRUCTIVE · IRREVERSIBLE] Risk: destructive · Irreversible
await corsair.gitlab.api.groups.delete({});
Input
NameTypeRequiredDescription
group_idnumber | stringYes
Output: empty object

get

groups.get Get a specific group Risk: read
await corsair.gitlab.api.groups.get({});
Input
NameTypeRequiredDescription
group_idnumber | stringYes
with_projectsbooleanNo
Output
NameTypeRequiredDescription
idnumberYes
namestringYes
pathstringNo
full_pathstringNo
full_namestringNo
descriptionstringNo
visibilitystringNo
parent_idnumberNo
web_urlstringNo
created_atstringNo
avatar_urlstringNo

list

groups.list List groups Risk: read
await corsair.gitlab.api.groups.list({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
searchstringNo
ownedbooleanNo
top_level_onlybooleanNo
statisticsbooleanNo
order_bystringNo
sortasc | descNo
Output: object[]
{
  id: number,
  name: string,
  path?: string,
  full_path?: string,
  full_name?: string,
  description?: string | null,
  visibility?: string,
  parent_id?: number | null,
  web_url?: string,
  created_at?: string,
  avatar_url?: string | null
}[]

listProjects

groups.listProjects List projects in a group Risk: read
await corsair.gitlab.api.groups.listProjects({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
group_idnumber | stringYes
searchstringNo
archivedbooleanNo
visibilitypublic | internal | privateNo
order_bystringNo
sortasc | descNo
simplebooleanNo
Output: object[]
{
  id: number,
  name: string,
  path?: string,
  path_with_namespace?: string,
  description?: string | null,
  default_branch?: string | null,
  visibility?: string,
  ssh_url_to_repo?: string,
  http_url_to_repo?: string,
  web_url?: string,
  archived?: boolean,
  created_at?: string,
  last_activity_at?: string,
  creator_id?: number,
  namespace?: {
    id: number,
    name?: string,
    path?: string,
    kind?: string,
    full_path?: string,
    web_url?: string
  },
  owner?: {
    id: number,
    username: string,
    name?: string | null,
    state?: string,
    avatar_url?: string | null,
    web_url?: string
  },
  star_count?: number,
  forks_count?: number,
  open_issues_count?: number,
  topics?: string[],
  empty_repo?: boolean
}[]

update

groups.update Update a group Risk: write
await corsair.gitlab.api.groups.update({});
Input
NameTypeRequiredDescription
group_idnumber | stringYes
namestringNo
pathstringNo
descriptionstringNo
visibilitypublic | internal | privateNo
Output
NameTypeRequiredDescription
idnumberYes
namestringYes
pathstringNo
full_pathstringNo
full_namestringNo
descriptionstringNo
visibilitystringNo
parent_idnumberNo
web_urlstringNo
created_atstringNo
avatar_urlstringNo

Issues

create

issues.create Create a new issue Risk: write
await corsair.gitlab.api.issues.create({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
titlestringYes
descriptionstringNo
assignee_idsnumber[]No
milestone_idnumberNo
labelsstringNo
due_datestringNo
confidentialbooleanNo
weightnumberNo
Output
NameTypeRequiredDescription
idnumberYes
iidnumberYes
project_idnumberYes
titlestringYes
descriptionstringNo
statestringNo
created_atstringNo
updated_atstringNo
closed_atstringNo
closed_byobjectNo
authorobjectNo
assigneeobjectNo
assigneesobject[]No
labelsstring[]No
milestoneobjectNo
web_urlstringNo
confidentialbooleanNo
due_datestringNo
weightnumberNo
referencesobjectNo
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}[]
{
  id: number,
  iid?: number,
  title: string,
  state?: string,
  due_date?: string | null
}
{
  short?: string,
  relative?: string,
  full?: string
}

createNote

issues.createNote Add a comment to an issue Risk: write
await corsair.gitlab.api.issues.createNote({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
issue_iidnumberYes
bodystringYes
Output
NameTypeRequiredDescription
idnumberYes
bodystringYes
authorobjectNo
created_atstringNo
updated_atstringNo
systembooleanNo
noteable_idnumberNo
noteable_typestringNo
noteable_iidnumberNo
resolvablebooleanNo
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}

delete

issues.delete Delete an issue [DESTRUCTIVE · IRREVERSIBLE] Risk: destructive · Irreversible
await corsair.gitlab.api.issues.delete({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
issue_iidnumberYes
Output: empty object

get

issues.get Get a specific issue Risk: read
await corsair.gitlab.api.issues.get({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
issue_iidnumberYes
Output
NameTypeRequiredDescription
idnumberYes
iidnumberYes
project_idnumberYes
titlestringYes
descriptionstringNo
statestringNo
created_atstringNo
updated_atstringNo
closed_atstringNo
closed_byobjectNo
authorobjectNo
assigneeobjectNo
assigneesobject[]No
labelsstring[]No
milestoneobjectNo
web_urlstringNo
confidentialbooleanNo
due_datestringNo
weightnumberNo
referencesobjectNo
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}[]
{
  id: number,
  iid?: number,
  title: string,
  state?: string,
  due_date?: string | null
}
{
  short?: string,
  relative?: string,
  full?: string
}

list

issues.list List issues in a project Risk: read
await corsair.gitlab.api.issues.list({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
project_idnumber | stringYes
stateopened | closed | allNo
labelsstringNo
milestonestringNo
searchstringNo
assignee_idnumberNo
author_idnumberNo
order_bystringNo
sortasc | descNo
confidentialbooleanNo
Output: object[]
{
  id: number,
  iid: number,
  project_id: number,
  title: string,
  description?: string | null,
  state?: string,
  created_at?: string,
  updated_at?: string,
  closed_at?: string | null,
  closed_by?: {
    id: number,
    username: string,
    name?: string | null,
    state?: string,
    avatar_url?: string | null,
    web_url?: string
  } | null,
  author?: {
    id: number,
    username: string,
    name?: string | null,
    state?: string,
    avatar_url?: string | null,
    web_url?: string
  },
  assignee?: {
    id: number,
    username: string,
    name?: string | null,
    state?: string,
    avatar_url?: string | null,
    web_url?: string
  } | null,
  assignees?: {
    id: number,
    username: string,
    name?: string | null,
    state?: string,
    avatar_url?: string | null,
    web_url?: string
  }[],
  labels?: string[],
  milestone?: {
    id: number,
    iid?: number,
    title: string,
    state?: string,
    due_date?: string | null
  } | null,
  web_url?: string,
  confidential?: boolean,
  due_date?: string | null,
  weight?: number | null,
  references?: {
    short?: string,
    relative?: string,
    full?: string
  }
}[]

listNotes

issues.listNotes List comments on an issue Risk: read
await corsair.gitlab.api.issues.listNotes({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
project_idnumber | stringYes
issue_iidnumberYes
order_bycreated_at | updated_atNo
sortasc | descNo
Output: object[]
{
  id: number,
  body: string,
  author?: {
    id: number,
    username: string,
    name?: string | null,
    state?: string,
    avatar_url?: string | null,
    web_url?: string
  },
  created_at?: string,
  updated_at?: string,
  system?: boolean,
  noteable_id?: number,
  noteable_type?: string,
  noteable_iid?: number,
  resolvable?: boolean
}[]

update

issues.update Update an existing issue Risk: write
await corsair.gitlab.api.issues.update({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
issue_iidnumberYes
titlestringNo
descriptionstringNo
assignee_idsnumber[]No
milestone_idnumberNo
labelsstringNo
state_eventclose | reopenNo
due_datestringNo
confidentialbooleanNo
weightnumberNo
Output
NameTypeRequiredDescription
idnumberYes
iidnumberYes
project_idnumberYes
titlestringYes
descriptionstringNo
statestringNo
created_atstringNo
updated_atstringNo
closed_atstringNo
closed_byobjectNo
authorobjectNo
assigneeobjectNo
assigneesobject[]No
labelsstring[]No
milestoneobjectNo
web_urlstringNo
confidentialbooleanNo
due_datestringNo
weightnumberNo
referencesobjectNo
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}[]
{
  id: number,
  iid?: number,
  title: string,
  state?: string,
  due_date?: string | null
}
{
  short?: string,
  relative?: string,
  full?: string
}

Labels

create

labels.create Create a new label Risk: write
await corsair.gitlab.api.labels.create({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
namestringYes
colorstringYes
descriptionstringNo
prioritynumberNo
Output
NameTypeRequiredDescription
idnumberYes
namestringYes
colorstringNo
text_colorstringNo
descriptionstringNo
open_issues_countnumberNo
closed_issues_countnumberNo
open_merge_requests_countnumberNo
subscribedbooleanNo
is_project_labelbooleanNo

delete

labels.delete Delete a label [DESTRUCTIVE] Risk: destructive
await corsair.gitlab.api.labels.delete({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
label_idnumberYes
Output: empty object

list

labels.list List labels in a project Risk: read
await corsair.gitlab.api.labels.list({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
project_idnumber | stringYes
searchstringNo
Output: object[]
{
  id: number,
  name: string,
  color?: string,
  text_color?: string,
  description?: string | null,
  open_issues_count?: number,
  closed_issues_count?: number,
  open_merge_requests_count?: number,
  subscribed?: boolean,
  is_project_label?: boolean
}[]

update

labels.update Update a label Risk: write
await corsair.gitlab.api.labels.update({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
label_idnumberYes
new_namestringNo
colorstringNo
descriptionstringNo
prioritynumberNo
Output
NameTypeRequiredDescription
idnumberYes
namestringYes
colorstringNo
text_colorstringNo
descriptionstringNo
open_issues_countnumberNo
closed_issues_countnumberNo
open_merge_requests_countnumberNo
subscribedbooleanNo
is_project_labelbooleanNo

Merge Requests

approve

mergeRequests.approve Approve a merge request Risk: write
await corsair.gitlab.api.mergeRequests.approve({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
merge_request_iidnumberYes
shastringNo
Output: empty object

create

mergeRequests.create Create a new merge request Risk: write
await corsair.gitlab.api.mergeRequests.create({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
source_branchstringYes
target_branchstringYes
titlestringYes
descriptionstringNo
assignee_idnumberNo
assignee_idsnumber[]No
reviewer_idsnumber[]No
labelsstringNo
milestone_idnumberNo
remove_source_branchbooleanNo
squashbooleanNo
Output
NameTypeRequiredDescription
idnumberYes
iidnumberYes
project_idnumberYes
titlestringYes
descriptionstringNo
statestringNo
source_branchstringNo
target_branchstringNo
created_atstringNo
updated_atstringNo
merged_atstringNo
closed_atstringNo
merged_byobjectNo
authorobjectNo
assigneeobjectNo
assigneesobject[]No
reviewersobject[]No
labelsstring[]No
milestoneobjectNo
merge_commit_shastringNo
shastringNo
web_urlstringNo
detailed_merge_statusstringNo
has_conflictsbooleanNo
draftbooleanNo
changes_countstringNo
referencesobjectNo
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}[]
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}[]
{
  id: number,
  iid?: number,
  title: string,
  state?: string,
  due_date?: string | null
}
{
  short?: string,
  relative?: string,
  full?: string
}

createNote

mergeRequests.createNote Add a comment to a merge request Risk: write
await corsair.gitlab.api.mergeRequests.createNote({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
merge_request_iidnumberYes
bodystringYes
Output
NameTypeRequiredDescription
idnumberYes
bodystringYes
authorobjectNo
created_atstringNo
updated_atstringNo
systembooleanNo
noteable_idnumberNo
noteable_typestringNo
noteable_iidnumberNo
resolvablebooleanNo
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}

delete

mergeRequests.delete Delete a merge request [DESTRUCTIVE · IRREVERSIBLE] Risk: destructive · Irreversible
await corsair.gitlab.api.mergeRequests.delete({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
merge_request_iidnumberYes
Output: empty object

get

mergeRequests.get Get a specific merge request Risk: read
await corsair.gitlab.api.mergeRequests.get({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
merge_request_iidnumberYes
Output
NameTypeRequiredDescription
idnumberYes
iidnumberYes
project_idnumberYes
titlestringYes
descriptionstringNo
statestringNo
source_branchstringNo
target_branchstringNo
created_atstringNo
updated_atstringNo
merged_atstringNo
closed_atstringNo
merged_byobjectNo
authorobjectNo
assigneeobjectNo
assigneesobject[]No
reviewersobject[]No
labelsstring[]No
milestoneobjectNo
merge_commit_shastringNo
shastringNo
web_urlstringNo
detailed_merge_statusstringNo
has_conflictsbooleanNo
draftbooleanNo
changes_countstringNo
referencesobjectNo
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}[]
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}[]
{
  id: number,
  iid?: number,
  title: string,
  state?: string,
  due_date?: string | null
}
{
  short?: string,
  relative?: string,
  full?: string
}

list

mergeRequests.list List merge requests in a project Risk: read
await corsair.gitlab.api.mergeRequests.list({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
project_idnumber | stringYes
stateopened | closed | merged | allNo
labelsstringNo
milestonestringNo
searchstringNo
author_idnumberNo
assignee_idnumberNo
reviewer_idnumberNo
source_branchstringNo
target_branchstringNo
order_bystringNo
sortasc | descNo
scopecreated_by_me | assigned_to_me | allNo
Output: object[]
{
  id: number,
  iid: number,
  project_id: number,
  title: string,
  description?: string | null,
  state?: string,
  source_branch?: string,
  target_branch?: string,
  created_at?: string,
  updated_at?: string,
  merged_at?: string | null,
  closed_at?: string | null,
  merged_by?: {
    id: number,
    username: string,
    name?: string | null,
    state?: string,
    avatar_url?: string | null,
    web_url?: string
  } | null,
  author?: {
    id: number,
    username: string,
    name?: string | null,
    state?: string,
    avatar_url?: string | null,
    web_url?: string
  },
  assignee?: {
    id: number,
    username: string,
    name?: string | null,
    state?: string,
    avatar_url?: string | null,
    web_url?: string
  } | null,
  assignees?: {
    id: number,
    username: string,
    name?: string | null,
    state?: string,
    avatar_url?: string | null,
    web_url?: string
  }[],
  reviewers?: {
    id: number,
    username: string,
    name?: string | null,
    state?: string,
    avatar_url?: string | null,
    web_url?: string
  }[],
  labels?: string[],
  milestone?: {
    id: number,
    iid?: number,
    title: string,
    state?: string,
    due_date?: string | null
  } | null,
  merge_commit_sha?: string | null,
  sha?: string,
  web_url?: string,
  detailed_merge_status?: string,
  has_conflicts?: boolean,
  draft?: boolean,
  changes_count?: string | null,
  references?: {
    short?: string,
    relative?: string,
    full?: string
  }
}[]

listNotes

mergeRequests.listNotes List comments on a merge request Risk: read
await corsair.gitlab.api.mergeRequests.listNotes({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
project_idnumber | stringYes
merge_request_iidnumberYes
order_bycreated_at | updated_atNo
sortasc | descNo
Output: object[]
{
  id: number,
  body: string,
  author?: {
    id: number,
    username: string,
    name?: string | null,
    state?: string,
    avatar_url?: string | null,
    web_url?: string
  },
  created_at?: string,
  updated_at?: string,
  system?: boolean,
  noteable_id?: number,
  noteable_type?: string,
  noteable_iid?: number,
  resolvable?: boolean
}[]

merge

mergeRequests.merge Merge a merge request Risk: write
await corsair.gitlab.api.mergeRequests.merge({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
merge_request_iidnumberYes
merge_commit_messagestringNo
squash_commit_messagestringNo
squashbooleanNo
should_remove_source_branchbooleanNo
merge_when_pipeline_succeedsbooleanNo
shastringNo
Output
NameTypeRequiredDescription
idnumberYes
iidnumberYes
project_idnumberYes
titlestringYes
descriptionstringNo
statestringNo
source_branchstringNo
target_branchstringNo
created_atstringNo
updated_atstringNo
merged_atstringNo
closed_atstringNo
merged_byobjectNo
authorobjectNo
assigneeobjectNo
assigneesobject[]No
reviewersobject[]No
labelsstring[]No
milestoneobjectNo
merge_commit_shastringNo
shastringNo
web_urlstringNo
detailed_merge_statusstringNo
has_conflictsbooleanNo
draftbooleanNo
changes_countstringNo
referencesobjectNo
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}[]
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}[]
{
  id: number,
  iid?: number,
  title: string,
  state?: string,
  due_date?: string | null
}
{
  short?: string,
  relative?: string,
  full?: string
}

update

mergeRequests.update Update a merge request Risk: write
await corsair.gitlab.api.mergeRequests.update({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
merge_request_iidnumberYes
titlestringNo
descriptionstringNo
assignee_idnumberNo
assignee_idsnumber[]No
reviewer_idsnumber[]No
labelsstringNo
milestone_idnumberNo
state_eventclose | reopenNo
remove_source_branchbooleanNo
squashbooleanNo
Output
NameTypeRequiredDescription
idnumberYes
iidnumberYes
project_idnumberYes
titlestringYes
descriptionstringNo
statestringNo
source_branchstringNo
target_branchstringNo
created_atstringNo
updated_atstringNo
merged_atstringNo
closed_atstringNo
merged_byobjectNo
authorobjectNo
assigneeobjectNo
assigneesobject[]No
reviewersobject[]No
labelsstring[]No
milestoneobjectNo
merge_commit_shastringNo
shastringNo
web_urlstringNo
detailed_merge_statusstringNo
has_conflictsbooleanNo
draftbooleanNo
changes_countstringNo
referencesobjectNo
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}[]
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}[]
{
  id: number,
  iid?: number,
  title: string,
  state?: string,
  due_date?: string | null
}
{
  short?: string,
  relative?: string,
  full?: string
}

Milestones

create

milestones.create Create a new milestone Risk: write
await corsair.gitlab.api.milestones.create({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
titlestringYes
descriptionstringNo
due_datestringNo
start_datestringNo
Output
NameTypeRequiredDescription
idnumberYes
iidnumberNo
project_idnumberNo
titlestringYes
descriptionstringNo
statestringNo
due_datestringNo
start_datestringNo
created_atstringNo
updated_atstringNo
web_urlstringNo

delete

milestones.delete Delete a milestone [DESTRUCTIVE] Risk: destructive
await corsair.gitlab.api.milestones.delete({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
milestone_idnumberYes
Output: empty object

get

milestones.get Get a specific milestone Risk: read
await corsair.gitlab.api.milestones.get({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
milestone_idnumberYes
Output
NameTypeRequiredDescription
idnumberYes
iidnumberNo
project_idnumberNo
titlestringYes
descriptionstringNo
statestringNo
due_datestringNo
start_datestringNo
created_atstringNo
updated_atstringNo
web_urlstringNo

list

milestones.list List milestones in a project Risk: read
await corsair.gitlab.api.milestones.list({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
project_idnumber | stringYes
stateactive | closedNo
searchstringNo
Output: object[]
{
  id: number,
  iid?: number,
  project_id?: number,
  title: string,
  description?: string | null,
  state?: string,
  due_date?: string | null,
  start_date?: string | null,
  created_at?: string,
  updated_at?: string,
  web_url?: string
}[]

update

milestones.update Update a milestone Risk: write
await corsair.gitlab.api.milestones.update({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
milestone_idnumberYes
titlestringNo
descriptionstringNo
due_datestringNo
start_datestringNo
state_eventclose | activateNo
Output
NameTypeRequiredDescription
idnumberYes
iidnumberNo
project_idnumberNo
titlestringYes
descriptionstringNo
statestringNo
due_datestringNo
start_datestringNo
created_atstringNo
updated_atstringNo
web_urlstringNo

Pipelines

cancel

pipelines.cancel Cancel a running pipeline Risk: write
await corsair.gitlab.api.pipelines.cancel({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
pipeline_idnumberYes
Output
NameTypeRequiredDescription
idnumberYes
iidnumberNo
project_idnumberNo
statusstringNo
sourcestringNo
refstringNo
shastringNo
web_urlstringNo
created_atstringNo
updated_atstringNo
started_atstringNo
finished_atstringNo
namestringNo
userobjectNo
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}

create

pipelines.create Create a new pipeline Risk: write
await corsair.gitlab.api.pipelines.create({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
refstringYes
variablesobject[]No
{
  key: string,
  value: string,
  variable_type?: string
}[]
Output
NameTypeRequiredDescription
idnumberYes
iidnumberNo
project_idnumberNo
statusstringNo
sourcestringNo
refstringNo
shastringNo
web_urlstringNo
created_atstringNo
updated_atstringNo
started_atstringNo
finished_atstringNo
namestringNo
userobjectNo
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}

delete

pipelines.delete Delete a pipeline [DESTRUCTIVE] Risk: destructive
await corsair.gitlab.api.pipelines.delete({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
pipeline_idnumberYes
Output: empty object

get

pipelines.get Get a specific pipeline Risk: read
await corsair.gitlab.api.pipelines.get({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
pipeline_idnumberYes
Output
NameTypeRequiredDescription
idnumberYes
iidnumberNo
project_idnumberNo
statusstringNo
sourcestringNo
refstringNo
shastringNo
web_urlstringNo
created_atstringNo
updated_atstringNo
started_atstringNo
finished_atstringNo
namestringNo
userobjectNo
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}

list

pipelines.list List pipelines for a project Risk: read
await corsair.gitlab.api.pipelines.list({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
project_idnumber | stringYes
statusstringNo
refstringNo
shastringNo
sourcestringNo
order_bystringNo
sortasc | descNo
Output: object[]
{
  id: number,
  iid?: number,
  project_id?: number,
  status?: string,
  source?: string,
  ref?: string,
  sha?: string,
  web_url?: string,
  created_at?: string,
  updated_at?: string,
  started_at?: string | null,
  finished_at?: string | null,
  name?: string | null,
  user?: {
    id: number,
    username: string,
    name?: string | null,
    state?: string,
    avatar_url?: string | null,
    web_url?: string
  }
}[]

listJobs

pipelines.listJobs List jobs in a pipeline Risk: read
await corsair.gitlab.api.pipelines.listJobs({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
project_idnumber | stringYes
pipeline_idnumberYes
scopestring[]No
Output: object[]
{
  id: number,
  name?: string,
  status?: string,
  stage?: string,
  ref?: string,
  created_at?: string,
  started_at?: string | null,
  finished_at?: string | null,
  duration?: number | null,
  web_url?: string,
  pipeline?: {
    id: number,
    status?: string
  }
}[]

retry

pipelines.retry Retry a failed pipeline Risk: write
await corsair.gitlab.api.pipelines.retry({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
pipeline_idnumberYes
Output
NameTypeRequiredDescription
idnumberYes
iidnumberNo
project_idnumberNo
statusstringNo
sourcestringNo
refstringNo
shastringNo
web_urlstringNo
created_atstringNo
updated_atstringNo
started_atstringNo
finished_atstringNo
namestringNo
userobjectNo
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}

Projects

create

projects.create Create a new project Risk: write
await corsair.gitlab.api.projects.create({});
Input
NameTypeRequiredDescription
namestringYes
pathstringNo
namespace_idnumberNo
descriptionstringNo
visibilitypublic | internal | privateNo
initialize_with_readmebooleanNo
default_branchstringNo
Output
NameTypeRequiredDescription
idnumberYes
namestringYes
pathstringNo
path_with_namespacestringNo
descriptionstringNo
default_branchstringNo
visibilitystringNo
ssh_url_to_repostringNo
http_url_to_repostringNo
web_urlstringNo
archivedbooleanNo
created_atstringNo
last_activity_atstringNo
creator_idnumberNo
namespaceobjectNo
ownerobjectNo
star_countnumberNo
forks_countnumberNo
open_issues_countnumberNo
topicsstring[]No
empty_repobooleanNo
{
  id: number,
  name?: string,
  path?: string,
  kind?: string,
  full_path?: string,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}

delete

projects.delete Delete a project [DESTRUCTIVE · IRREVERSIBLE] Risk: destructive · Irreversible
await corsair.gitlab.api.projects.delete({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
Output: empty object

fork

projects.fork Fork a project Risk: write
await corsair.gitlab.api.projects.fork({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
namespace_idnumberNo
namespace_pathstringNo
namestringNo
pathstringNo
visibilitypublic | internal | privateNo
Output
NameTypeRequiredDescription
idnumberYes
namestringYes
pathstringNo
path_with_namespacestringNo
descriptionstringNo
default_branchstringNo
visibilitystringNo
ssh_url_to_repostringNo
http_url_to_repostringNo
web_urlstringNo
archivedbooleanNo
created_atstringNo
last_activity_atstringNo
creator_idnumberNo
namespaceobjectNo
ownerobjectNo
star_countnumberNo
forks_countnumberNo
open_issues_countnumberNo
topicsstring[]No
empty_repobooleanNo
{
  id: number,
  name?: string,
  path?: string,
  kind?: string,
  full_path?: string,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}

get

projects.get Get a specific project Risk: read
await corsair.gitlab.api.projects.get({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
statisticsbooleanNo
licensebooleanNo
Output
NameTypeRequiredDescription
idnumberYes
namestringYes
pathstringNo
path_with_namespacestringNo
descriptionstringNo
default_branchstringNo
visibilitystringNo
ssh_url_to_repostringNo
http_url_to_repostringNo
web_urlstringNo
archivedbooleanNo
created_atstringNo
last_activity_atstringNo
creator_idnumberNo
namespaceobjectNo
ownerobjectNo
star_countnumberNo
forks_countnumberNo
open_issues_countnumberNo
topicsstring[]No
empty_repobooleanNo
{
  id: number,
  name?: string,
  path?: string,
  kind?: string,
  full_path?: string,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}

list

projects.list List projects Risk: read
await corsair.gitlab.api.projects.list({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
searchstringNo
ownedbooleanNo
membershipbooleanNo
starredbooleanNo
archivedbooleanNo
visibilitypublic | internal | privateNo
order_bystringNo
sortasc | descNo
simplebooleanNo
Output: object[]
{
  id: number,
  name: string,
  path?: string,
  path_with_namespace?: string,
  description?: string | null,
  default_branch?: string | null,
  visibility?: string,
  ssh_url_to_repo?: string,
  http_url_to_repo?: string,
  web_url?: string,
  archived?: boolean,
  created_at?: string,
  last_activity_at?: string,
  creator_id?: number,
  namespace?: {
    id: number,
    name?: string,
    path?: string,
    kind?: string,
    full_path?: string,
    web_url?: string
  },
  owner?: {
    id: number,
    username: string,
    name?: string | null,
    state?: string,
    avatar_url?: string | null,
    web_url?: string
  },
  star_count?: number,
  forks_count?: number,
  open_issues_count?: number,
  topics?: string[],
  empty_repo?: boolean
}[]

update

projects.update Update an existing project Risk: write
await corsair.gitlab.api.projects.update({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
namestringNo
descriptionstringNo
visibilitypublic | internal | privateNo
default_branchstringNo
archivedbooleanNo
Output
NameTypeRequiredDescription
idnumberYes
namestringYes
pathstringNo
path_with_namespacestringNo
descriptionstringNo
default_branchstringNo
visibilitystringNo
ssh_url_to_repostringNo
http_url_to_repostringNo
web_urlstringNo
archivedbooleanNo
created_atstringNo
last_activity_atstringNo
creator_idnumberNo
namespaceobjectNo
ownerobjectNo
star_countnumberNo
forks_countnumberNo
open_issues_countnumberNo
topicsstring[]No
empty_repobooleanNo
{
  id: number,
  name?: string,
  path?: string,
  kind?: string,
  full_path?: string,
  web_url?: string
}
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}

Releases

create

releases.create Create a new release Risk: write
await corsair.gitlab.api.releases.create({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
tag_namestringYes
namestringNo
descriptionstringNo
refstringNo
released_atstringNo
milestonesstring[]No
Output
NameTypeRequiredDescription
tag_namestringYes
namestringNo
descriptionstringNo
created_atstringNo
released_atstringNo
upcoming_releasebooleanNo
authorobjectNo
commitobjectNo
milestonesobject[]No
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: string,
  short_id?: string,
  title?: string,
  message?: string,
  author_name?: string,
  author_email?: string,
  authored_date?: string,
  committed_date?: string,
  committer_name?: string,
  committer_email?: string,
  parent_ids?: string[],
  web_url?: string
}
{
  id: number,
  iid?: number,
  title: string,
  state?: string,
  due_date?: string | null
}[]

delete

releases.delete Delete a release [DESTRUCTIVE] Risk: destructive
await corsair.gitlab.api.releases.delete({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
tag_namestringYes
Output: empty object

get

releases.get Get a specific release Risk: read
await corsair.gitlab.api.releases.get({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
tag_namestringYes
Output
NameTypeRequiredDescription
tag_namestringYes
namestringNo
descriptionstringNo
created_atstringNo
released_atstringNo
upcoming_releasebooleanNo
authorobjectNo
commitobjectNo
milestonesobject[]No
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: string,
  short_id?: string,
  title?: string,
  message?: string,
  author_name?: string,
  author_email?: string,
  authored_date?: string,
  committed_date?: string,
  committer_name?: string,
  committer_email?: string,
  parent_ids?: string[],
  web_url?: string
}
{
  id: number,
  iid?: number,
  title: string,
  state?: string,
  due_date?: string | null
}[]

list

releases.list List releases in a project Risk: read
await corsair.gitlab.api.releases.list({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
project_idnumber | stringYes
order_bystringNo
sortasc | descNo
Output: object[]
{
  tag_name: string,
  name?: string | null,
  description?: string | null,
  created_at?: string,
  released_at?: string,
  upcoming_release?: boolean,
  author?: {
    id: number,
    username: string,
    name?: string | null,
    state?: string,
    avatar_url?: string | null,
    web_url?: string
  },
  commit?: {
    id: string,
    short_id?: string,
    title?: string,
    message?: string,
    author_name?: string,
    author_email?: string,
    authored_date?: string,
    committed_date?: string,
    committer_name?: string,
    committer_email?: string,
    parent_ids?: string[],
    web_url?: string
  },
  milestones?: {
    id: number,
    iid?: number,
    title: string,
    state?: string,
    due_date?: string | null
  }[]
}[]

update

releases.update Update a release Risk: write
await corsair.gitlab.api.releases.update({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
tag_namestringYes
namestringNo
descriptionstringNo
released_atstringNo
milestonesstring[]No
Output
NameTypeRequiredDescription
tag_namestringYes
namestringNo
descriptionstringNo
created_atstringNo
released_atstringNo
upcoming_releasebooleanNo
authorobjectNo
commitobjectNo
milestonesobject[]No
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}
{
  id: string,
  short_id?: string,
  title?: string,
  message?: string,
  author_name?: string,
  author_email?: string,
  authored_date?: string,
  committed_date?: string,
  committer_name?: string,
  committer_email?: string,
  parent_ids?: string[],
  web_url?: string
}
{
  id: number,
  iid?: number,
  title: string,
  state?: string,
  due_date?: string | null
}[]

Repository

compare

repository.compare Compare branches, tags, or commits Risk: read
await corsair.gitlab.api.repository.compare({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
fromstringYes
tostringYes
straightbooleanNo
Output
NameTypeRequiredDescription
commitobjectNo
commitsobject[]No
diffsobject[]No
compare_timeoutbooleanNo
compare_same_refbooleanNo
{
  id: string,
  short_id?: string,
  title?: string,
  message?: string,
  author_name?: string,
  author_email?: string,
  authored_date?: string,
  committed_date?: string,
  committer_name?: string,
  committer_email?: string,
  parent_ids?: string[],
  web_url?: string
}
{
  id: string,
  short_id?: string,
  title?: string,
  message?: string,
  author_name?: string,
  author_email?: string,
  authored_date?: string,
  committed_date?: string,
  committer_name?: string,
  committer_email?: string,
  parent_ids?: string[],
  web_url?: string
}[]
{
  old_path: string,
  new_path: string,
  a_mode?: string,
  b_mode?: string,
  diff: string,
  new_file?: boolean,
  renamed_file?: boolean,
  deleted_file?: boolean
}[]

getFile

repository.getFile Get a file from the repository Risk: read
await corsair.gitlab.api.repository.getFile({});
Input
NameTypeRequiredDescription
project_idnumber | stringYes
file_pathstringYes
refstringNo
Output
NameTypeRequiredDescription
file_namestringYes
file_pathstringYes
sizenumberNo
encodingstringNo
contentstringNo
content_sha256stringNo
refstringNo
blob_idstringNo
commit_idstringNo
last_commit_idstringNo

getTree

repository.getTree List repository tree (files and directories) Risk: read
await corsair.gitlab.api.repository.getTree({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
project_idnumber | stringYes
pathstringNo
refstringNo
recursivebooleanNo
Output: object[]
{
  id: string,
  name: string,
  type: string,
  path: string,
  mode?: string
}[]

Users

getCurrentUser

users.getCurrentUser Get the authenticated user Risk: read
await corsair.gitlab.api.users.getCurrentUser({});
Input: empty object Output
NameTypeRequiredDescription
idnumberYes
usernamestringYes
namestringNo
statestringNo
avatar_urlstringNo
web_urlstringNo
emailstringNo
biostringNo
locationstringNo
created_atstringNo
is_adminbooleanNo
botbooleanNo
two_factor_enabledbooleanNo

getUser

users.getUser Get a specific user by ID Risk: read
await corsair.gitlab.api.users.getUser({});
Input
NameTypeRequiredDescription
user_idnumberYes
Output
NameTypeRequiredDescription
idnumberYes
usernamestringYes
namestringNo
statestringNo
avatar_urlstringNo
web_urlstringNo

list

users.list List users Risk: read
await corsair.gitlab.api.users.list({});
Input
NameTypeRequiredDescription
pagenumberNo
per_pagenumberNo
searchstringNo
usernamestringNo
activebooleanNo
blockedbooleanNo
Output: object[]
{
  id: number,
  username: string,
  name?: string | null,
  state?: string,
  avatar_url?: string | null,
  web_url?: string
}[]