2016-04-04 5 views
1

Ich versuche einen REST-API-Aufruf zu machen, um zu wissen, wer im Dienst ist. Jedes Mal, wenn ich diesen Befehl ausführe, bekomme ich den 401-Status mit dem Hinweis, unautorisierter Benutzer. Ich kann mich erfolgreich mit dem Xmatters Web Interface einloggen. Hier wird der API-Aufruf Ich macheZugriff auf Xmatters apis nicht möglich

curl -H "Content-Type: application/json" --user username "https://xxx.hosted.xmatters.com/api/xm/1/groups/groupId/calendar" 

Wo ich falsch gehe?

Antwort

0

Ich weiß nicht, was mit Ihrem Befehl falsch ist, vielleicht haben Sie das GET verpasst oder Sie brauchen den Header nicht.

Aber das hier sollte

curl --silent -X GET -H:"Authorization:Basic dXNlcjpwYXNzd29yZAo=" --url "https://blabla.hosted.xmatters.com" 

A base64 String arbeiten kann wie folgt erzeugt werden:

echo user:password | base64 
dXNlcjpwYXNzd29yZAo= 

ich ein Tool wie DHC (Chrome Extension) empfehlen würde Ihre URLs zu testen. Sie können auch curl-Befehle generieren.

1

Um auf die API zuzugreifen, stellen Sie sicher, dass der Benutzer (mindestens) die Rolle "Limited Group Supervisor" hat. Wenn Sie noch nie zuvor getan, hier ist, wie:

  • Als admin und die Nutzung der Website, auf die Nutzer navigieren Bildschirm, um den Link in der Nähe der oberen der Website mit
  • suchen und wählen Sie den Benutzer in Frage
  • wählen Sie die Registerkarte Rollen für diesen Benutzer
  • wählen Sie die Rollen Textfeld und eine li st sollte
  • Select Limited Group Beauftragten (oder entsprechende Rolle)
  • Klicken Sie abschließend auf Speichern

Ihr curl Befehl erscheinen kann so einfach wie curl --user username "https://xxx.hosted.xmatters.com/api/xm/1/groups/groupId/calendar"

API Doc sein: https://help.xmatters.com/xmAPI/#get-who-is-on-duty