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?