For Agents
Automate GitLab project management, merge request workflows, CI/CD pipeline triggering, and issue tracking across groups and projects. Covers 358 endpoints for the full DevOps lifecycle.
Get started with GitLab REST API in minutes using your preferred integration method.
# Add to your MCP client config (Claude Desktop, Cursor, Windsurf)
{
"jentic": {
"url": "https://api.jentic.com/mcp",
"auth": "oauth"
}
}
# Then ask your agent:
"create a merge request"
# → Jentic returns the GET /events tool with parameter schema, agent executes.What an agent can do with GitLab REST API API.
Open merge requests with source and target branch refs, assign reviewers, and set approval rules
Trigger CI/CD pipelines on specific branches and monitor job status through to deployment
Search and filter issues across projects with label, milestone, and assignee qualifiers
Fork projects, configure protected branches, and manage repository access permissions
GET STARTED
Use for: I need to create a merge request with specific reviewers assigned, I want to trigger a CI/CD pipeline on a feature branch, List all open issues assigned to me across multiple projects, Check whether a merge request pipeline has passed
Not supported: Does not handle cloud infrastructure provisioning, container orchestration, or artifact storage — use for source control, code review, and CI/CD pipeline management only.
Jentic publishes the only available OpenAPI document for GitLab REST API, keeping it validated and agent-ready.
Interact with GitLab projects, merge requests, issues, CI/CD pipelines, and container registries through 358 REST endpoints. Supports personal access tokens, OAuth 2.0, and project-level deploy tokens for granular access. Covers the complete DevOps lifecycle from source control and code review through automated testing, deployment pipelines, and package publishing.
Retrieve pipeline job logs and artifact downloads for build debugging
Configure project-level runners and shared runner assignments for CI execution
Manage group membership, access levels, and nested subgroup hierarchies
Patterns agents use GitLab REST API API for, with concrete tasks.
★ AI Agent Merge Request Automation
AI agents use the GitLab API through Jentic to automate merge request workflows — creating MRs, assigning reviewers, checking pipeline status, and posting comments. An agent searches Jentic for 'create a merge request', receives the schema for POST /v3/projects/{id}/merge_requests, and executes with source branch, target branch, and title. The entire flow from MR creation to approval tracking completes without manual context-switching.
Create a merge request from feature/auth to main in project ID 12345, assign two reviewers, and verify the pipeline passes before requesting approval
CI/CD Pipeline Management
Trigger pipelines on specific branches or tags, monitor job progress through stages, and download artifacts when builds complete. The API exposes pipeline status, individual job logs, and retry capabilities. Teams integrate this into larger deployment orchestration systems that coordinate across multiple GitLab projects and environments.
Trigger a pipeline on the release/v3.0 branch of project 12345, wait for the deploy stage to complete, and report whether all jobs succeeded
Project and Group Administration
Create projects, configure settings, manage group membership, and set access levels across nested subgroup hierarchies. The API supports bulk operations for onboarding new teams — creating project structures, assigning permissions, and configuring default branch protections in a single automated flow.
Create a new project under the engineering group, set the default branch to main with push protection requiring one approval, and add three team members with Developer access
Issue Tracking and Sprint Planning
Create, search, and update issues with labels, milestones, weights, and due dates. Filter across projects within a group or globally. Agents automate triage by labeling incoming issues based on content, assigning to appropriate milestones, and linking related issues for sprint planning.
Search for all open issues labeled 'severity::1' in the platform group created in the last 48 hours, and assign them to the current sprint milestone
358 endpoints — interact with gitlab projects, merge requests, issues, ci/cd pipelines, and container registries through 358 rest endpoints.
METHOD
PATH
DESCRIPTION
/v3/projects/{id}/merge_requests
Create a merge request
/v3/projects/{id}/merge_requests
List merge requests for a project
/v3/projects
List all projects accessible to the user
/v3/groups/{id}/issues
List issues for a group
/v3/projects/{id}/issues
Create a new issue
/v3/projects/{id}/runners
List project runners
/v3/projects/{id}/builds
List project builds (CI jobs)
/v3/projects/{id}/merge_requests
Create a merge request
/v3/projects/{id}/merge_requests
List merge requests for a project
/v3/projects
List all projects accessible to the user
/v3/groups/{id}/issues
List issues for a group
/v3/projects/{id}/issues
Create a new issue
Three things that make agents converge on Jentic-routed access.
Credential isolation
GitLab personal access tokens and OAuth tokens are stored encrypted in the Jentic vault (MAXsystem). Agents receive scoped API access — raw tokens with api or read_api scopes never enter the agent's context window.
Intent-based discovery
Agents search by intent (e.g., 'create a merge request' or 'trigger a pipeline') and Jentic returns the matching GitLab endpoint with its request schema, so the agent calls the correct operation without navigating GitLab's 358-endpoint documentation.
Time to first call
Direct GitLab integration: 1-2 days for OAuth setup, pagination handling, and rate limit logic. Through Jentic: under 1 hour — search, load schema, execute.
Alternatives and complements available in the Jentic catalogue.
GitHub v3 REST API
Cloud-hosted Git platform with Actions CI/CD and extensive marketplace integrations
Choose GitHub when the target repositories are on GitHub, or when you need GitHub Actions, Dependabot, or the broader GitHub ecosystem integrations.
CircleCI REST API
Dedicated CI/CD platform that integrates with GitLab repositories
Use CircleCI when the project uses external CI instead of GitLab CI — trigger builds and check status through CircleCI's API while managing code on GitLab.
Linear API
Project tracking tool that can sync with GitLab merge requests
Choose Linear for sprint planning and project management when teams prefer Linear's interface over GitLab's built-in boards.
Specific to using GitLab REST API API through Jentic.
What authentication does the GitLab REST API use?
The GitLab API supports personal access tokens passed via the PRIVATE-TOKEN header, OAuth 2.0 bearer tokens, and project/group deploy tokens for CI/CD. Through Jentic, tokens are stored encrypted in the MAXsystem vault and injected automatically — agents never see raw credentials. Personal access tokens can be scoped to specific permissions like read_api, read_repository, or api (full access).
How do I create a merge request through the GitLab API via Jentic?
Search Jentic for 'create a merge request', load the operation schema for POST /v3/projects/{id}/merge_requests, and execute with source_branch, target_branch, and title fields. Jentic handles authentication automatically. The response includes the MR IID, web URL, and pipeline status. You can also assign reviewers and set labels in the same request.
What are the rate limits for the GitLab REST API?
GitLab.com applies 2000 requests per minute for authenticated users by default. Self-managed instances configure their own limits. The API returns RateLimit-Remaining and RateLimit-Reset headers. Unauthenticated requests are limited to 500 per minute on gitlab.com. Heavy endpoints like search have lower per-endpoint limits.
Can I trigger CI/CD pipelines via the GitLab API?
Yes. Use the pipeline trigger endpoint to start a new pipeline on a specified ref (branch or tag). You can pass variables as key-value pairs to customize the pipeline run. Monitor status by polling the pipelines list endpoint filtered by SHA or ref, and retrieve individual job logs for debugging.
How do I list all projects within a specific GitLab group?
Use GET /v3/groups/{id}/projects to list all projects under a group. Filter by visibility, archived status, or search term. Results include project metadata, default branch, last activity date, and access level. For nested subgroups, use the subgroups endpoint to traverse the hierarchy.
Is the GitLab REST API free to use?
The API is free for all GitLab.com tiers including Free. Rate limits differ by plan: Free tier gets 2000 requests/minute, Premium and Ultimate get higher limits. Self-managed GitLab instances have configurable limits. There is no per-request API cost.
/v3/projects/{id}/runners
List project runners
/v3/projects/{id}/builds
List project builds (CI jobs)