web-dev-qa-db-fra.com

Impossible de trouver l'URL de base de l'API GitLab

J'ai créé le projet et le référentiel sur mon compte gitlab.com, généré une clé privée, maintenant j'essaye de faire un appel api pour obtenir la liste des commits.

Maintenant, je veux obtenir la liste des projets via api, à partir de la documentation https://docs.gitlab.com/ce/api/projects.html#list-projects

GET /projects

Donc je fais 

curl --header "PRIVATE-TOKEN: XXXXXXX -c" "https://gitlab.com/projects"

Et obtenir 404 . J'ai essayé plusieurs combinaisons et je ne trouve pas l’URL de base correcte.

Idem pour les commits de référentiel, les documentations https://docs.gitlab.com/ce/api/commits.html dit

https://gitlab.example.com/api/v3/projects/5/repository/commits

bien, j'essaie (avec myusername/nomprojet comme identifiant de projet) https://gitlab.com/api/v3/projects/myusername/projectname/repository/commits

Et j'ai aussi 404

9
abovesun

L’URL de base correcte pour GitLab hébergé est https://gitlab.com/api/v4/. Votre demande de
GET /projects serait

curl --header "PRIVATE-TOKEN: XXXXXX" "https://gitlab.com/api/v4/projects"

De plus, l'ID de projet n'est pas le même que le nom du projet. Vous pouvez récupérer l'ID de projet de la réponse de votre demande à GET /projects

10
BrokenBinary

https://docs.gitlab.com/ee/api/#basic-usage

essayez cette commande: curl " https://gitlab.example.com/api/v4/projects " comme indiqué dans le document

Si vous utilisez la version 3 de Gitlab , Utilisez Curl --header "Authorization: Bearer OAUTH-TOKEN" https://gitlab.example.com/api/v3/projects

Il existe également un module "python-gitlab" qui vous aidera à obtenir facilement l'identifiant de Project-name https://python-gitlab.readthedocs.io/fr/stable/

0
Anant Sarin

Pour moi, la requête suivante a fonctionné: 

curl --header "PRIVATE-TOKEN: YOUR_TOKEN" "https://gitlab.com/api/v4/users/YOUR_USER_ID/projects" 

Je ne sais pas pourquoi la demande: curl --header "PRIVATE-TOKEN: PRIVATE_TOKEN" "https://gitlab.com/api/v4/projects/" a renvoyé une liste avec d'autres projets publics.

Une autre demande utile pour les informations utilisateur: curl --header "PRIVATE-TOKEN: PRIVATE_TOKEN" "https://gitlab.com/api/v4/user/"

0
dejdej