Skip to main content

GitLab Connector

GitLab GitLab is a DevSecOps platform for source control, issue tracking, merge requests, and CI/CD, available as GitLab.com or as a self-managed instance.

Use the GitLab component to manage projects, issues, merge requests, branches, commits, repository files, and pipelines, and to react to GitLab events through webhooks or polling. The component also connects to self-managed instances on a private network through the on-prem agent, without exposing the instance to the internet.

API Documentation​

GitLab REST API

Connections​

Access Token​

Authenticate requests to GitLab using a personal, project, or group access token.

Use an access token to connect to GitLab.com or to a self-managed GitLab instance, including an instance on a private network reached through the on-prem agent (see On-Prem Connections below).

GitLab supports three kinds of access token, and all three work with this connection:

Prerequisites​

  • A GitLab account with access to the projects the integration uses
  • For project and group access tokens on GitLab.com, a Premium or Ultimate subscription (self-managed instances include them on every license)
  • The Maintainer or Owner role on each project where the integration manages webhooks

Setup Steps​

To create a personal access token:

  1. In GitLab, select the avatar in the upper-right corner, then Edit profile > Access > Personal access tokens
  2. Select Generate token > Legacy token, then enter a name

To create a project or group access token:

  1. Open the project or group, then Settings > Access tokens
  2. Select Add new token and enter a name, then select a role: Developer for issues, merge requests, and branches, or Maintainer to manage webhooks

For either kind of token:

  1. Set an expiration date. Tokens expire after at most 365 days by default, so rotate the token and update the connection before that date
  2. Select the api scope, or read_api for an integration that only reads data
  3. Create the token (for example, Create project access token) and copy the token value

Configure the Connection​

  • Enter the GitLab instance's URL in GitLab URL: https://gitlab.com for GitLab.com, or the base URL of a self-managed instance
  • Enter the token in Access Token
  • If the instance's certificate is signed by an internal certificate authority, paste that authority's PEM-encoded certificate into CA Certificate. This applies to direct and on-prem connections alike
Ignore SSL Errors Disables Certificate Validation

Ignore SSL Errors turns off TLS certificate validation entirely. Use it only when a CA Certificate cannot be supplied, and supply one instead whenever possible.

On-Prem Connections​

To reach a self-managed GitLab instance on a private network, route this connection through the on-prem agent. The agent runs inside the network and makes only outbound connections (ports 22 and 443), so no inbound firewall ports need to be opened and the instance does not need to be exposed to the internet.

  1. Install the on-prem agent on a machine with Docker inside the private network that can reach the GitLab instance. Set APP_HOST to the instance's hostname or IP address and APP_PORT to its HTTPS port (usually 443). localhost and 127.0.0.1 refer to the agent's own container, so for a service on the same machine use host.docker.internal
  2. In the integration's config wizard, open this connection and select Allow On-Prem Connections
  3. When configuring the instance, turn on Use On-Prem Connection and select the on-prem agent's connection
  4. Enter the instance's own URL in GitLab URL, such as https://gitlab.internal.example.com, not the agent's address. Requests travel through the agent, but the TLS certificate is validated against this URL's hostname
  5. If the instance's certificate is signed by an internal certificate authority, paste that authority's PEM-encoded certificate into CA Certificate

GitLab URL can use http only through the on-prem agent. A direct connection requires https.

InputCommentsDefault
GitLab URLThe base URL of the GitLab instance: https://gitlab.com for GitLab.com, or the URL of a self-managed instance. For an instance on a private network, use its internal URL; its hostname is used to validate the TLS certificate. The URL must use https unless requests go through the on-prem agent.https://gitlab.com
Access TokenA personal, project, or group access token with the api scope, or read_api for read-only use. Tokens expire after at most 365 days by default. See Personal access tokens.
CA CertificateThe PEM-encoded certificate of the authority that signed the instance's TLS certificate. Required when a self-managed instance uses an internal certificate authority.
Ignore SSL ErrorsWhen true, TLS certificate validation is disabled. Supply a CA Certificate instead whenever possible.false

OAuth 2.0​

Authenticate requests to GitLab using OAuth 2.0 authorization code flow.

To connect to GitLab using OAuth 2.0, register an OAuth application in GitLab. Each user then authorizes the integration with their own GitLab account. This works for GitLab.com and for self-managed instances; see Configure GitLab as an OAuth 2.0 authentication identity provider.

Prerequisites​

  • A GitLab account that can create OAuth applications (user-owned, group-owned, or, on self-managed, instance-wide as an administrator)

Setup Steps​

  1. In GitLab, open the application settings:
    • User-owned application: select the avatar in the upper-right corner, then Edit profile > Access > Applications
    • Group-owned application: open the group, then Settings > Applications
    • Instance-wide application (self-managed, administrator): select Admin in the upper-right corner, then Applications
  2. Enter a name for the application
  3. Enter https://oauth2.integrations.acme.com/callback as the Redirect URI
  4. Select the api scope, or read_api for an integration that only reads data
  5. Select Save application and copy the Application ID and Secret

Configure the Connection​

  • Enter the Application ID as Client ID and the Secret as Client Secret
  • For Scopes, use the same value selected in the application:
    api
  • For a self-managed instance, replace gitlab.com with the instance's host in GitLab URL, Authorize URL, and Token URL
  • If the instance's certificate is signed by an internal certificate authority, paste that authority's PEM-encoded certificate into CA Certificate. This applies to direct and on-prem connections alike
Ignore SSL Errors Disables Certificate Validation

Ignore SSL Errors turns off TLS certificate validation entirely. Use it only when a CA Certificate cannot be supplied, and supply one instead whenever possible.

GitLab issues a new refresh token on every refresh and invalidates the old one. The connection stores the replacement automatically; see OAuth 2.0 identity provider API.

On-Prem Connections​

To reach a self-managed GitLab instance on a private network, route this connection through the on-prem agent. The agent runs inside the network and makes only outbound connections (ports 22 and 443), so no inbound firewall ports need to be opened and the instance does not need to be exposed to the internet.

  1. Install the on-prem agent on a machine with Docker inside the private network that can reach the GitLab instance. Set APP_HOST to the instance's hostname or IP address and APP_PORT to its HTTPS port (usually 443). localhost and 127.0.0.1 refer to the agent's own container, so for a service on the same machine use host.docker.internal
  2. In the integration's config wizard, open this connection and select Allow On-Prem Connections
  3. When configuring the instance, turn on Use On-Prem Connection and select the on-prem agent's connection
  4. Enter the instance's own URL in GitLab URL, such as https://gitlab.internal.example.com, not the agent's address. Requests travel through the agent, but the TLS certificate is validated against this URL's hostname
  5. If the instance's certificate is signed by an internal certificate authority, paste that authority's PEM-encoded certificate into CA Certificate

Users who authorize the connection must be able to reach the Authorize URL from their browser, and Token URL must be reachable from the platform, which exchanges the authorization code and refreshes tokens.

GitLab URL can use http only through the on-prem agent. A direct connection requires https.

This connection uses OAuth 2.0, a common authentication mechanism for integrations. Read about how OAuth 2.0 works here.

InputCommentsDefault
GitLab URLThe base URL of the GitLab instance: https://gitlab.com for GitLab.com, or the URL of a self-managed instance. For an instance on a private network, use its internal URL; its hostname is used to validate the TLS certificate. The URL must use https unless requests go through the on-prem agent.https://gitlab.com
Authorize URLThe OAuth 2.0 authorization URL. For a self-managed instance, replace gitlab.com with the instance's host. See OAuth 2.0 identity provider API.https://gitlab.com/oauth/authorize
Token URLThe OAuth 2.0 token URL. For a self-managed instance, replace gitlab.com with the instance's host.https://gitlab.com/oauth/token
ScopesSpace-separated OAuth scopes. Use api for read and write access, or read_api for read-only access.api
Client IDThe Application ID of the OAuth application registered in GitLab. See Configure GitLab as an OAuth 2.0 authentication identity provider.
Client SecretThe Secret of the OAuth application registered in GitLab.
CA CertificateThe PEM-encoded certificate of the authority that signed the instance's TLS certificate. Required when a self-managed instance uses an internal certificate authority.
Ignore SSL ErrorsWhen true, TLS certificate validation is disabled. Supply a CA Certificate instead whenever possible.false

Triggers​

New and Updated Records​

Retrieves existing and ongoing issues or merge requests for a specified GitLab project. Load history once, check for changes on a schedule, or both.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Resource TypeThe kind of record to poll for changes.issues
Look-back DateThe date the initial sync starts from, in YYYY-MM-DD format. Cannot be a future date. Leave empty to start from the first recurrence with no backfill. When set, the initial sync seeds each record modified on or after this date once, ignoring the visibility filters.
Show New RecordsWhen true, records created since the last poll are returned in the trigger payload.true
Show Updated RecordsWhen true, records updated since the last poll are returned in the trigger payload.true

Webhook​

Receive events from a manually configured GitLab webhook, branching by event type.

InputCommentsDefault
Secret TokenThe Secret token configured on the GitLab webhook. When set, requests whose X-Gitlab-Token header does not match are rejected.

Webhook Events​

Receive project event notifications from GitLab. Automatically creates and manages a webhook in each selected project for the selected events when the instance is deployed, and removes the webhooks when the instance is deleted.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectsThe projects to receive events from, each as a numeric ID or full path, or a project URL from a GitLab instance at the domain root. A webhook is created in each project; managing webhooks requires the Maintainer or Owner role.[]
EventsThe GitLab events that start this flow.[]
Branch FilterLimit push events to branches matching this name or wildcard pattern, such as main or release/*. Leave empty for all branches.

Actions​

Accept Merge Request​

Merge a merge request. Fails if the merge request is not mergeable or the SHA guard does not match.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Merge Request IIDThe project-level number of the merge request, shown in GitLab as !17. This is the IID, not the global merge request ID.
Merge OptionsMerge commit message, squash, source branch removal, and expected head SHA.
Merge Commit MessageA custom merge commit message. Leave empty for GitLab's default.
SquashWhen True, squash the commits into one when merging. Leave unselected to use the project's squash setting.
Remove Source BranchWhen True, delete the source branch after the merge request merges. Leave unselected to use GitLab's default.
SHAWhen set, the merge succeeds only if the source branch's head is this commit, preventing a merge of unreviewed changes.

Create Branch​

Create a branch from an existing branch, tag, or commit.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Branch NameThe name of the branch to create.
RefThe branch name, tag, or commit SHA to create the branch from.

Create File​

Create a file in a repository by committing it to a branch.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
File PathThe path of the file in the repository, such as config/settings.json.
BranchThe branch to commit the change to.
ContentThe file content. Use Base64 encoding for binary files.
Commit MessageThe message for the commit that writes the file.
EncodingHow Content is encoded: text, or base64 for binary files.text

Create Issue​

Create an issue in a project.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
TitleThe title of the issue or merge request, shown in lists and notifications.
LabelsLabel names to apply.[]
Assignee IDsThe numeric IDs of the users to assign.[]
Milestone IDThe numeric global ID of the milestone.
Additional FieldsAdditional optional fields: includes Description, Due Date, and Confidential.
DescriptionThe description, in Markdown.
Due DateThe due date, in YYYY-MM-DD format.
ConfidentialWhen True, the issue is confidential. Leave unselected to use GitLab's default on create or keep the current value on update.

Create Issue Note​

Add a comment to an issue.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Issue IIDThe project-level number of the issue, shown in GitLab as #42. This is the IID, not the global issue ID.
BodyThe comment text, in Markdown.
InternalWhen true, the note is internal and visible only to project members with at least the Reporter role.false

Create Merge Request​

Create a merge request between two branches.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Source BranchThe branch containing the changes.
Target BranchThe branch the changes merge into.
TitleThe title of the issue or merge request, shown in lists and notifications.
LabelsLabel names to apply.[]
Assignee IDsThe numeric IDs of the users to assign.[]
Additional FieldsAdditional optional fields: includes Description, Remove Source Branch, and Squash.
DescriptionThe description, in Markdown.
Remove Source BranchWhen True, delete the source branch after the merge request merges. Leave unselected to use GitLab's default.
SquashWhen True, squash the commits into one when merging. Leave unselected to use the project's squash setting.

Create Merge Request Note​

Add a comment to a merge request.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Merge Request IIDThe project-level number of the merge request, shown in GitLab as !17. This is the IID, not the global merge request ID.
BodyThe comment text, in Markdown.
InternalWhen true, the note is internal and visible only to project members with at least the Reporter role.false

Delete Branch​

Delete a branch. Protected branches cannot be deleted.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
BranchThe name of an existing branch, such as feature/ach-retry. Slashes and dots in the name are encoded automatically.

Delete Instanced Webhooks​

Delete webhooks in the selected projects that point at any of this instance's flow URLs.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectsThe projects to remove this instance's webhooks from.[]

Delete Issue​

Delete an issue. Users with the Planner or Owner role can delete any issue; other project members can delete the issues they authored.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Issue IIDThe project-level number of the issue, shown in GitLab as #42. This is the IID, not the global issue ID.

Get Branch​

Retrieve a branch and its latest commit.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
BranchThe name of an existing branch, such as feature/ach-retry. Slashes and dots in the name are encoded automatically.

Get Commit​

Retrieve a commit with its change statistics.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Commit SHAThe commit SHA, or a branch or tag name to resolve to its latest commit.

Get Current User​

Retrieve the user the connection authenticates as. Useful for verifying a connection.

InputCommentsDefault
ConnectionThe GitLab connection to use.

Get File​

Retrieve a file from a repository. The content is returned Base64-encoded.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
File PathThe path of the file in the repository, such as config/settings.json.
RefThe branch name, tag, or commit SHA to read the file from.

Get Group​

Retrieve a group by ID or path.

InputCommentsDefault
ConnectionThe GitLab connection to use.
GroupThe numeric ID or full path (group/subgroup) of the group, or a group URL from a GitLab instance at the domain root.

Get Issue​

Retrieve an issue in a project by its IID.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Issue IIDThe project-level number of the issue, shown in GitLab as #42. This is the IID, not the global issue ID.

Get Merge Request​

Retrieve a merge request in a project by its IID.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Merge Request IIDThe project-level number of the merge request, shown in GitLab as !17. This is the IID, not the global merge request ID.

Get Pipeline​

Retrieve a CI/CD pipeline with its timing and triggering user.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Pipeline IDThe numeric ID of the pipeline.

Get Project​

Retrieve a project by ID or path.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.

List Branches​

List the branches in a project's repository.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Fetch AllWhen true, automatically fetches all pages of results using pagination. The API returns up to 100 results per page.false
PaginationPage and page-size controls.
Per PageThe maximum number of results to return per page. Maximum: 100.
PageThe page number of results to return, starting at 1. Ignored when Fetch All is true.
SearchReturn only results that match this text.

List Commits​

List commits in a project's repository, with optional filters.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Fetch AllWhen true, automatically fetches all pages of results using pagination. The API returns up to 100 results per page.false
PaginationPage and page-size controls.
Per PageThe maximum number of results to return per page. Maximum: 100.
PageThe page number of results to return, starting at 1. Ignored when Fetch All is true.
Ref NameReturn only results for this branch or tag. Defaults to the default branch where applicable.
SinceReturn only commits after this date-time, in ISO 8601 format.
UntilReturn only commits before this date-time, in ISO 8601 format.
PathReturn only commits that touch this file path.

List Groups​

List groups visible to the authenticated user.

InputCommentsDefault
ConnectionThe GitLab connection to use.
Fetch AllWhen true, automatically fetches all pages of results using pagination. The API returns up to 100 results per page. GitLab caps offset pagination on this endpoint at 50,000 records by default, so Fetch All cannot retrieve results beyond that.false
PaginationPage and page-size controls.
Per PageThe maximum number of results to return per page. Maximum: 100.
PageThe page number of results to return, starting at 1. Ignored when Fetch All is true.
SearchReturn only results that match this text.

List Issue Notes​

List the comments and system notes on an issue.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Issue IIDThe project-level number of the issue, shown in GitLab as #42. This is the IID, not the global issue ID.
Fetch AllWhen true, automatically fetches all pages of results using pagination. The API returns up to 100 results per page.false
PaginationPage and page-size controls.
Per PageThe maximum number of results to return per page. Maximum: 100.
PageThe page number of results to return, starting at 1. Ignored when Fetch All is true.

List Issues​

List issues in a project, with optional filters.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Fetch AllWhen true, automatically fetches all pages of results using pagination. The API returns up to 100 results per page. GitLab caps offset pagination on this endpoint at 50,000 records by default, so Fetch All cannot retrieve results beyond that.false
PaginationPage and page-size controls.
Per PageThe maximum number of results to return per page. Maximum: 100.
PageThe page number of results to return, starting at 1. Ignored when Fetch All is true.
StateReturn only issues in this state. Leave empty for all states.
LabelsReturn only issues that have all of these labels.[]
SearchReturn only results that match this text.
Updated AfterReturn only results updated on or after this date-time, in ISO 8601 format.

List Labels​

List the labels available in a project, including inherited group labels.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Fetch AllWhen true, automatically fetches all pages of results using pagination. The API returns up to 100 results per page.false
PaginationPage and page-size controls.
Per PageThe maximum number of results to return per page. Maximum: 100.
PageThe page number of results to return, starting at 1. Ignored when Fetch All is true.
SearchReturn only results that match this text.

List Merge Request Notes​

List the comments and system notes on a merge request.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Merge Request IIDThe project-level number of the merge request, shown in GitLab as !17. This is the IID, not the global merge request ID.
Fetch AllWhen true, automatically fetches all pages of results using pagination. The API returns up to 100 results per page.false
PaginationPage and page-size controls.
Per PageThe maximum number of results to return per page. Maximum: 100.
PageThe page number of results to return, starting at 1. Ignored when Fetch All is true.

List Merge Requests​

List merge requests in a project, with optional filters.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Fetch AllWhen true, automatically fetches all pages of results using pagination. The API returns up to 100 results per page.false
PaginationPage and page-size controls.
Per PageThe maximum number of results to return per page. Maximum: 100.
PageThe page number of results to return, starting at 1. Ignored when Fetch All is true.
StateReturn only merge requests in this state. Leave empty for all states.
Source BranchReturn only merge requests from this source branch.
Target BranchReturn only merge requests into this target branch.
LabelsReturn only merge requests that have all of these labels.[]
SearchReturn only results that match this text.
Updated AfterReturn only results updated on or after this date-time, in ISO 8601 format.

List Milestones​

List the milestones in a project.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Fetch AllWhen true, automatically fetches all pages of results using pagination. The API returns up to 100 results per page.false
PaginationPage and page-size controls.
Per PageThe maximum number of results to return per page. Maximum: 100.
PageThe page number of results to return, starting at 1. Ignored when Fetch All is true.
StateReturn only milestones in this state. Leave empty for all.

List Pipelines​

List CI/CD pipelines in a project, with optional filters.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Fetch AllWhen true, automatically fetches all pages of results using pagination. The API returns up to 100 results per page.false
PaginationPage and page-size controls.
Per PageThe maximum number of results to return per page. Maximum: 100.
PageThe page number of results to return, starting at 1. Ignored when Fetch All is true.
Ref NameReturn only results for this branch or tag. Defaults to the default branch where applicable.
StatusReturn only pipelines with this status.
Updated AfterReturn only results updated on or after this date-time, in ISO 8601 format.

List Project Members​

List a project's members, including members inherited from its groups.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Fetch AllWhen true, automatically fetches all pages of results using pagination. The API returns up to 100 results per page.false
PaginationPage and page-size controls.
Per PageThe maximum number of results to return per page. Maximum: 100.
PageThe page number of results to return, starting at 1. Ignored when Fetch All is true.
QueryReturn only members whose name, email, or username matches this text.

List Projects​

List projects visible to the authenticated user.

InputCommentsDefault
ConnectionThe GitLab connection to use.
Fetch AllWhen true, automatically fetches all pages of results using keyset pagination, ordered by ID. The API returns up to 100 results per page.false
PaginationPage and page-size controls.
Per PageThe maximum number of results to return per page. Maximum: 100.
PageThe page number of results to return, starting at 1. Ignored when Fetch All is true.
MembershipWhen true, return only projects the authenticated user is a member of. On GitLab.com, false searches every public project.true
SearchReturn only results that match this text.

List Project Webhooks​

List the webhooks configured on a project.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Fetch AllWhen true, automatically fetches all pages of results using pagination. The API returns up to 100 results per page.false
PaginationPage and page-size controls.
Per PageThe maximum number of results to return per page. Maximum: 100.
PageThe page number of results to return, starting at 1. Ignored when Fetch All is true.

List Users​

List or search users on the GitLab instance.

InputCommentsDefault
ConnectionThe GitLab connection to use.
Fetch AllWhen true, automatically fetches all pages of results using keyset pagination, ordered by ID. The API returns up to 100 results per page.false
PaginationPage and page-size controls.
Per PageThe maximum number of results to return per page. Maximum: 100.
PageThe page number of results to return, starting at 1. Ignored when Fetch All is true.
SearchReturn only results that match this text.
UsernameReturn only the user with this exact username.

Raw Request​

Send raw HTTP request to GitLab.

InputCommentsDefault
ConnectionThe GitLab connection to use.
URLInput the path only (/projects/278964/issues). The base URL, including /api/v4, is already included from the connection. For example, to call https://gitlab.com/api/v4/projects/278964/issues, enter only /projects/278964/issues. Full URLs (with a scheme or starting with //) are rejected.
MethodThe HTTP method to use.
DataThe HTTP body payload to send to the URL.
Query ParameterA list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2.[]
HeaderA list of headers to send with the request.[]
Response TypeThe type of data you expect in the response. You can request json, text, or binary data.json
TimeoutThe maximum time that a client will await a response to its request

Update File​

Update an existing file in a repository by committing to a branch.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
File PathThe path of the file in the repository, such as config/settings.json.
BranchThe branch to commit the change to.
ContentThe file content. Use Base64 encoding for binary files.
Commit MessageThe message for the commit that writes the file.
EncodingHow Content is encoded: text, or base64 for binary files.text

Update Issue​

Update an issue's fields, or close or reopen it. Empty inputs leave the current values unchanged.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Issue IIDThe project-level number of the issue, shown in GitLab as #42. This is the IID, not the global issue ID.
LabelsLabel names to apply. Leave empty to keep the current labels unchanged.[]
Assignee IDsThe numeric IDs of the users to assign. Leave empty to keep the current assignees unchanged.[]
Milestone IDThe numeric global ID of the milestone.
Additional FieldsAdditional optional fields: includes Title, Description, Due Date, State Event, and Confidential.
TitleThe new title. Leave empty to keep the current title.
DescriptionThe description, in Markdown. Leave empty to keep it unchanged.
Due DateThe due date, in YYYY-MM-DD format.
State EventClose or reopen. Leave empty to keep the current state.
ConfidentialWhen True, the issue is confidential. Leave unselected to use GitLab's default on create or keep the current value on update.

Update Merge Request​

Update a merge request's fields, or close or reopen it. Empty inputs leave the current values unchanged.

InputCommentsDefault
ConnectionThe GitLab connection to use.
ProjectThe numeric ID or full path (group/subgroup/project) of the project, or a project URL from a GitLab instance at the domain root.
Merge Request IIDThe project-level number of the merge request, shown in GitLab as !17. This is the IID, not the global merge request ID.
LabelsLabel names to apply. Leave empty to keep the current labels unchanged.[]
Assignee IDsThe numeric IDs of the users to assign. Leave empty to keep the current assignees unchanged.[]
Target BranchThe new target branch. Leave empty to keep the current target.
Additional FieldsAdditional optional fields: includes Title, Description, and State Event.
TitleThe new title. Leave empty to keep the current title.
DescriptionThe description, in Markdown. Leave empty to keep it unchanged.
State EventClose or reopen. Leave empty to keep the current state.