Solución:
La URL base correcta para el GitLab alojado es https://gitlab.com/api/v4/
así que tu petición de
GET /projects
sería
curl --header "PRIVATE-TOKEN: XXXXXX" "https://gitlab.com/api/v4/projects"
Eso devolvería todos los proyectos que son visibles para ti, incluidos los proyectos públicos de otros usuarios.
Si desea ver solo sus proyectos, debe usar el GET /users/:user_id/projects
punto final, donde :user_id
es su ID de usuario que se puede encontrar en su página de perfil de GitLab o en la respuesta a su solicitud de GET /user
si está autenticado.
# Get :user_id from this request
curl --header "PRIVATE-TOKEN: XXXXXX" "https://gitlab.com/api/v4/user"
# See your projects by replacing :user_id with id value from previous request
curl --header "PRIVATE-TOKEN: XXXXXX" "https://gitlab.com/api/v4/users/:user_id/projects"
Además, el ID del proyecto no es el mismo que el nombre del proyecto. Puede recuperar el ID del proyecto de la respuesta de su solicitud a GET /users/:user_id/projects
o desde la página de configuración del proyecto.
Para mí, la siguiente solicitud funcionó:
curl --header "PRIVATE-TOKEN: YOUR_TOKEN" "https://gitlab.com/api/v4/users/YOUR_USER_ID/projects"
No sé por qué la solicitud:curl --header "PRIVATE-TOKEN: PRIVATE_TOKEN" "https://gitlab.com/api/v4/projects/"
devolvió una lista con algunos otros proyectos públicos.
Otra solicitud útil de información del usuario: curl --header "PRIVATE-TOKEN: PRIVATE_TOKEN" "https://gitlab.com/api/v4/user/"