---
title: "GET /api/v1/organizations/{org_slug}/gitlab"
method: GET
path: "/api/v1/organizations/{org_slug}/gitlab"
tags: ["organizations"]
---

# GET /api/v1/organizations/{org_slug}/gitlab

`GET /api/v1/organizations/{org_slug}/gitlab`

## Request

- Base URL: `https://composal.com` (the document declares no server; this is the origin it was published from)
- URL: `https://composal.com/api/v1/organizations/{org_slug}/gitlab`
- Auth: HTTP bearer

## Path parameters

- `org_slug` string, required

## Query parameters

- `page` integer
- `search` string
- `integration_id` string
- `connection_ids` string
- `sort` 'newest' | 'alphabetical'

## Response `200`

GitLab source integration

- GitlabPage
  - `organization` object, required
    - `id` string, required
    - `slug` string, required
    - `name` string, required
  - `configured` boolean, required
  - `integrations` GitlabIntegration[], required
    - `id` string, required
    - `username` string, required
    - `status` string, required
    - `name` string, nullable, required
    - `avatar_url` string, nullable, required
    - `host` string, required
    - `webhook_authentication` 'signing_token' | 'secret_token', required
  - `selected_integration_id` string, nullable, required
  - `projects` GitlabProject[], required
    - `project_id` integer, required
    - `name` string, required
    - `path_with_namespace` string, required
    - `default_branch` string, nullable, required
    - `web_url` string, required
    - `visibility` string, required
    - `unavailable_reason` string, nullable, required
    - `connection_id` string, nullable, required
    - `import_status` string, nullable, required
    - `can_link` boolean, required: Whether a Verify project can link this project now: it has no connection yet, or its connection is queued, importing or ready.
    - `repository_id` string, nullable, required: The workspace repository its connection reserved, if any.
  - `next_page` integer, nullable, required
  - `connections` GitlabConnection[], required
    - `id` string, required
    - `gitlab_project_id` integer, required
    - `path_with_namespace` string, required
    - `source_branch` string, required
    - `repo_slug` string, required
    - `status` string, required
    - `error_message` string, nullable, required
    - `web_url` string, required
    - `integration_id` string
    - `import_status` 'queued' | 'running' | 'succeeded' | 'failed', required
    - `import_terminal` boolean, required
    - `can_retry` boolean, required
    - `import_detail` string, required
    - `repository_id` string, nullable, required: The workspace repository, reserved when the import starts.
  - `inventory_error` string, nullable
  - `redirect_uri` string, nullable, required: The OAuth redirect URI a self-managed GitLab application must use; null when GitLab callbacks aren't configured.

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not found
- `422`: Unprocessable entity
- `502`: Bad gateway

---

[API](https://skmtc.dev/composal/apis/vex-api.md) - [All operations](https://skmtc.dev/composal/apis/vex-api/llms.txt) - [OpenAPI document](https://skmtc.dev/composal/apis/vex-api/revisions/74298a24e040?raw)
