GitLab API

Use these operations to interact with the GitLab integration in Cortex.

Required permissions

Your API key must have the Configure integrations permission.

Operations

Retrieve configurations

get
Authorizations
Responses
200
Successfully found configurations
application/json
get
GET /api/v1/gitlab/configurations HTTP/1.1
Host: api.getcortexapp.com
Authorization: Bearer JWT
Accept: */*
{
  "configurations": [
    {
      "alias": "text",
      "groupNames": [
        "text"
      ],
      "hidePersonalProjects": true,
      "host": "text",
      "isDefault": true,
      "lastFour": "text"
    }
  ]
}

Retrieve default configuration

get
Authorizations
Responses
200
Successfully found default configuration
application/json
get
GET /api/v1/gitlab/default-configuration HTTP/1.1
Host: api.getcortexapp.com
Authorization: Bearer JWT
Accept: */*
{
  "alias": "text",
  "groupNames": [
    "text"
  ],
  "hidePersonalProjects": true,
  "host": "text",
  "isDefault": true,
  "lastFour": "text"
}

Retrieve a configuration

get
Authorizations
Path parameters
aliasstringRequired
Responses
200
Successfully found configuration
application/json
get
GET /api/v1/gitlab/configuration/{alias} HTTP/1.1
Host: api.getcortexapp.com
Authorization: Bearer JWT
Accept: */*
{
  "alias": "text",
  "groupNames": [
    "text"
  ],
  "hidePersonalProjects": true,
  "host": "text",
  "isDefault": true,
  "lastFour": "text"
}

Add a single configuration

post
Authorizations
Body
aliasstringRequired
groupNamesstring[]Required
hidePersonalProjectsbooleanRequired
hoststringOptional
isDefaultbooleanRequired
personalAccessTokenstringRequired
Responses
200
Successfully added configuration
application/json
post
POST /api/v1/gitlab/configuration HTTP/1.1
Host: api.getcortexapp.com
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 126

{
  "alias": "text",
  "groupNames": [
    "text"
  ],
  "hidePersonalProjects": true,
  "host": "text",
  "isDefault": true,
  "personalAccessToken": "text"
}
{
  "configurations": [
    {
      "alias": "text",
      "groupNames": [
        "text"
      ],
      "hidePersonalProjects": true,
      "host": "text",
      "isDefault": true,
      "lastFour": "text"
    }
  ]
}

Validate all configurations

post
Authorizations
Responses
200
Successfully validated all configurations
application/json
post
POST /api/v1/gitlab/configuration/validate HTTP/1.1
Host: api.getcortexapp.com
Authorization: Bearer JWT
Accept: */*
{
  "configurations": [
    {
      "alias": "text",
      "isValid": true,
      "message": "text"
    }
  ]
}

Validate a configuration

post
Authorizations
Path parameters
aliasstringRequired
Responses
200
Successfully validated configuration
application/json
post
POST /api/v1/gitlab/configuration/validate/{alias} HTTP/1.1
Host: api.getcortexapp.com
Authorization: Bearer JWT
Accept: */*
{
  "alias": "text",
  "isValid": true,
  "message": "text"
}

Update a configuration

put

WARNING: Updating aliases for configurations or changing the default configuration could cause entity YAMLs that use this integration to break.

Authorizations
Path parameters
aliasstringRequired
Body
aliasstringRequired
groupNamesstring[]Required
hidePersonalProjectsbooleanRequired
hoststringOptional
isDefaultbooleanRequired
Responses
200
Successfully updated configuration
application/json
put
PUT /api/v1/gitlab/configuration/{alias} HTTP/1.1
Host: api.getcortexapp.com
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 97

{
  "alias": "text",
  "groupNames": [
    "text"
  ],
  "hidePersonalProjects": true,
  "host": "text",
  "isDefault": true
}
{
  "configurations": [
    {
      "alias": "text",
      "groupNames": [
        "text"
      ],
      "hidePersonalProjects": true,
      "host": "text",
      "isDefault": true,
      "lastFour": "text"
    }
  ]
}

Add multiple configurations

post
Authorizations
Body
Responses
200
Successfully added configurations
application/json
post
POST /api/v1/gitlab/configurations HTTP/1.1
Host: api.getcortexapp.com
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 147

{
  "configurations": [
    {
      "alias": "text",
      "groupNames": [
        "text"
      ],
      "hidePersonalProjects": true,
      "host": "text",
      "isDefault": true,
      "personalAccessToken": "text"
    }
  ]
}
{
  "configurations": [
    {
      "alias": "text",
      "groupNames": [
        "text"
      ],
      "hidePersonalProjects": true,
      "host": "text",
      "isDefault": true,
      "lastFour": "text"
    }
  ],
  "skippedConfigurations": {
    "ANY_ADDITIONAL_PROPERTY": "text"
  }
}

Delete all configurations

delete
Authorizations
Responses
200
Successfully deleted all configurations
delete
DELETE /api/v1/gitlab/configurations HTTP/1.1
Host: api.getcortexapp.com
Authorization: Bearer JWT
Accept: */*

No content

Delete a configuration

delete
Authorizations
Path parameters
aliasstringRequired
Responses
200
Successfully deleted configuration
application/json
delete
DELETE /api/v1/gitlab/configuration/{alias} HTTP/1.1
Host: api.getcortexapp.com
Authorization: Bearer JWT
Accept: */*
{
  "configurations": [
    {
      "alias": "text",
      "groupNames": [
        "text"
      ],
      "hidePersonalProjects": true,
      "host": "text",
      "isDefault": true,
      "lastFour": "text"
    }
  ]
}

Last updated

Was this helpful?