GitLab Extended icon

GitLab Extended

Extended GitLab node

Overview

The "Raw API Request" operation of the GitLab Extended node allows users to make arbitrary HTTP requests directly to the GitLab API. This provides maximum flexibility for interacting with any GitLab endpoint that may not be covered by the predefined resource operations in the node.

Common scenarios where this is beneficial include:

  • Accessing new or less common GitLab API endpoints before they are officially supported by the node.
  • Performing custom queries or actions that require specific HTTP methods, headers, or payloads.
  • Debugging or experimenting with GitLab API calls within an n8n workflow without writing custom code.

Practical example:

  • You want to fetch a list of issues filtered by a custom query parameter not exposed in the standard issue resource operations. Using the Raw API Request, you can specify the GET method, the /projects/123/issues endpoint, and add your custom query parameters as JSON.

Properties

Name Meaning
Authentication Choose between using saved credentials ("Credential") or specifying custom connection details ("Custom").
GitLab Server Base URL of your GitLab instance (e.g., https://gitlab.com). Used only if "Custom" authentication is selected.
Access Token Personal access token with API permissions. Used only if "Custom" authentication is selected.
Project Owner Namespace or owner of the project. Ignored if "Project ID" is set. Used only if "Custom" authentication is selected.
Project Name Project slug or name. Ignored if "Project ID" is set. Used only if "Custom" authentication is selected.
Project ID Numeric project ID. Takes precedence over owner and name if provided. Used only if "Custom" authentication is selected.
HTTP Method HTTP method to use for the request. Options: DELETE, GET, PATCH, POST, PUT. Default is GET.
Endpoint API endpoint path to call, e.g., /projects/1/issues. Required.
Content JSON body payload for the request. Only used when HTTP method is POST, PUT, or PATCH. Optional.
Query Parameters JSON object representing query parameters to append to the request URL. Optional.

Output

The node outputs the raw JSON response from the GitLab API call under the json field of each item. The structure of this output depends entirely on the called endpoint and the data returned by GitLab.

If the API returns binary data (not typical for most GitLab API endpoints), it would be handled accordingly, but this operation primarily deals with JSON responses.

Dependencies

  • Requires a valid GitLab API access token either via saved credentials or custom input.
  • If using custom authentication, the user must provide the GitLab server URL and a personal access token with appropriate API permissions.
  • No additional external dependencies beyond the GitLab API itself.

Troubleshooting

  • Invalid Credentials: If the access token is missing, expired, or lacks required scopes, the API will return authentication errors. Ensure the token is valid and has sufficient permissions.
  • Incorrect Endpoint: Providing an invalid or malformed endpoint path will result in 404 or other HTTP errors. Verify the endpoint path matches GitLab API documentation.
  • Malformed JSON: The Content and Query Parameters fields expect valid JSON. Invalid JSON syntax will cause errors. Use proper JSON formatting.
  • Unsupported HTTP Method: Only DELETE, GET, PATCH, POST, and PUT are supported. Using others will cause errors.
  • Project Identification Conflicts: When using custom authentication, if both Project ID and Project Owner/Name are provided, Project ID takes precedence. Omitting necessary project identification may cause errors.

Links and References

Discussion