GitLab CI/CD applications API

Operations about applications

Operations 4

POST /api/v4/applications Create a new application #
GET /api/v4/applications Get applications #
DELETE /api/v4/applications/{id} Delete an application #
POST /api/v4/applications/{id}/renew-secret Renew an application secret #

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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 API
curl "https://apis.io/api/v1/apis/gitlab-ci-applications-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

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.

OpenAPI Specification

gitlab-ci-applications-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: GitLab access_requests Applications API
  version: v4
  description: Operations related to access requests
servers:
- url: https://gitlab.com
tags:
- name: applications
  description: Operations about applications
paths:
  /api/v4/applications:
    post:
      summary: Create a new application
      description: This feature was introduced in GitLab 10.5
      responses:
        '200':
          description: Create a new application
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/API_Entities_ApplicationWithSecret'
      tags:
      - applications
      operationId: postApiV4Applications
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/postApiV4Applications'
        required: true
    get:
      summary: Get applications
      description: List all registered applications
      responses:
        '200':
          description: Get applications
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/API_Entities_Application'
      tags:
      - applications
      operationId: getApiV4Applications
  /api/v4/applications/{id}:
    delete:
      summary: Delete an application
      description: Delete a specific application
      parameters:
      - in: path
        name: id
        description: The ID of the application (not the application_id)
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '204':
          description: Delete an application
      tags:
      - applications
      operationId: deleteApiV4ApplicationsId
  /api/v4/applications/{id}/renew-secret:
    post:
      summary: Renew an application secret
      description: Renew the secret of a specific application
      parameters:
      - in: path
        name: id
        description: The ID of the application (not the application_id)
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: Renew an application secret
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/API_Entities_ApplicationWithSecret'
      tags:
      - applications
      operationId: postApiV4ApplicationsIdRenewSecret
components:
  schemas:
    postApiV4Applications:
      type: object
      properties:
        name:
          type: string
          description: Name of the application.
          example: MyApplication
        redirect_uri:
          type: string
          description: Redirect URI of the application.
          example: https://redirect.uri
        scopes:
          type: string
          description: "Scopes of the application. You can specify multiple scopes by separating\\\n                                 each scope using a space"
        confidential:
          type: boolean
          description: "The application is used where the client secret can be kept confidential. Native mobile apps \\\n                        and Single Page Apps are considered non-confidential. Defaults to true if not supplied"
          default: true
      required:
      - name
      - redirect_uri
      - scopes
      description: Create a new application
    API_Entities_Application:
      type: object
      properties:
        id:
          type: string
        application_id:
          type: string
          example: 5832fc6e14300a0d962240a8144466eef4ee93ef0d218477e55f11cf12fc3737
        application_name:
          type: string
          example: MyApplication
        callback_url:
          type: string
          example: https://redirect.uri
        confidential:
          type: boolean
          example: true
        scopes:
          type: array
          example:
          - api
          - read_user
      required:
      - id
      - application_id
      - application_name
      - callback_url
      - confidential
      - scopes
      description: API_Entities_Application model
    API_Entities_ApplicationWithSecret:
      type: object
      properties:
        id:
          type: string
        application_id:
          type: string
          example: 5832fc6e14300a0d962240a8144466eef4ee93ef0d218477e55f11cf12fc3737
        application_name:
          type: string
          example: MyApplication
        callback_url:
          type: string
          example: https://redirect.uri
        confidential:
          type: boolean
          example: true
        scopes:
          type: array
          example:
          - api
          - read_user
        secret:
          type: string
          example: ee1dd64b6adc89cf7e2c23099301ccc2c61b441064e9324d963c46902a85ec34
      required:
      - id
      - application_id
      - application_name
      - callback_url
      - confidential
      - scopes
      - secret
      description: API_Entities_ApplicationWithSecret model
  securitySchemes:
    access_token_header:
      type: apiKey
      name: PRIVATE-TOKEN
      in: header
    access_token_query:
      type: apiKey
      name: private_token
      in: query