GitLab website screenshot

GitLab

GitLab Inc. is an open-core company that develops GitLab, a DevOps software platform for building, securing, and managing applications. Created by Ukrainian developer Dmytro Zaporozhets and Dutch developer Sytse Sijbrandij, GitLab became the first partly-Ukrainian unicorn in 2018. Known for promoting remote work, it is one of the largest all-remote companies globally. GitLab has approximately 30 million registered users, including 1 million active licensed users.

GitLab publishes 44 API contracts indexed on the APIs.io network, including Admin API, Application API, Applications API, and 41 more. Tagged areas include Code, Developer Tools, Platform, Software Development, and Version Control.

The GitLab catalog on APIs.io includes 1 event-driven AsyncAPI specification, 1 JSON-LD context, and 4 Spectral governance rulesets.

GitLab’s developer surface includes signup flow, sandbox, authentication, changelog, CLI, developer portal, documentation, and 98 more developer resources.

81.0/100 exemplar ▬ flat Agent 48/100 agent ready Front door AI 4/6 moderate saas Full breakdown ↓
scored 2026-10-17 · rubric v0.24.0
AccessFreemiumSelf serve⚡ Free to try
13 published contracts 1 MCP Servers 16 Features 8 Use Cases
CodeDeveloper ToolsPlatformSoftware DevelopmentVersion ControlGitLab

What this lets a business do 2

Business capabilities this provider's published APIs can perform, derived from its own contracts. Browse all capabilities →

Software Product Engineering Management
BC-4200
Projects
GET /api/v4/projects/{id}/repository/branches
Developer Platform & API Ecosystem Management
BC-4270
Project Webhooks
POST /projects/{id}/hooks

What people ask GitLab 16

The questions people put to an LLM, and the jobs they hand an agent, that GitLab's APIs answer — each one linked to the operation that does it. Generated by API Evangelist

GitLab Projects API Delete all merged branches in a project “How do I clean up every branch that has already been merged in a GitLab project?” Get details of a single branch “Where can I see the details and latest commit of one specific branch?” Delete a single branch “How do I delete one named branch from a project repository?” Check whether a branch exists “Is there a quick way to check if a branch exists without fetching its details?”
GitLab Admin API Get a batched background migration “How do I check the progress of one batched background migration on my instance?” List batched background migrations “Which batched background migrations are running or queued on my self-managed GitLab?” Resume a paused background migration “How do I restart a batched background migration I paused?” Pause a batched background migration “How do I temporarily halt a batched background migration that is loading the database?”
GitLab Groups API Get a group badge “How do I look up a single badge defined on a group?” Update a group badge “How do I change the image or link on a badge shared across a group?” Remove a badge from a group “How do I delete a badge that shows on every project in a group?” List a group's badges “Which badges are defined at the group level?”
GitLab Bulk Imports API Get one entity from a group migration “How do I check the status of a single group or project inside a migration?” List entities in one migration “Which groups and projects are part of a specific migration?” Get a group migration “How do I check whether a GitLab-to-GitLab migration has finished?” List entities across all migrations “Can I see every group and project I've migrated, across all my imports?”
GitLab Project Webhooks API List a project's webhooks “Which webhooks are configured on my GitLab project?” Add a webhook to a project “How do I send a notification to my server whenever someone pushes to a project?” Get a project webhook's configuration “How do I check which events a specific webhook is subscribed to?” Update a project webhook “How do I change the delivery URL of an existing project webhook?”
GitLab Broadcast Messages API Get a broadcast message “How do I view one broadcast banner and its schedule?” Update a broadcast message “How do I change the wording or end date of an existing announcement banner?” Delete a broadcast message “How do I take down an announcement banner from my GitLab instance?” List all broadcast messages “What announcement banners are configured on the instance?”
GitLab Application API Get the instance's appearance settings “What title, logo and header message is my GitLab instance currently using?” Change the instance's branding and appearance “How do I set a custom logo and sign-in title for my self-managed GitLab?” Get a plan's limits “What limits apply to a plan on my GitLab instance, like max pipeline size?” Change a plan's limits “How do I raise the maximum npm package size for a plan?”
GitLab Webhook Configuration API Set a custom header on a webhook “How do I add an authorization header to every delivery from a project webhook?” Remove a custom header from a webhook “How do I stop a webhook from sending one of its custom headers?” Set a URL variable on a webhook “How do I keep a secret out of a webhook URL by using a URL variable?” Remove a URL variable from a webhook “How do I delete a URL variable I no longer substitute into a webhook URL?”
GitLab Tokens API Exchange a code or refresh token for an access token “How do I turn an OAuth authorization code into an access token?” Revoke an OAuth access or refresh token “How do I invalidate an OAuth token when a user logs out?” Inspect the current OAuth token “What scopes does my current OAuth token have?”
GitLab Applications API Delete an OAuth application “How do I remove an OAuth application registered on the instance?” List registered OAuth applications “Which OAuth applications are registered on my GitLab instance?” Register a new OAuth application “How do I register an instance-wide OAuth app so I get a client ID and secret?”
GitLab Webhook Events API List recent deliveries of a project webhook “How do I see what a webhook sent and what my server answered over the last week?” Resend a past webhook delivery “How do I retry a webhook delivery that failed?” Send a test payload to a webhook “How do I check my webhook endpoint is reachable before real events arrive?”
GitLab Authorization API Start the OAuth authorization code flow “How do I send a user to GitLab to approve my app's access?” Start a device authorization grant “How do I sign in a CLI or TV app that can't open a browser?”

Showing 12 of 16 APIs with phrasing — see every API.

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-10-17 · rubric v0.24.0
Regulatory Posture applies to this provider. Its tags matched the Horizontal (data, software, accessibility, platform) regime, so Regulatory Posture carries 15 points of the composite. If this regime is wrong for your business, say so on your provider repo — the applicability map is public and we will correct it.
Create-or-Update Ergonomics applies to this provider. This API accepts writes, so it carries 10 points of the composite. It is scored from the published contracts themselves: whether a caller can create-or-update in one call, whether the write accepts a key the caller already holds, and whether the response says which branch ran. Without that, every write needs a search-and-branch in front of it, and the first time that check is skipped a duplicate record is created. Scored against the observed mean rather than raw — a provider at the catalog average is unchanged by this facet, not penalised by it.
The six quality facets above are damped to 75 points between them, because the conditional facet above carries the other 25. That is why each facet's contribution is shown against a damped maximum: raising a quality facet moves the composite by 75% of its nominal weight, not 100%. The full arithmetic is at apis.io/rating/.
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. Every facet and dimension name above is a link: it opens that measurement's own page — what it means, the exact checks that feed it, how the whole catalog distributes on it, and the providers at the top of it. This rating is computed from github.com/api-evangelist/gitlab: open an issue to ask a question, or submit a pull request to add artifacts. Submit an artifact on GitHub — free → Manage your own listing — the Influence plan, $499/mo →

Markets this provider is in provisional

The Kin Score Market layer reads a provider inside its market: its position, and how deep its integrations go. Depth is only comparable within a position. Provisional and unweighted: not part of the Kin Score or agent readiness.

MarketPositionDepthRegistered MCP serverDeclares compatibility
Developer Tools coverage 48.3 1 -
AI Agent Tools (MCP servers, A2A agents) coverage 48.3 1 -

Registered MCP server and declares compatibility are report only — not weighted. Undeclared means we found nothing we can read, so there is no number: we never infer integrations.

APIs 44

Individual APIs this provider publishes, each with its own machine-readable definition.

GitLab GraphQL API

GraphQL is a query language for APIs. You can use it to request the exact data you need, and therefore limit the number of requests you need. GraphQL data is arranged in types, ...

GitLab Issues API

The GitLab Issues API provides programmatic access to manage issues across projects and groups. It supports creating, listing, updating, and deleting issues, as well as managing...

GitLab Merge Requests API

The GitLab Merge Requests API enables programmatic management of merge requests across projects and groups. It supports creating, listing, updating, approving, and merging merge...

GitLab Pipelines API

The GitLab Pipelines API provides programmatic access to CI/CD pipelines in GitLab projects. It supports listing, creating, retrying, and canceling pipelines, as well as retriev...

GitLab Jobs API

The GitLab Jobs API allows you to interact with CI/CD jobs in GitLab projects. It supports listing, retrieving, canceling, retrying, and erasing jobs, as well as downloading job...

GitLab Runners API

The GitLab Runners API provides endpoints for managing CI/CD runners registered to a GitLab instance. It supports listing, registering, updating, and deleting runners, as well a...

GitLab Users API

The GitLab Users API provides programmatic access to manage user accounts on a GitLab instance. It supports listing, creating, updating, and deleting users, managing SSH keys an...

GitLab Repositories API

The GitLab Repositories API provides access to Git repository data within GitLab projects. It supports listing repository tree structures, retrieving file contents, comparing br...

GitLab Commits API

The GitLab Commits API provides programmatic access to Git commits within GitLab projects. It supports listing, creating, and retrieving commits, viewing commit diffs and commen...

GitLab Branches API

The GitLab Branches API enables programmatic management of Git branches within GitLab projects. It supports listing, creating, and deleting branches, as well as retrieving branc...

GitLab Tags API

The GitLab Tags API provides programmatic access to manage Git tags within GitLab projects. It supports listing, creating, and deleting tags, as well as retrieving tag details f...

GitLab Releases API

The GitLab Releases API enables programmatic management of project releases. It supports creating, listing, updating, and deleting releases, as well as managing release assets a...

GitLab Environments API

The GitLab Environments API provides programmatic access to manage deployment environments within GitLab projects. It supports creating, listing, updating, stopping, and deletin...

GitLab Deployments API

The GitLab Deployments API enables programmatic access to deployment records in GitLab projects. It supports listing, creating, and updating deployments, as well as retrieving d...

GitLab Pipeline Schedules API

The GitLab Pipeline Schedules API provides programmatic access to manage scheduled CI/CD pipelines. It supports creating, listing, updating, and deleting pipeline schedules, as ...

GitLab Labels API

The GitLab Labels API provides programmatic access to manage project labels. It supports creating, listing, updating, deleting, and subscribing to labels used for categorizing i...

GitLab Milestones API

The GitLab Milestones API provides programmatic access to manage project milestones. It supports creating, listing, updating, and deleting milestones, as well as retrieving issu...

GitLab Notes API

The GitLab Notes API provides programmatic access to manage comments and system notes on issues, merge requests, epics, and snippets. It supports creating, listing, updating, an...

GitLab Snippets API

The GitLab Snippets API provides programmatic access to manage code snippets. It supports creating, listing, updating, and deleting both personal and project snippets, enabling ...

GitLab Packages API

The GitLab Packages API provides programmatic access to the GitLab Package Registry. It supports listing, retrieving, and deleting packages across projects and groups, with supp...

GitLab Container Registry API

The GitLab Container Registry API provides programmatic access to manage container images stored in the GitLab Container Registry. It supports listing repositories and tags, del...

GitLab Vulnerabilities API

The GitLab Vulnerabilities API provides programmatic access to manage security vulnerabilities detected in GitLab projects. It supports retrieving, confirming, resolving, and di...

GitLab Deploy Keys API

The GitLab Deploy Keys API provides programmatic access to manage deploy keys for GitLab projects. It supports listing, creating, updating, and deleting SSH deploy keys that gra...

GitLab Protected Branches API

The GitLab Protected Branches API provides programmatic access to manage branch protection rules. It supports listing, creating, updating, and removing protection settings that ...

GitLab Wikis API

The GitLab Wikis API provides programmatic access to manage project wiki pages. It supports listing, creating, updating, and deleting wiki pages, as well as uploading attachment...

GitLab Events API

The GitLab Events API provides programmatic access to review event activity across GitLab. It supports listing all events, retrieving user contribution events, and viewing proje...

GitLab Search API

The GitLab Search API enables programmatic search across a GitLab instance, group, or project. It supports searching for projects, issues, merge requests, milestones, code blobs...

GitLab Namespaces API

The GitLab Namespaces API provides programmatic access to manage namespaces in GitLab. It supports listing namespaces, retrieving namespace details, and verifying namespace exis...

GitLab Admin API

The Admin API from GitLab — 11 operation(s) for admin.

GitLab Application API

The Application API from GitLab — 2 operation(s) for application.

GitLab Applications API

The Applications API from GitLab — 2 operation(s) for applications.

GitLab Authorization API

Endpoints for initiating OAuth authorization flows.

GitLab Avatar API

The Avatar API from GitLab — 1 operation(s) for avatar.

GitLab Broadcast Messages API

The Broadcast Messages API from GitLab — 2 operation(s) for broadcast messages.

GitLab Bulk Imports API

The Bulk Imports API from GitLab — 5 operation(s) for bulk imports.

GitLab Groups API

The Groups API from GitLab — 6 operation(s) for groups.

GitLab Metadata API

The Metadata API from GitLab — 1 operation(s) for metadata.

GitLab Project Webhooks API

Manage webhooks for a specific project.

GitLab Projects API

The Projects API from GitLab — 17 operation(s) for projects.

GitLab Tokens API

Endpoints for exchanging, refreshing, and revoking OAuth tokens.

GitLab User Info API

Endpoints for retrieving authenticated user information via OAuth.

GitLab Version API

The Version API from GitLab — 1 operation(s) for version.

GitLab Webhook Configuration API

Manage custom headers and URL variables for webhooks.

GitLab Webhook Events API

Access webhook delivery history and resend events.

Scroll for all 44

Postman Collections 13

Ready-to-run Postman collections for exercising this provider's APIs.

GitLab API

POSTMAN

Scroll for all 13

Open Collections 19

Open, tool-agnostic API collections (OpenAPI-derived and Bruno).

API Collection

OPEN COLLECTION

GitLab api/v4/ Admin API

OPEN COLLECTION

GitLab OAuth 2.0 API

OPEN COLLECTION

GitLab Webhooks API

OPEN COLLECTION

Scroll for all 19

Arazzo Workflows 24

Multi-step API workflows described with the Arazzo specification.

GitLab Add and Preview a Group Badge

Render a group badge preview, add it to the group, and confirm the list.

ARAZZO

GitLab Add and Preview a Project Badge

Render a badge preview, then add it to a project and confirm the list.

ARAZZO

GitLab Approve a Pending Group Access Request

List a group's access requests and approve the first pending requester.

ARAZZO

GitLab Approve a Pending Project Access Request

List a project's access requests and approve the first pending requester.

ARAZZO

GitLab Attach a Metric Image to an Alert

Authorize an upload, attach a metric image to an alert, then list images.

ARAZZO

GitLab Clean Up a Merged Branch

Verify a branch has been merged, then unprotect and delete it.

ARAZZO

GitLab Create and Protect a Release Branch

Cut a new branch from a ref and immediately apply push/merge protection.

ARAZZO

GitLab Create a Feature Branch from the Default Branch

Resolve the default branch tip and cut a new feature branch from it.

ARAZZO

GitLab Ensure a Branch Exists

Check whether a branch exists and create it from a ref only when missing.

ARAZZO

GitLab Find and Run a Pending Manual Job

List project jobs, pick the first manual job, and trigger it.

ARAZZO

GitLab Inspect a Failed CI Job

List failed jobs in a project and fetch full detail for the first one.

ARAZZO

GitLab Prune Stale Merged Branches

Survey the branch list, then bulk-delete all merged branches.

ARAZZO

GitLab Publish and Verify a Broadcast Message

Create a broadcast banner, then read it back to confirm it was stored.

ARAZZO

GitLab Register an Existing Instance Cluster

Add an existing Kubernetes cluster, then confirm it in the cluster list.

ARAZZO

GitLab Request and Approve Project Access

Request access to a project, then approve that same requester.

ARAZZO

GitLab Retire an Instance-Level CI Variable

Confirm an instance CI variable exists, then delete it.

ARAZZO

GitLab Retire a Project Badge by Name

Find a project badge by name and remove it when present.

ARAZZO

GitLab Rotate the Active Broadcast Message

Retire the current broadcast message and publish a replacement.

ARAZZO

GitLab Rotate a Project Badge by Name

Find an existing project badge by name and update its link and image.

ARAZZO

GitLab Start a Migration and Poll to Completion

Kick off a direct-transfer migration, then poll the import until it finishes.

ARAZZO

GitLab Track a Migration's Entities

Read a migration's summary, then drill into a specific entity's detail.

ARAZZO

GitLab Trigger a Manual CI Job and Poll to Completion

Start a manual CI job, then poll its status until it finishes.

ARAZZO

GitLab Reschedule a Broadcast Message

Read an existing broadcast message, then update its window and text.

ARAZZO

GitLab Upsert an Instance-Level CI Variable

Look up an instance CI variable and update it or create it if missing.

ARAZZO

Scroll for all 24

MCP Servers 1

Model Context Protocol servers that expose these APIs to AI agents.

GitLab MCP Server

Remote MCP server at gitlab.com over HTTP.

MCP SERVER

GraphQL 1

GraphQL schemas published by this provider.

GitLab GraphQL API

GraphQL is a query language for APIs. You can use it to request the exact data you need, and therefore limit the number of requests you need. GraphQL data is arranged in types, ...

GRAPHQL

Pricing Plans 2

Published pricing tiers and plan structures.

Gitlab Plans Pricing

9 plans

PLANS

Rate Limits 1

Documented rate limits and quota policies.

Gitlab Rate Limits

2 limits

RATE LIMITS

FinOps 1

Cost, billing, and metering signals for API financial operations.

Features 16

Notable capabilities this provider offers.

Free: 5 users, 400 compute minutes/mo, 10 GiB storage
Premium $29/user/mo: 10K compute minutes, $12 GitLab Credits/user
Ultimate custom: 50K compute minutes, $24 Credits/user, security testing
REST and GraphQL APIs
Authenticated API: 2,000 req/min/user
Unauthenticated API: 500 req/min/IP
Search API: 30 req/min/user
Self-hosted Community Edition (free OSS)
Self-hosted Enterprise Edition (paid)
GitLab Runner for shared/dedicated runners
OAuth 2.0 + personal access tokens + project access tokens
Webhooks for project, group, and system events
GitLab Duo AI assistant (separate add-on)
Container Registry, Package Registry, Helm Chart Registry
GitLab Pages static site hosting
Application Security Testing (Ultimate): SAST, DAST, secret detection

Scroll for all 16

Event Specifications 1

AsyncAPI definitions for this provider's event-driven and streaming APIs.

GitLab Webhooks

GitLab Webhooks deliver HTTP POST payloads to a configured URL whenever specified events occur in a GitLab project or group, such as pushes, merge requests, issues, pipeline sta...

ASYNCAPI

Semantic Vocabularies 1

JSON-LD contexts and semantic vocabularies used across these APIs.

Gitlab Context

38 classes · 268 properties

JSON-LD

Spectral Rules 4

Spectral governance rulesets for linting and validating these APIs.

GitLab — asyncapi rules

7 rules · 1 errors 6 warnings

SPECTRAL

GitLab — jsonschema rules

6 rules · 5 warnings 1 info

SPECTRAL

GitLab API Rules

13 rules · 9 errors 3 warnings 1 info

SPECTRAL

GitLab API Rules

26 rules · 14 errors 9 warnings 3 info

SPECTRAL

OpenAPI Overlays 29

Overlays applied on top of this provider's contracts. Each card says who wrote it: a document the provider publishes, or one API Evangelist derived or generated.

Gitlab Admin Api Phrasing Overlay

17 actions · phrasing · gitlab-admin-api-openapi.yml

GENERATED

Gitlab Api V4 Admin Openapi Search

1 action · update · gitlab-api-v4-admin-openapi-original.yml

GENERATED

Gitlab Api V4 Application Openapi Search

1 action · update · gitlab-api-v4-application-openapi-original.yml

GENERATED

Gitlab Api V4 Applications Openapi Search

1 action · update · gitlab-api-v4-applications-openapi-original.yml

GENERATED

Gitlab Api V4 Avatar Openapi Search

1 action · update · gitlab-api-v4-avatar-openapi-original.yml

GENERATED

Gitlab Api V4 Broadcast Messages Openapi Search

1 action · update · gitlab-api-v4-broadcast-messages-openapi-original.yml

GENERATED

Gitlab Api V4 Bulk Imports Openapi Search

1 action · update · gitlab-api-v4-bulk-imports-openapi-original.yml

GENERATED

Gitlab Api V4 Groups Openapi Search

1 action · update · gitlab-api-v4-groups-openapi-original.yml

GENERATED

Gitlab Api V4 Metadata Openapi Search

1 action · update · gitlab-api-v4-metadata-openapi-original.yml

GENERATED

Gitlab Api V4 Projects Openapi Search

1 action · update · gitlab-api-v4-projects-openapi-original.yml

GENERATED

Gitlab Api V4 Version Openapi Search

1 action · update · gitlab-api-v4-version-openapi-original.yml

GENERATED

Gitlab Application Api Phrasing Overlay

5 actions · phrasing · gitlab-application-api-openapi.yml

GENERATED

Gitlab Applications Api Phrasing Overlay

4 actions · phrasing · gitlab-applications-api-openapi.yml

GENERATED

Gitlab Authorization Api Phrasing Overlay

3 actions · phrasing · gitlab-authorization-api-openapi.yml

GENERATED

Gitlab Avatar Api Phrasing Overlay

2 actions · phrasing · gitlab-avatar-api-openapi.yml

GENERATED

Gitlab Broadcast Messages Api Phrasing Overlay

6 actions · phrasing · gitlab-broadcast-messages-api-openapi.yml

GENERATED

Gitlab Bulk Imports Api Phrasing Overlay

7 actions · phrasing · gitlab-bulk-imports-api-openapi.yml

GENERATED

Gitlab Groups Api Phrasing Overlay

11 actions · phrasing · gitlab-groups-api-openapi.yml

GENERATED

Gitlab Metadata Api Phrasing Overlay

2 actions · phrasing · gitlab-metadata-api-openapi.yml

GENERATED

Gitlab Oauth2 Openapi Search

1 action · update · gitlab-oauth2-openapi.yml

GENERATED

Gitlab Openapi Search

1 action · update · gitlab-openapi-original.yml

GENERATED

Gitlab Project Webhooks Api Phrasing Overlay

6 actions · phrasing · gitlab-project-webhooks-api-openapi.yml

GENERATED

Gitlab Projects Api Phrasing Overlay

27 actions · phrasing · gitlab-projects-api-openapi.yml

GENERATED

Gitlab Tokens Api Phrasing Overlay

4 actions · phrasing · gitlab-tokens-api-openapi.yml

GENERATED

Gitlab User Info Api Phrasing Overlay

2 actions · phrasing · gitlab-user-info-api-openapi.yml

GENERATED

Gitlab Version Api Phrasing Overlay

2 actions · phrasing · gitlab-version-api-openapi.yml

GENERATED

Gitlab Webhook Configuration Api Phrasing Overlay

5 actions · phrasing · gitlab-webhook-configuration-api-openapi.yml

GENERATED

Gitlab Webhook Events Api Phrasing Overlay

4 actions · phrasing · gitlab-webhook-events-api-openapi.yml

GENERATED

Gitlab Webhooks Openapi Search

1 action · update · gitlab-webhooks-openapi.yml

GENERATED

Scroll for all 29

JSON Schema 81

Standalone JSON Schema definitions for this provider's data models.

API_Entities_AccessRequester

10 properties

JSON SCHEMA

API_Entities_Appearance

16 properties

JSON SCHEMA

API_Entities_Application

5 properties

JSON SCHEMA

API_Entities_ApplicationWithSecret

6 properties

JSON SCHEMA

API_Entities_Avatar

1 properties

JSON SCHEMA

API_Entities_Badge

7 properties

JSON SCHEMA

API_Entities_BasicBadgeDetails

5 properties

JSON SCHEMA

API_Entities_Branch

9 properties

JSON SCHEMA

API_Entities_BroadcastMessage

11 properties

JSON SCHEMA

API_Entities_BulkImport

5 properties

JSON SCHEMA

API_Entities_BulkImports

16 properties

JSON SCHEMA

API_Entities_Ci_Variable

7 properties

JSON SCHEMA

API_Entities_Cluster

15 properties

JSON SCHEMA

API_Entities_Dictionary_Table

2 properties

JSON SCHEMA

API_Entities_Job

19 properties

JSON SCHEMA

API_Entities_Metadata

4 properties

JSON SCHEMA

API_Entities_MetricImage

6 properties

JSON SCHEMA

API_Entities_PlanLimit

20 properties

JSON SCHEMA

API_Entities_Ci_Variable

7 properties

JSON SCHEMA

API_Entities_Cluster

15 properties

JSON SCHEMA

API_Entities_Dictionary_Table

2 properties

JSON SCHEMA

API_Entities_Appearance

16 properties

JSON SCHEMA

API_Entities_ApplicationWithSecret

6 properties

JSON SCHEMA

API_Entities_PlanLimit

20 properties

JSON SCHEMA

API_Entities_ApplicationWithSecret

6 properties

JSON SCHEMA

API_Entities_Avatar

1 properties

JSON SCHEMA

API_Entities_BroadcastMessage

11 properties

JSON SCHEMA

API_Entities_BulkImport

5 properties

JSON SCHEMA

API_Entities_BulkImports

16 properties

JSON SCHEMA

API_Entities_AccessRequester

10 properties

JSON SCHEMA

API_Entities_Badge

7 properties

JSON SCHEMA

API_Entities_BasicBadgeDetails

5 properties

JSON SCHEMA

API_Entities_Metadata

4 properties

JSON SCHEMA

API_Entities_AccessRequester

10 properties

JSON SCHEMA

API_Entities_Badge

7 properties

JSON SCHEMA

API_Entities_BasicBadgeDetails

5 properties

JSON SCHEMA

API_Entities_Branch

9 properties

JSON SCHEMA

API_Entities_Job

19 properties

JSON SCHEMA

API_Entities_MetricImage

6 properties

JSON SCHEMA

API_Entities_Metadata

4 properties

JSON SCHEMA

DeviceAuthorizationRequest

2 properties

JSON SCHEMA

DeviceAuthorizationResponse

6 properties

JSON SCHEMA

GitLab Issue

29 properties

JSON SCHEMA

GitLab Merge Request

33 properties

JSON SCHEMA

DeviceAuthorizationRequest

2 properties

JSON SCHEMA

DeviceAuthorizationResponse

6 properties

JSON SCHEMA

RevokeTokenRequest

3 properties

JSON SCHEMA

TokenInfo

5 properties

JSON SCHEMA

TokenRequest

10 properties

JSON SCHEMA

TokenResponse

6 properties

JSON SCHEMA

UserInfo

8 properties

JSON SCHEMA

API_Entities_AccessRequester

10 properties

JSON SCHEMA

API_Entities_Badge

7 properties

JSON SCHEMA

API_Entities_BasicBadgeDetails

5 properties

JSON SCHEMA

API_Entities_Branch

9 properties

JSON SCHEMA

API_Entities_Ci_Variable

7 properties

JSON SCHEMA

API_Entities_Cluster

15 properties

JSON SCHEMA

API_Entities_Commit

14 properties

JSON SCHEMA

API_Entities_CustomAttribute

2 properties

JSON SCHEMA

API_Entities_Dictionary_Table

2 properties

JSON SCHEMA

API_Entities_MetricImage

6 properties

JSON SCHEMA

API_Entities_Platform_Kubernetes

4 properties

JSON SCHEMA

API_Entities_ProjectIdentity

7 properties

JSON SCHEMA

API_Entities_Provider_Gcp

7 properties

JSON SCHEMA

API_Entities_UserBasic

9 properties

JSON SCHEMA

GitLab Pipeline

22 properties

JSON SCHEMA

GitLab Project

33 properties

JSON SCHEMA

RevokeTokenRequest

3 properties

JSON SCHEMA

TokenInfo

5 properties

JSON SCHEMA

TokenRequest

10 properties

JSON SCHEMA

TokenResponse

6 properties

JSON SCHEMA

UserInfo

8 properties

JSON SCHEMA

WebhookEvent

10 properties

JSON SCHEMA

WebhookInput

19 properties

JSON SCHEMA

Webhook

24 properties

JSON SCHEMA

WebhookEvent

10 properties

JSON SCHEMA

WebhookInput

19 properties

JSON SCHEMA

Webhook

24 properties

JSON SCHEMA

Scroll for all 81

JSON Structure 52

JSON Structure definitions describing this provider's data shapes.

Gitlab Issue Structure

29 properties

JSON STRUCTURE

Gitlab Merge Request Structure

33 properties

JSON STRUCTURE

Gitlab Oauth2 Token Info Structure

5 properties

JSON STRUCTURE

Gitlab Oauth2 Token Request Structure

10 properties

JSON STRUCTURE

Gitlab Oauth2 Token Response Structure

6 properties

JSON STRUCTURE

Gitlab Oauth2 User Info Structure

8 properties

JSON STRUCTURE

Gitlab Pipeline Structure

22 properties

JSON STRUCTURE

Gitlab Project Structure

33 properties

JSON STRUCTURE

Gitlab Webhooks Webhook Event Structure

10 properties

JSON STRUCTURE

Gitlab Webhooks Webhook Input Structure

19 properties

JSON STRUCTURE

Gitlab Webhooks Webhook Structure

24 properties

JSON STRUCTURE

Scroll for all 52

Examples 52

Example request and response payloads for these APIs.

Gitlab Issue Example

10 fields

EXAMPLE

Gitlab Pipeline Example

10 fields

EXAMPLE

Gitlab Project Example

10 fields

EXAMPLE

Scroll for all 52

Security Posture 4

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Gitlab Authentication

apiKey/http · 3 schemes

SECURITY

Gitlab Domain Security

TLSv1.3 · HSTS · DMARC

SECURITY

Gitlab Vulnerability Disclosure

Hackerone · security.txt · contact published

SECURITY

Gitlab Trust Center

SOC 2, ISO 27001, ISO 27017, ISO 27018, PCI DSS, GDPR, CSA STAR

SECURITY

Scopes 1

OAuth scopes governing access to this provider's APIs.

Gitlab Scopes

25 scopes · authorizationCode/clientCredentials/deviceCode

25 scopes

SCOPES

Agentic Access 1

Recommended x-agentic-access execution contracts for AI agents.

Gitlab Agentic Access

167 operations · 92 acting · 1 human-in-the-loop

167 operations · 92 acting

AGENTIC

Use Cases 8

What developers build with this provider.

DevOps Automation

Automate CI/CD pipeline creation, runner management, and deployment workflows.

Project Management

Programmatically manage issues, milestones, boards, and merge requests.

Infrastructure as Code

Manage GitLab configuration, groups, projects, and settings through APIs.

Security and Compliance

Access vulnerability reports, security scan results, and compliance data.

Migration and Integration

Bulk import projects, users, and data from other platforms.

Custom Tooling

Build custom developer tools, dashboards, and bots for GitLab workflows.

Container Management

Manage Docker images, Kubernetes clusters, and container deployments.

Analytics and Reporting

Extract project analytics, contribution data, and productivity metrics.

Scroll for all 8

Solutions 4

Packaged solutions this provider offers.

GitLab Free

Core DevOps platform with unlimited repositories, CI/CD, issue tracking, and API access.

GitLab Premium

Advanced DevOps with merge request approvals, code owners, and priority support.

GitLab Ultimate

Enterprise DevOps with security scanning, compliance, and advanced API features.

GitLab Dedicated

Single-tenant SaaS deployment with dedicated infrastructure and enhanced security.

Resources

Get Started 6

Portal, sign-up, and the first successful call

Documentation 8

Reference material describing how the API behaves

Scroll for all 8

Agent Surfaces 6

MCP servers, agent skills, and machine-readable catalogs

Design & Contract 37

Pagination, idempotency, versioning, errors, and events

Scroll for all 37

Build 7

SDKs, sample code, and the tooling you integrate with

Scroll for all 7

Access & Security 11

Authentication, authorization, and security posture

Scroll for all 11

Operate 12

Status, limits, changes, and where to get help

Scroll for all 12

Commercial 6

Pricing, plans, and the legal terms of use

Company 6

The organization behind the API

Other 6

Properties that don't map to a standard resource type

Source (apis.yml)

apis.yml Raw ↑
aid: gitlab
url: https://raw.githubusercontent.com/api-search/code/main/_apis/gitlab/apis.md
name: GitLab
tags:
- Code
- Developer Tools
- Platform
- Software Development
- Version Control
- GitLab
tags_raw:
- Code
- Developer Tools
- Platform
- Software Development
- Source Control
- GitLab
kind: contract
deliveryModel:
  model: saas
  open_source: false
  commercial: true
  callable_host: true
  label: Hosted service · you call their endpoint
  confidence: high
  source:
  - openapi
  - pricing
  generated: '2026-08-28'
  method: derived
accessModel:
  pricing: freemium
  onboarding: self-serve
  trial: false
  try_now: true
  public: false
  label: Freemium · Self-serve signup
  confidence: high
  source:
  - plans
  - authentication
  - scopes
  - security
  generated: '2026-09-03'
  method: derived
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/gitlab.png
access: 3rd-Party
created: 2023/11/10
modified: '2026-06-20'
position: Consuming
description: GitLab Inc. is an open-core company that develops GitLab, a DevOps software platform for building, securing,
  and managing applications. Created by Ukrainian developer Dmytro Zaporozhets and Dutch developer Sytse Sijbrandij, GitLab
  became the first partly-Ukrainian unicorn in 2018. Known for promoting remote work, it is one of the largest all-remote
  companies globally. GitLab has approximately 30 million registered users, including 1 million active licensed users.
maintainers:
- FN: Kin Lane
  url: http://apievangelist.com
  email: kin@apievangelist.com
specificationVersion: '0.23'
common:
- type: FinOps
  url: finops/gitlab-finops.yml
- type: Spectral
  url: rules/gitlab-spectral-rules.yml
- type: Spectral
  url: rules/gitlab-rules.yml
- type: Spectral
  url: rules/gitlab-jsonschema-spectral-rules.yml
- type: Spectral
  url: rules/gitlab-asyncapi-spectral-rules.yml
- type: Vocabulary
  url: vocabulary/gitlab-vocabulary.yml
- type: AgentSkill
  url: skills/_index.yml
- type: Webhooks
  url: asyncapi/gitlab-webhooks-asyncapi.yml
- type: Compliance
  url: https://trust.gitlab.com/
- type: Hosts
  url: hosts/gitlab-hosts.yml
- type: Vendors
  url: vendors/gitlab-vendors.yml
- type: Webhooks
  url: https://handbook.gitlab.com/handbook/eta/css/zendesk/webhooks/
- type: SignUp
  url: https://handbook.gitlab.com/handbook/enterprise-data/how-we-work/registered-queries/
- type: Sandbox
  url: https://handbook.gitlab.com/handbook/eta/css/zendesk/sandbox/
- type: Roadmap
  url: https://handbook.gitlab.com/handbook/engineering/architecture/roadmap/
- type: Newsroom
  url: https://about.gitlab.com/press/
- type: Leadership
  url: https://handbook.gitlab.com/handbook/leadership/
- type: RateLimits
  url: rate-limits/gitlab-rate-limits.yml
- type: Plans
  url: plans/gitlab-plans-pricing.yml
- type: CapabilityMap
  url: capabilities/gitlab-capability-edges.yml
  name: GitLab Business Capability Map
- type: Overlay
  url: overlays/gitlab-api-v4-admin-openapi-search.yml
- type: AgenticAccess
  url: agentic-access/gitlab-agentic-access.yml
- type: DomainSecurity
  url: security/gitlab-domain-security.yml
- type: TrustCenter
  url: security/gitlab-trust-center.yml
- type: VulnerabilityDisclosure
  url: security/gitlab-vulnerability-disclosure.yml
- type: Authentication
  url: authentication/gitlab-authentication.yml
- type: OAuthScopes
  url: scopes/gitlab-scopes.yml
- type: Packages
  url: packages/gitlab-packages.yml
- type: WellKnown
  url: well-known/gitlab-well-known.yml
- type: SecurityTxt
  url: well-known/gitlab-security.txt
- type: MCPServer
  url: mcp/gitlab-mcp.yml
- type: LLMsTxt
  url: llms/gitlab-llms.txt
- type: Conformance
  url: conformance/gitlab-conformance.yml
- type: ErrorCatalog
  url: errors/gitlab-problem-types.yml
- type: Lifecycle
  url: lifecycle/gitlab-lifecycle.yml
- type: Conventions
  url: conventions/gitlab-conventions.yml
- type: ChangeLog
  url: changelog/gitlab-changelog.yml
- type: CLI
  url: cli/gitlab-cli.yml
- type: DataModel
  url: data-model/gitlab-data-model.yml
- type: PostmanWorkspace
  url: https://www.postman.com/kinlaneapi/gitlab/overview
- type: Arazzo
  url: arazzo/gitlab-add-group-badge-workflow.yml
  name: GitLab Add and Preview a Group Badge
- type: Arazzo
  url: arazzo/gitlab-add-project-badge-workflow.yml
  name: GitLab Add and Preview a Project Badge
- type: Arazzo
  url: arazzo/gitlab-approve-group-access-request-workflow.yml
  name: GitLab Approve a Pending Group Access Request
- type: Arazzo
  url: arazzo/gitlab-approve-project-access-request-workflow.yml
  name: GitLab Approve a Pending Project Access Request
- type: Arazzo
  url: arazzo/gitlab-attach-alert-metric-image-workflow.yml
  name: GitLab Attach a Metric Image to an Alert
- type: Arazzo
  url: arazzo/gitlab-cleanup-merged-branch-workflow.yml
  name: GitLab Clean Up a Merged Branch
- type: Arazzo
  url: arazzo/gitlab-create-and-protect-branch-workflow.yml
  name: GitLab Create and Protect a Release Branch
- type: Arazzo
  url: arazzo/gitlab-create-branch-from-default-workflow.yml
  name: GitLab Create a Feature Branch from the Default Branch
- type: Arazzo
  url: arazzo/gitlab-ensure-branch-exists-workflow.yml
  name: GitLab Ensure a Branch Exists
- type: Arazzo
  url: arazzo/gitlab-find-and-run-manual-job-workflow.yml
  name: GitLab Find and Run a Pending Manual Job
- type: Arazzo
  url: arazzo/gitlab-inspect-failed-jobs-workflow.yml
  name: GitLab Inspect a Failed CI Job
- type: Arazzo
  url: arazzo/gitlab-prune-stale-branches-workflow.yml
  name: GitLab Prune Stale Merged Branches
- type: Arazzo
  url: arazzo/gitlab-publish-broadcast-message-workflow.yml
  name: GitLab Publish and Verify a Broadcast Message
- type: Arazzo
  url: arazzo/gitlab-register-instance-cluster-workflow.yml
  name: GitLab Register an Existing Instance Cluster
- type: Arazzo
  url: arazzo/gitlab-request-and-self-approve-project-access-workflow.yml
  name: GitLab Request and Approve Project Access
- type: Arazzo
  url: arazzo/gitlab-retire-instance-ci-variable-workflow.yml
  name: GitLab Retire an Instance-Level CI Variable
- type: Arazzo
  url: arazzo/gitlab-retire-project-badge-workflow.yml
  name: GitLab Retire a Project Badge by Name
- type: Arazzo
  url: arazzo/gitlab-rotate-broadcast-message-workflow.yml
  name: GitLab Rotate the Active Broadcast Message
- type: Arazzo
  url: arazzo/gitlab-rotate-project-badge-workflow.yml
  name: GitLab Rotate a Project Badge by Name
- type: Arazzo
  url: arazzo/gitlab-start-migration-and-poll-workflow.yml
  name: GitLab Start a Migration and Poll to Completion
- type: Arazzo
  url: arazzo/gitlab-track-migration-entities-workflow.yml
  name: GitLab Track a Migration's Entities
- type: Arazzo
  url: arazzo/gitlab-trigger-manual-job-and-poll-workflow.yml
  name: GitLab Trigger a Manual CI Job and Poll to Completion
- type: Arazzo
  url: arazzo/gitlab-update-broadcast-message-workflow.yml
  name: GitLab Reschedule a Broadcast Message
- type: Arazzo
  url: arazzo/gitlab-upsert-instance-ci-variable-workflow.yml
  name: GitLab Upsert an Instance-Level CI Variable
- type: LinkedIn
  url: https://www.linkedin.com/company/gitlab-com
- type: Website
  url: https://about.gitlab.com/
- type: Portal
  url: https://docs.gitlab.com/api/
- type: Documentation
  url: https://docs.gitlab.com/
- type: Authentication
  url: https://docs.gitlab.com/api/rest/authentication/
- type: GitHubOrganization
  url: https://github.com/gitlabhq
- type: Blog
  url: https://about.gitlab.com/blog/
- type: StatusPage
  url: https://status.gitlab.com/
- type: Pricing
  url: https://about.gitlab.com/pricing/
- url: https://about.gitlab.com/terms/
  type: TermsOfService
- url: https://about.gitlab.com/privacy/
  type: PrivacyPolicy
- url: https://about.gitlab.com/company/contact/
  type: Support
- url: https://docs.gitlab.com/ee/editor_extensions/
  type: IDESupport
- url: https://about.gitlab.com/releases/categories/releases/
  type: ReleaseNotes
- url: https://developer.gitlab.com/
  type: Portal
- url: https://docs.gitlab.com/
  type: Documentation
- url: https://about.gitlab.com/get-started/
  type: GettingStarted
- url: https://status.gitlab.com/
  type: StatusPage
- url: https://gitlab.com/users/sign_up
  type: Signup
- url: https://about.gitlab.com/blog/
  type: Blog
- url: https://about.gitlab.com/support/
  type: Support
- url: https://gitlab.com/gitlab-org/gitlab/blob/master/CHANGELOG.md
  type: ChangeLog
- url: https://docs.gitlab.com/api/rest/authentication/
  type: Authentication
- url: https://docs.gitlab.com/api/rest/third_party_clients/
  type: SDKs
- url: https://forum.gitlab.com/
  type: Support
- url: https://docs.gitlab.com/security/rate_limits/
  type: RateLimits
- url: json-ld/gitlab-context.jsonld
  type: JSONLD
- url: json-schema/gitlab-project-schema.json
  type: JSONSchema
- url: json-schema/gitlab-merge-request-schema.json
  type: JSONSchema
- url: json-schema/gitlab-issue-schema.json
  type: JSONSchema
- url: json-schema/gitlab-pipeline-schema.json
  type: JSONSchema
- url: https://about.gitlab.com/pricing/
  type: Pricing
- url: https://about.gitlab.com/security/
  type: Security
- url: https://about.gitlab.com/security/disclosure/
  type: Security
- url: https://about.gitlab.com/direction/
  type: Documentation
- url: https://about.gitlab.com/integrations/
  type: Integrations
- url: https://about.gitlab.com/partners/technology-partners/
  type: Partners
- url: https://about.gitlab.com/solutions/open-source/
  type: Documentation
- url: https://marketplace.gitlab.com/
  type: Marketplace
- url: https://docs.gitlab.com/api/openapi/openapi_interactive/
  type: Tools
- url: https://gitlab.com/gitlab-org/gitlab
  type: GitHubRepository
- type: Features
  data:
  - 'Free: 5 users, 400 compute minutes/mo, 10 GiB storage'
  - 'Premium $29/user/mo: 10K compute minutes, $12 GitLab Credits/user'
  - 'Ultimate custom: 50K compute minutes, $24 Credits/user, security testing'
  - REST and GraphQL APIs
  - 'Authenticated API: 2,000 req/min/user'
  - 'Unauthenticated API: 500 req/min/IP'
  - 'Search API: 30 req/min/user'
  - Self-hosted Community Edition (free OSS)
  - Self-hosted Enterprise Edition (paid)
  - GitLab Runner for shared/dedicated runners
  - OAuth 2.0 + personal access tokens + project access tokens
  - Webhooks for project, group, and system events
  - GitLab Duo AI assistant (separate add-on)
  - Container Registry, Package Registry, Helm Chart Registry
  - GitLab Pages static site hosting
  - 'Application Security Testing (Ultimate): SAST, DAST, secret detection'
  sources:
  - https://about.gitlab.com/pricing/
  updated: '2026-05-04'
- type: UseCases
  data:
  - name: DevOps Automation
    description: Automate CI/CD pipeline creation, runner management, and deployment workflows.
  - name: Project Management
    description: Programmatically manage issues, milestones, boards, and merge requests.
  - name: Infrastructure as Code
    description: Manage GitLab configuration, groups, projects, and settings through APIs.
  - name: Security and Compliance
    description: Access vulnerability reports, security scan results, and compliance data.
  - name: Migration and Integration
    description: Bulk import projects, users, and data from other platforms.
  - name: Custom Tooling
    description: Build custom developer tools, dashboards, and bots for GitLab workflows.
  - name: Container Management
    description: Manage Docker images, Kubernetes clusters, and container deployments.
  - name: Analytics and Reporting
    description: Extract project analytics, contribution data, and productivity metrics.
- type: Solutions
  data:
  - name: GitLab Free
    description: Core DevOps platform with unlimited repositories, CI/CD, issue tracking, and API access.
  - name: GitLab Premium
    description: Advanced DevOps with merge request approvals, code owners, and priority support.
  - name: GitLab Ultimate
    description: Enterprise DevOps with security scanning, compliance, and advanced API features.
  - name: GitLab Dedicated
    description: Single-tenant SaaS deployment with dedicated infrastructure and enhanced security.
- type: LlmsText
  url: https://docs.gitlab.com/llms.txt
apis:
- aid: gitlab:gitlab-graphql-api
  name: GitLab GraphQL API
  tags:
  - Data
  - GraphQL
  - Query Language
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/graphql
  humanURL: https://docs.gitlab.com/ee/api/graphql/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/ee/api/graphql/
    type: Documentation
  - url: https://docs.gitlab.com/ee/api/graphql/#deprecation-and-removal-process
    type: Deprecation
  - url: https://docs.gitlab.com/ee/api/graphql/#deprecation-and-removal-process
    type: Documentation
  - url: https://docs.gitlab.com/ee/api/graphql/#limits
    type: RateLimits
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  - url: https://docs.gitlab.com/api/graphql/reference/
    type: APIReference
  - url: https://docs.gitlab.com/api/graphql/getting_started/
    type: GettingStarted
  - url: graphql/gitlab-graphql.md
    type: GraphQL
  description: GraphQL is a query language for APIs. You can use it to request the exact data you need, and therefore limit
    the number of requests you need. GraphQL data is arranged in types, so your client can use client-side GraphQL libraries
    to consume the API and avoid manual parsing. There are no fixed endpoints and no data model, so you can add to the API
    without creating breaking changes. This enables us to have a versionless API.
- aid: gitlab:apiv4issues
  name: GitLab Issues API
  tags:
  - Bug Tracking
  - Issues
  - Project Management
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/issues/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/issues/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Issues API provides programmatic access to manage issues across projects and groups. It supports
    creating, listing, updating, and deleting issues, as well as managing issue assignments, labels, milestones, and related
    metadata for tracking work in GitLab.
- aid: gitlab:apiv4merge-requests
  name: GitLab Merge Requests API
  tags:
  - Code Review
  - Collaboration
  - Merge Requests
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/merge_requests/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/merge_requests/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Merge Requests API enables programmatic management of merge requests across projects and groups.
    It supports creating, listing, updating, approving, and merging merge requests, as well as managing reviewers, assignees,
    and merge request metadata for code review workflows.
- aid: gitlab:apiv4pipelines
  name: GitLab Pipelines API
  tags:
  - CI/CD
  - Continuous Integration
  - Pipelines
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/pipelines/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/pipelines/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Pipelines API provides programmatic access to CI/CD pipelines in GitLab projects. It supports listing,
    creating, retrying, and canceling pipelines, as well as retrieving pipeline details and variables for automating continuous
    integration and delivery workflows.
- aid: gitlab:apiv4jobs
  name: GitLab Jobs API
  tags:
  - Builds
  - CI/CD
  - Job
  tags_raw:
  - Build
  - CI/CD
  - Jobs
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/jobs/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/jobs/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Jobs API allows you to interact with CI/CD jobs in GitLab projects. It supports listing, retrieving,
    canceling, retrying, and erasing jobs, as well as downloading job artifacts and viewing job logs for build and deployment
    automation.
- aid: gitlab:apiv4runners
  name: GitLab Runners API
  tags:
  - CI/CD
  - Infrastructure
  - Runners
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/runners/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/runners/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Runners API provides endpoints for managing CI/CD runners registered to a GitLab instance. It supports
    listing, registering, updating, and deleting runners, as well as managing runner configurations and viewing jobs assigned
    to specific runners.
- aid: gitlab:apiv4users
  name: GitLab Users API
  tags:
  - Identity and Access Management
  - Identity
  - User
  tags_raw:
  - Access Management
  - Identity
  - Users
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/users/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/users/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Users API provides programmatic access to manage user accounts on a GitLab instance. It supports
    listing, creating, updating, and deleting users, managing SSH keys and GPG keys, viewing user activity, and administering
    user-level settings and permissions.
- aid: gitlab:apiv4repositories
  name: GitLab Repositories API
  tags:
  - Git
  - Repositories
  - Version Control
  tags_raw:
  - Git
  - Repositories
  - Source Control
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/repositories/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/repositories/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Repositories API provides access to Git repository data within GitLab projects. It supports listing
    repository tree structures, retrieving file contents, comparing branches and tags, downloading archives, and accessing
    contributor statistics.
- aid: gitlab:apiv4commits
  name: GitLab Commits API
  tags:
  - Commits
  - Git
  - Version Control
  tags_raw:
  - Commits
  - Git
  - Source Control
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/commits/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/commits/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Commits API provides programmatic access to Git commits within GitLab projects. It supports listing,
    creating, and retrieving commits, viewing commit diffs and comments, cherry-picking commits, and accessing commit status
    information for CI/CD integration.
- aid: gitlab:apiv4branches
  name: GitLab Branches API
  tags:
  - Branches
  - Git
  - Version Control
  tags_raw:
  - Branches
  - Git
  - Source Control
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/branches/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/branches/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Branches API enables programmatic management of Git branches within GitLab projects. It supports
    listing, creating, and deleting branches, as well as retrieving branch details including the latest commit and protection
    status.
- aid: gitlab:apiv4tags
  name: GitLab Tags API
  tags:
  - Git
  - Version Control
  tags_raw:
  - Git
  - Source Control
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/tags/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/tags/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Tags API provides programmatic access to manage Git tags within GitLab projects. It supports listing,
    creating, and deleting tags, as well as retrieving tag details for version management and release workflows.
- aid: gitlab:apiv4releases
  name: GitLab Releases API
  tags:
  - Distribution
  - Releases
  - Versioning
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/releases/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/releases/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Releases API enables programmatic management of project releases. It supports creating, listing,
    updating, and deleting releases, as well as managing release assets and links for distributing software versions and release
    notes.
- aid: gitlab:apiv4environments
  name: GitLab Environments API
  tags:
  - CI/CD
  - Deployment
  - Environment
  tags_raw:
  - CI/CD
  - Deployments
  - Environments
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/environments/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/environments/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Environments API provides programmatic access to manage deployment environments within GitLab projects.
    It supports creating, listing, updating, stopping, and deleting environments used to track deployments across different
    stages such as staging and production.
- aid: gitlab:apiv4deployments
  name: GitLab Deployments API
  tags:
  - CI/CD
  - Deployment
  - Release Management
  tags_raw:
  - CI/CD
  - Deployments
  - Release Management
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/deployments/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/deployments/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Deployments API enables programmatic access to deployment records in GitLab projects. It supports
    listing, creating, and updating deployments, as well as retrieving deployment details and merge requests associated with
    specific deployments.
- aid: gitlab:apiv4pipeline-schedules
  name: GitLab Pipeline Schedules API
  tags:
  - Automation
  - CI/CD
  - Pipeline Schedules
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/pipeline_schedules/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/pipeline_schedules/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Pipeline Schedules API provides programmatic access to manage scheduled CI/CD pipelines. It supports
    creating, listing, updating, and deleting pipeline schedules, as well as managing schedule variables and triggering scheduled
    pipeline runs.
- aid: gitlab:apiv4labels
  name: GitLab Labels API
  tags:
  - Labels
  - Organization
  - Project Management
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/labels/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/labels/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Labels API provides programmatic access to manage project labels. It supports creating, listing,
    updating, deleting, and subscribing to labels used for categorizing issues, merge requests, and other project resources.
- aid: gitlab:apiv4milestones
  name: GitLab Milestones API
  tags:
  - Milestones
  - Planning
  - Project Management
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/milestones/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/milestones/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Milestones API provides programmatic access to manage project milestones. It supports creating,
    listing, updating, and deleting milestones, as well as retrieving issues and merge requests associated with specific milestones
    for sprint and release planning.
- aid: gitlab:apiv4notes
  name: GitLab Notes API
  tags:
  - Collaboration
  - Comments
  - Notes
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/notes/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/notes/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Notes API provides programmatic access to manage comments and system notes on issues, merge requests,
    epics, and snippets. It supports creating, listing, updating, and deleting notes for collaboration and discussion within
    GitLab resources.
- aid: gitlab:apiv4snippets
  name: GitLab Snippets API
  tags:
  - Code Sharing
  - Collaboration
  - Snippets
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/snippets/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/snippets/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Snippets API provides programmatic access to manage code snippets. It supports creating, listing,
    updating, and deleting both personal and project snippets, enabling sharing of code fragments and configuration examples
    across teams and projects.
- aid: gitlab:apiv4packages
  name: GitLab Packages API
  tags:
  - Artifacts
  - Package Registry
  - Packages
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/packages/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/packages/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Packages API provides programmatic access to the GitLab Package Registry. It supports listing, retrieving,
    and deleting packages across projects and groups, with support for multiple package formats including NPM, Maven, PyPI,
    NuGet, Conan, Helm, and more.
- aid: gitlab:apiv4container-registry
  name: GitLab Container Registry API
  tags:
  - Container Registry
  - Containers
  - Docker
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/container_registry/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/container_registry/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Container Registry API provides programmatic access to manage container images stored in the GitLab
    Container Registry. It supports listing repositories and tags, deleting images, and managing registry visibility settings
    for containerized application deployments.
- aid: gitlab:apiv4vulnerabilities
  name: GitLab Vulnerabilities API
  tags:
  - DevSecOps
  - Security
  - Vulnerabilities
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/vulnerabilities/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/vulnerabilities/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Vulnerabilities API provides programmatic access to manage security vulnerabilities detected in
    GitLab projects. It supports retrieving, confirming, resolving, and dismissing vulnerabilities found by SAST, DAST, container
    scanning, and dependency scanning tools.
- aid: gitlab:apiv4deploy-keys
  name: GitLab Deploy Keys API
  tags:
  - Deploy Keys
  - Security
  - SSH
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/deploy_keys/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/deploy_keys/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Deploy Keys API provides programmatic access to manage deploy keys for GitLab projects. It supports
    listing, creating, updating, and deleting SSH deploy keys that grant read-only or read-write access to repositories for
    automated deployment workflows.
- aid: gitlab:apiv4protected-branches
  name: GitLab Protected Branches API
  tags:
  - Access Control
  - Protected Branches
  - Version Control
  tags_raw:
  - Access Control
  - Protected Branches
  - Source Control
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/protected_branches/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/protected_branches/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Protected Branches API provides programmatic access to manage branch protection rules. It supports
    listing, creating, updating, and removing protection settings that control who can push, merge, and force push to specific
    branches in a project.
- aid: gitlab:apiv4wikis
  name: GitLab Wikis API
  tags:
  - Documentation
  - Knowledge Base
  - Wikis
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/wikis/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/wikis/
    type: Documentation
  - url: https://docs.gitlab.com/api/rest/authentication/
    type: Authentication
  description: The GitLab Wikis API provides programmatic access to manage project wiki pages. It supports listing, creating,
    updating, and deleting wiki pages, as well as uploading attachments, enabling teams to maintain project documentation
    programmatically.
- aid: gitlab:apiv4events
  name: GitLab Events API
  tags:
  - Activity
  - Audit
  - Event
  tags_raw:
  - Activity
  - Audit
  - Events
  image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
  baseURL: https://gitlab.com/api/v4
  humanURL: https://docs.gitlab.com/api/events/
  overlays: []
  properties:
  - url: https://docs.gitlab.com/api/events/
    type: Documentation


# --- truncated at 32 KB (66 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/gitlab/refs/heads/main/apis.yml

Work with this as data

Every provider here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for providers

9 MCP tools reach this
  • find_providersBrowse and filter every provider in the catalog.
  • get_provider_artifactsEvery artifact this provider publishes, grouped by type.
  • get_provider_operationsEvery operation across all of their OpenAPIs — one call instead of parsing every spec.
  • get_provider_toolsEvery MCP tool they ship, with the operation each wraps.
  • get_provider_evidenceHow each part of their score was established. Free — the basis for a claim should not sit behind it.
  • get_provider_ratingPRO — composite, band, trend and facet scores.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This provider
curl "https://apis.io/api/v1/providers/gitlab"
All providers
curl "https://apis.io/api/v1/providers?limit=25"
Every operation they expose
curl "https://apis.io/api/v1/providers/gitlab/operations?limit=25"
How their score was established
curl "https://apis.io/api/v1/providers/gitlab/evidence"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.