---
title: "List the GitLab projects a token can sync"
method: POST
path: "/w/{workspace}/git_sync/gitlab/projects"
tags: ["Git Sync"]
---

# List the GitLab projects a token can sync

`POST /w/{workspace}/git_sync/gitlab/projects`

## Request

- Base URL: `/api` (relative, and the document was published on a file host, not at the API’s origin)
- URL: `/api/w/{workspace}/git_sync/gitlab/projects`
- Auth: one of:
  - HTTP bearer
  - API key in cookie `token`

Lists the projects the supplied GitLab token can push to, so a git repository resource can be filled in without hand-writing a project path. The token is used for this call only and is never stored. Requires workspace admin.

## Path parameters

- `workspace` string, required

## Request body

- object
  - `base_url` string, required: The GitLab instance, e.g. https://gitlab.com
  - `token` string, required: A project access token with the api scope, or a group token that reaches the project
  - `search` string: Narrow the list to projects matching this text

## Response `200`

the projects the token can sync

- GitlabProject[]
  - `path_with_namespace` string, required: nested group path plus project name, which is also GitLab's project id
  - `http_url_to_repo` string, required
  - `default_branch` string

## Changes

- **2026-09-08** `2544d864d84d`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/windmill/apis/windmill-api/changes/w/:workspace/git_sync/gitlab/projects/post.md)

---

[API](https://skmtc.dev/windmill/apis/windmill-api.md) - [All operations](https://skmtc.dev/windmill/apis/windmill-api/llms.txt) - [OpenAPI document](https://skmtc.dev/windmill/apis/windmill-api/revisions/2b1f8bcee7bf?raw)
