2015-08-04 12 views
6

Ich möchte eine Liste der Probleme für das Projekt YYYYYY und einen Benutzernamen XXXXXX bekommen.Zugriff auf GitLab-Probleme mit CURL?

curl --header "PRIVATE-TOKEN: myownprivatetoken" "https://gitlab.com/api/v3/projects/YYYYYY/issues" 

curl --header "PRIVATE-TOKEN: myownprivatetoken" --header "SUDO: XXXXXX" "https://gitlab.com/api/v3/projects/YYYYYY/issues" 

curl --header "PRIVATE-TOKEN: myownprivatetoken" "https://gitlab.com/api/v3/XXXXXX/projects/YYYYYY/issues" 

Aber sie nur zurück:

{"message":"404 Project Not Found"} 

oder

<html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html> 

Es scheint mir, dass ich die API-Dokumentation auf http://doc.gitlab.com/ce/api/issues.html und http://doc.gitlab.com/ce/api/README.html falsch interpretiert haben.

Also, was mache ich falsch?

Antwort

5

Die Dokumentation Ihnen sagen, wie aus einem Projekt abzurufen Fragen:

GET /projects/:id/issues 

Und Sie versucht:

curl --header "PRIVATE-TOKEN: xxx" "https://gitlab.com/api/v3/projects/YYYYYY/issues" 

Das ist richtig, aber der Parameter Sie YYYYYY haben geben sein die Projekt-ID, so muss es eine Ganzzahl sein, kein Text mit dem Projektnamen oder Pfad. Sie müssen wie etwas verwenden:

curl --header "PRIVATE-TOKEN: xxx" "https://gitlab.com/api/v3/projects/234/issues" 

Wo 234 die ID Ihres Projekts ist. Um diese ganze Zahl ID des Projekts zu erhalten, machen Sie einfach ein:

curl --header "PRIVATE-TOKEN: xxx" "https://gitlab.com/api/v3/projects 

Hier werden alle Ihre Projekte und geben Ihnen die einzigartige integer Kennung eines Projekts im id Feld:

[ 
    { 
    "id": 4,   <-------- //This one 
    "name": "my super mega project", 
    "description": null, 
    ..... 
+1

Sobald Sie weiß es, es ist so offensichtlich, ...;) – Edward

+0

Hallo, ich könnte wie ein Foo aussehen, um das zu fragen, aber ich frage trotzdem. Wie kann ich die Seite "https://gitlab.com/api/v3/projects" für mein Projekt ermitteln? Ich kann das nicht verstehen. @edward – RosAng

+0

@RosAng: Ändern Sie einfach 'gitlab.com' durch die URL, die Sie verwenden, um Ihre GitLab-Instanz-GUI zu besuchen. Mit einem Beispiel, wenn Sie zu "mygitlabinstance.org" gehen müssen, ist es einfach "mygitlabinstance.org/api/v3/projects" – PierreF