Zum Hauptinhalt springen

Update Mai 2022 | API

Die FrachtPilot API hilft dir eigene Erweiterungen und Automatisierungen von FrachtPilot zu entwickeln. Du hast damit Zugriff auf fast alle Daten in FrachtPilot und kannst sie auch verändern. So können Daten von und zu anderen Apps oder Shops übertragen werden.

Die FrachtPilot API folgt dem REST-Ansatz und erlaubt die Standard HTTP-Anfragemethoden (GET, POST,  PUT, PATCH und DELETE) und Antwort-Codes. Alle Anfragen werden an https://my.frachtpilot.de/api_v2/ gestellt und alle Antworten geben JSON zurück.

Info:

Hier findest du die FrachtPilot API Dokumentation

Vorbereitung

Info:

Gib uns bitte Bescheid per Mail an support@frachtpilot.de, wenn du die API nutzen möchtest, dann schalten wir dir die API gerne frei.

In der Personalmanagement kannst du nach dem Freischalten Benutzerzugänge zur API anlegen und einen API-Key zur Authentisierung erzeugen. Die Rechte zum Lesen und Bearbeiten von Objekten erfolgt anhand der Rechte des dafür angelegten Benutzers.

Aufgepasst!

Speicher die erzeugten API-Keys sicher ab und gebe niemandem Zugriff darauf.

Wir empfehlen die Vergabe einer E-Mail-Adresse pro API-Schlüssel, damit der API-Schlüssel nur in Kombination mit der E-Mail-Adresse verwendet werden kann.

Authentisierung

Für die Authentisierung wird neben dem API-Schlüssel auch ein CSRF-Token benötigt.

Beispiel in Python:

import hashlib  
from datetime import datetime

import requests

api_key = 'Beispiel-API-Schlüssel1337'
mail = 'name@host.de' # auch ein leerer String möglich, wenn Nutzer keine E-Mail hat

date = datetime.now()
date = date.strftime("%Y-%m-%d")
csrf = mail + '.' + date
csrf_token = hashlib.md5(csrf.encode())

payload = {'X-AUTH-TOKEN': api_key, 'X-CSRF-TOKEN': csrf_token.hexdigest()}
response = requests.get('https://my.frachtpilot.de/api_v2/accounts?page=1', headers=payload)


Hinweise

  • Derzeit gibt es keine Limits für die API. Daher bitten wir darum, schlank zu programmieren und die Anzahl der Requests nur auf die notwendige Anzahl zu beschränken und häufig  benötigte Daten lokal zwischenzuspeichern. Außerdem sollte die Anzahl der parallel ausgeführten Requests niedrig sein.
  • Wir behalten uns vor, Limits für die Anzahl der möglichen Requests einzuführen.
  • Bei schädlicher Nutzung der API behalten wir uns vor, den API-Zugang für das jeweilige System dauerhaft zu deaktivieren.