Basis URL: https://api.dealsandprojects.com
Alle Aufrufe müssen über SSL (HTTPS) erfolgen.
Authentifizierung: Basic HTTP Authentifizierung mit E-Mail-Adresse und ApiKey des Benutzers.
Der julitec Benutzer muss Admin-Rechte haben, um auf die API zugreifen zu können.
Ermittlung des Api Keys:
Einloggen mit E-Mail-Adresse und Passwort unter https://api.dealsandprojects.com. Anschließend https://api.dealsandprojects.com/Login/GetApiKey aufrufen. Der Api Key wird angezeigt.
Das API folgt dem REST Standard. D.h. über HTTP Aufrufe können Datensätze im JSON Format gelesen und geschrieben werden.
Zum Testen kann man sich im Browser unter https://api.dealsandprojects.com einloggen und anschließend die Datenabrufe direkt im Browser testen, z.B. <apiurl>/api/order.
Da der Browser nicht den Content-Type: application/json übergibt, ist das Ergebnis eine XML-Datei. Die Deals&Projects API kann grundsätzlich mit XML und JSON umgehen. Für XML wird der Content-Type: text/xmlverwendet.
Bei POST Aufrufen können Felder, die nicht gefüllt werden sollen, weggelassen werden.
Datumsfelder müssen das Format "yyyy-MM-ddTHH:mm:ss" haben.
Paging
Bei Listenabrufen werden standardmäßig immer 50 Einträge zurückgeliefert. Über die Parameter "Skip" und "Take" kann gesteuert werden, welcher Ausschnitt der Daten abgefragt wird. Werte größer 100 werden ignoriert für den Parameter Take.
Beispiel:
<apiurl>/api/order?Skip=100&Take=100
In diesem Beispiel werden die Aufträge 101 bis 200 zurückgeliefert.
Eigene Felder
Sind für eine Entität eigene Felder definiert, so werden diese automatisch beim Abruf der Daten über GET mitgeliefert. Außerdem können die eigenen Felder beim Schreiben der Entität gesetzt werden. Ein Beispiel finden Sie hier: Kontakt anlegen
Eigene Felder werden durch ein Dictionary mit folgenden Feldern angegeben:
Feld | Typ | Bedeutung |
Key | Text | Interner Name des eigenen Feldes Der interne Name eines eigenen Feldes wird in der Anlage und Bearbeiten-Maske des eigenen Feldes angezeigt. |
Value | Text | Der Inhalt des eigenen Feldes |
Beispiel JSON Body:
"CustomField":{ "TextFeld":"Mit Inhalt", "ZweitesFeld":"Im zweiten Feld" },
Überblick über die Endpunkte / Aufrufe
HTTP Verb | GET | POST | PUT |
Auflisten aller Datensätze. Abrufen eines einzelnen Datensatzes mit ID. | Anlegen eines neuen Datensatzes. | Ändern eines bestehenden Datensatzes. | |
Kontakte | api/contact api/contact/id | api/contact | api/contact/id |
Kontakt und Ansprechpartner (Web Formular) | api/mixed | ||
Aufträge (Angebote, Rechnungen, ...) | api/order api/order/id | api/order | api/order/id |
Deals | api/deal api/deal/id | api/deal | api/deal/id |
Dokumente | api/document api/document/id | api/document | api/document/id |
Benutzer | api/user api/user/id | ||
Eigene Tabellen | api/customtableentry | api/customtableentry | api/customtableentry/id |
Projekte | api/project api/project/id | api/project | api/project/id |