Zum Hauptinhalt springen

Überblick über die Rently API

Die Rently API ist eine REST-API, mit der Sie externe Systeme an die Plattform zur Verwaltung von Fahrzeugvermietungen anbinden können: Verfügbarkeit suchen und Preise berechnen, Buchungen erstellen und verwalten, Zahlungen erfassen, Übergaben und Rückgaben abwickeln sowie Kunden, Flotte, Vorfälle und Verstöße verwalten.

Diese Seite ist die Einstiegskarte zur Reference: Sie fasst das Wesentliche zusammen (Basis-URL, Authentifizierung, Sprachen) und beschreibt jedes Modul der API mit seinem Zweck.

Basis-URL

Alle Aufrufe erfolgen über HTTPS gegen:

https://{tenant}.rently.com.ar

Die Geschäfts-Endpunkte liegen unter /api (zum Beispiel GET /api/search).

Hinweis

Rently ist mandantenfähig (multi-tenant). Ihre Integration arbeitet stets gegen den Host Ihres Mandanten, der die Organisation identifiziert und an den das Zugriffstoken gebunden ist.

Authentifizierung

Die API verwendet OAuth2 mit Bearer-Tokens: Sie fordern mit Ihren Zugangsdaten ein Token an und senden es bei jeder Anfrage im Header Authorization: Bearer {token}.

# 1. Token anfordern (client_credentials)
curl -X POST https://{tenant}.rently.com.ar/auth/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials" \
-d "client_id={username}" \
-d "client_secret={password}"

Die Antwort enthält access_token, token_type (bearer) und expires_in (das Token ist einen Tag lang gültig). Verwenden Sie dieses Token für die folgenden Aufrufe:

# 2. Einen Endpunkt mit dem Token aufrufen
curl https://{tenant}.rently.com.ar/api/branchoffices \
-H "Authorization: Bearer {token}"
Tipp

Verwenden Sie dasselbe Token bis zu seinem Ablauf wieder, anstatt bei jedem Aufruf ein neues anzufordern. Fehlt das Token, ist es abgelaufen oder gehört es nicht zum Mandanten, antwortet die API mit 401 und gibt im Header WWW-Authenticate die URL des Token-Endpunkts an.

Sprachen

Die API ermittelt die Sprache der Antwort pro Anfrage. Um eine bestimmte Sprache zu erzwingen, fügen Sie den Query-Parameter ?language= hinzu (akzeptiert den vollständigen Kulturnamen, z. B. es-AR, oder den zweistelligen ISO-Code, z. B. es):

curl "https://{tenant}.rently.com.ar/api/categories?language=es-AR" \
-H "Authorization: Bearer {token}"

Wird nichts angegeben, wird die Sprache des Benutzers verwendet, danach die Standardsprache des Mandanten und als letzte Möglichkeit es-AR. Die verfügbaren Sprachen hängen von der Konfiguration des jeweiligen Mandanten ab; Sie können sie mit GET /api/languages und GET /api/languages-info abfragen.

Hinweis

Der Parameter ?language= wirkt sich nur auf API-Anfragen aus; vom Mandanten nicht unterstützte Werte werden ignoriert und die Standard-Vorrangregelung wird angewendet.

Postman und andere Clients

Sie können die gesamte API in Postman, Insomnia, Bruno oder Hoppscotch importieren:

In Postman: Import und die Datei hineinziehen; die Collection wird mit allen Endpunkten erstellt. Konfigurieren Sie die Variable tenant und Ihr Bearer-Token, um mit dem Testen zu beginnen.

In Insomnia / Bruno / Hoppscotch: Importieren Sie die openapi.json direkt.

Module

Die API ist in Module gegliedert. Jedes bündelt die Endpunkte eines funktionalen Bereichs; die Details jeder Operation (Methode, Pfad, Parameter und Beispiele) finden Sie in der Reference.

ModulZweck
PublicApiVerfügbarkeitssuche und Preisberechnung: GET /api/search, GET /api/booking/price und GET /api/booking/additionals-price.
GeneralInformationKataloge und Stammdaten: Filialen, Übergabe-/Rückgabeorte, Kategorien und Modelle, Zusatzleistungen, Währungen, Promotionen, Feiertage, Öffnungszeiten und Sprachen.
BookingsLebenszyklus der Buchung: erstellen (POST /api/booking/book), reservieren (POST /api/booking/reserve), abfragen (GET /api/booking/{bookingId}), stornieren, auflisten sowie Fahrer, Kommentare und Dateien verwalten.
BookingsPaymentsZahlungen zu Buchungen: eine Zahlung erfassen (POST /api/booking/pay), die Zahlungen einer Buchung auflisten und eine Zahlung stornieren.
CustomersApiKundenverwaltung: auflisten (paginiert), erstellen/aktualisieren, per ID oder globalId abfragen, Zahlungsmethoden, Kommentare, Anhänge und Dokumentbilder.
CarsAbfrage der Flotte: ein Fahrzeug abrufen, Fahrzeuge mit Filtern auflisten, ihre Buchungen einsehen, zwischen Filialen umsetzen/transferieren und Dateien verwalten.
OperationsBack-Office-Betrieb: geplante Übergaben und Rückgaben nach Filiale und Datum sowie Abwicklung von Übergabe/Vor-Übergabe und Vor-Rückgabe einer Buchung.
BookingCheckinApiSelf-Check-in des Kunden vor der Übergabe (PUT /api/selfcheckin).
IncidentsVorfälle/Schäden an Fahrzeugen: Typen auflisten, einen Vorfall erfassen und ihm Dateien anhängen.
InfractionsVerkehrsverstöße: zu einer Buchung hinzufügen (POST /api/booking/addinfractions), einziehen/bezahlen, die eines Kunden auflisten und den Bescheid anhängen.
ServicesDienste und Wartung von Fahrzeugen: Servicetypen und Serviceplanung für ein Fahrzeug.
NotificationsE-Mail-Benachrichtigungen: aktive Vorlagen auflisten und Benachrichtigungen über eine Vorlage versenden.
ConfigurationsMandantenkonfiguration: Dokument- und Steuerzahlertypen, Buchungs- und Mail-Konfiguration, Zahlungs-Gateways und -Konten sowie allgemeine Einstellungen.
CommercialAgreementsGeschäftsvereinbarungen, die auf die Preisberechnung angewendet werden.
StorageVerwaltung von Web-Dateien.
Tipp

Beginnen Sie für eine typische Preis- und Buchungsintegration mit PublicApi und GeneralInformation (Katalog + Suche + Preis), fahren Sie mit Bookings und BookingsPayments fort (erstellen und bezahlen) und ergänzen Sie Operations für Übergabe und Rückgabe.

Fehler und Paginierung

Geschäftsfehler antworten mit 400 und einem JSON-Body { "ErrorMessage": "...", "ErrorCode": 1, "Id": "..." }, wobei ErrorCode eine Ganzzahl und Id eine für den Support nützliche Korrelations-ID ist. Die Antworten 403 (nicht authentifiziert oder keine Berechtigung) und 404 (Ressource nicht gefunden) enthalten keinen Body.

Listen verwenden Paginierung mit den Query-Parametern offset (Standard 0) und limit (Standard 30, Maximum 100) und liefern ein Objekt mit Offset, Limit, Total, Results und NextOffset. Um zur nächsten Seite zu gelangen, verwenden Sie das NextOffset der vorherigen Antwort als offset.