Service Overview
GitLab API is the official developer platform api from GitLab for developer, merge-requests, issues, and repositories. This Hub entry keeps the service explanation, setup links, and Harbor-safe import path together so operators can review the integration before local credentials and policies are applied.
GitLab API
Service
Developer platform API
Service type
https://gitlab.com/api/v4/
Base URL
What This Port Does
- List GitLab projects visible to the authenticated user with typed visibility, ownership, and ordering filters.
- List merge requests visible to the authenticated user with typed scope, state, search, and pagination filters.
- Create an issue in a specific GitLab project using `input.path.projectId` and a bounded JSON input.body payload.
- Keeps service credentials local to Harbor Node so approval, execution, and audit stay inside the Harbor ecosystem.
Operator Setup
- Create or confirm a GitLab account, workspace, or tenant with the API access needed for the actions you plan to enable.
- Import this Hub entry into Harbor, then verify the service base URL and connection settings before testing actions.
- Store the required Bearer token locally in Harbor Node using the Authorization header, then review automatic versus approval-required actions before publish.
- Use the vendor setup guide linked below to create service credentials, scopes, or app registration settings that match your Harbor policy.
Install
Use in Harbor UI or the import-by-URL route.
https://hub.breakwaterharbor.net/p/gitlab/gitlab-api
http_api
Local shell
15
Actions
Community
Required tier
Never
Secrets imported
Actions
List Projects JSON
{
"slug": "list-projects",
"label": "List Projects",
"description": "List GitLab projects visible to the authenticated user with typed visibility, ownership, and ordering filters.",
"method": "GET",
"path": "/projects",
"inputs": {
"parameters": [
{
"name": "visibility",
"in": "query",
"schema": {
"type": "string",
"enum": [
"public",
"internal",
"private"
]
},
"description": "Limit projects by visibility level."
},
{
"name": "membership",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Limit to projects that the current user is a member of."
},
{
"name": "owned",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Limit to projects explicitly owned by the current user."
},
{
"name": "simple",
"in": "query",
"schema": {
"type": "boolean"
},
"description": "Return a limited subset of project fields."
},
{
"name": "order_by",
"in": "query",
"schema": {
"type": "string",
"enum": [
"created_at",
"updated_at",
"last_activity_at",
"name",
"path",
"star_count"
]
},
"description": "Field used to order the project list."
},
{
"name": "sort",
"in": "query",
"schema": {
"type": "string",
"enum": [
"asc",
"desc"
]
},
"description": "Sort direction."
}
]
},
"approvalMode": "automatic",
"requestBodyMode": "none",
"resultMode": "json_summary"
}