2014-05-08 9 views
11

Ich versuche, ein Ticket in osTicket durch seine REST-API zu erstellen (https://github.com/osTicket/osTicket-1.7/blob/develop/setup/doc/api/tickets.md)osTicket, erstellen Ticket über REST API

Das Problem ist /api/tickets.json kehrt 404. ich es in einem Server auf osTicket Ordner (etwas installiert haben like http://my.net.work.ip/osticket/api/tickets.json - 404)

Ich habe auch versucht, den Server zu cURL (über ssh angemeldet), erstellt ein APIKey für die IP-Adresse des Servers und hatte die gleiche Antwort.

Was fehlt mir hier? Danke

Antwort

13

Also, ich http.php nach api/ (/api/http.php/tickets.json) hinzugefügt hatte und jetzt kann ich Karten erstellen.

Überprüfen Sie http://tmib.net/using-osticket-1812-api. Die verwendete Stichprobe enthält diese Informationen in den Kommentaren.

enter image description here

Die beiden wirklich wichtigen Teile sind auf den Linien 18 und 19.

'url'=>'http://your.domain.tld/api/http.php/tickets.json', // URL to site.tld/api/tickets.json 
'key'=>'PUTyourAPIkeyHERE' // API Key goes here 
//Edit line 18 to have your URL. 
//Edit line 19 by changing "PUTyourAPIkeyHERE" to your API key (aka the "THISISAFAKEAPIKEYHERE!" from earlier). 
+1

Verwenden Sie den Link zum Bearbeiten Ihrer Frage, um weitere Informationen hinzuzufügen. Die Schaltfläche Post-Antwort sollte nur für vollständige Antworten auf die Frage verwendet werden. – dbugger

+7

Dies beantwortete meine Frage und mein Problem ist gelöst –

+0

wie man Benutzer über API erstellen? –

0

Neben Linien 18 und 19 zu ändern müssen Sie sicherstellen, dass Sie die richtige IP-Adresse haben. Sie können dies überprüfen, indem Sie hier zu Ihrer Website gehen: http://your.domain.tld/support/scp/logs.php

Dann sehen Sie, wenn Sie den Fehler API Error (401) erhalten. Wenn Sie dies tun, dann sehen Sie sich die IP-Adresse an und erstellen Sie einen neuen API-Schlüssel für diese IP-Adresse.

Das Problem, mit dem ich konfrontiert war, war, dass ich meine IPv4-Adresse eingab, aber der Server bekam meine IPv6-Adresse.

2

Das Stück, das in den Dokumenten zu fehlen scheint, ist, wie der API-Schlüssel übergeben wird. Durch ein wenig Testen und das oben erwähnte Skript fand ich den X-API-Key-Header. Das heißt, Sie Karten ohne ein Skript erstellen können, können Sie curl so einfach wie verwenden:

curl -X POST -H "X-API-Key: 1234567890ABCDEF" -v -d'{"autorespond":false, "source": "API", "name": "Doctor Who", "email":"[email protected]", "subject":"Have you seen my Tardis key?", "message":"I have managed to lock myself out of the Tardis, can you send me a spare key?"}' http://support.gallifrey.org/api/tickets.json 

Dies funktioniert nur, wenn sie von der IP-Adresse ausgeführt wird, den Sie bei der API-Schlüssel erstellt.