Implementierung eines Ricloud-Py-Clients
Der ricloud-py- Client ist eine einfache Implementierung der API-Schnittstelle von ricloud v3 . Es enthält auch einige Beispielimplementierungen gängiger Anwendungsfälle und einige grundlegende Implementierungen für das Abrufen von Daten aus Speicher-Buckets von Drittanbietern (AWS S3 und Google Cloud Storage).
Installation
Der Client kann am einfachsten von PyPi aus installiert werden .
pip install ricloud==3.0.0
Sie können den Code auch aus dem GitHub-Repository herunterladen .
Aufbau
Ein key_token
ist erforderlich, um sich bei der API zu authentifizieren. Wenn Sie bereits Kunde sind, wenden Sie sich an den Unternehmens-Support , um einen Testschlüssel für die ricloud v3- API zu erhalten.
ricloud-py kann auf zwei Arten konfiguriert werden:
- Über das
token
Attribut eines importiertenricloud
Moduls.
import ricloud ricloud.token = '<your key_token>'
- Erstellen Sie eine
.ricloud.ini
Datei in Ihrem.ricloud.ini
mit dem folgenden Inhalt.
[api] token = <you key_token>
Weitere .ricloud.ini
Referenz zur Datei .ricloud.ini
.
Verwendungszweck
Der Client stellt eine Klasse für jede API-Ressource und eine Reihe von Methoden zur Interaktion mit ihnen bereit.
>>> import ricloud >>> org = ricloud.Organisation.retrieve() >>> print(org.name) My Organisation >>> org.update(name='Changed Organisation') >>> print(org.name) Changed Organisation
Beispielimplementierungen
Der Client enthält Beispielimplementierungen für eine Reihe gängiger Interaktionen.
Auf diese kann über den Befehl samples
zugegriffen werden
iCloud
Die iCloud-Beispielimplementierung bietet eine schnelle Möglichkeit, Daten von einem iCloud-Konto über die Befehlszeile abzurufen.
Relais neu inkubieren
Das Dienstbeispiel "Relay neu inkubieren" implementiert eine Reihe von Befehlen, die zum Erstellen einer Sitzung, zum Einrichten eines Abonnements und zum manuellen Auslösen von Abfragen erforderlich sind.
Webhook-Endpunkt
Der Client enthält eine einfache Webhook-Endpunktimplementierung, die auf eingehende API-Ereignisbenachrichtigungen wartet und Informationen an die Konsole druckt.
Es wird empfohlen, ein Hilfsprogramm wie ngrok zu verwenden, um Ihren lokalen Endpunkt sicher dem Internet auszusetzen. Standardmäßig ist der Webhook-Endpunkt an den Port 8080 Ihres Computers gebunden.
ngrok http -bind-tls=true 8080
Sie können die Adresse Ihres öffentlich zugänglichen ngrok-Endpunkts in der Zeile Forwarding
anzeigen, z. B. https://abcd1234.ngrok.io
.
Anschließend können Sie den Listener starten, indem Sie den Befehl ricloud event listen
. Wenn Ihr Client korrekt konfiguriert ist, erstellt er automatisch eine Webhook-Konfiguration unter Verwendung der im Befehl angegebenen URL und legt sie als Standard-Webhook-Konfiguration des derzeit verwendeten Schlüssels fest.
ricloud event listen --webhook-url https://abcd1234.ngrok.io
Referenz der .ricloud.ini
Datei
Abschnitt: api
token
Das Token, das zur Authentifizierung anhand der API-Endpunkte verwendet wird.
url
Die Basis-URL für die API. Standardeinstellung: https://ricloud-api.reincubate.com
.
max_retries
Wie oft muss eine Anfrage wiederholt werden, wenn sie aufgrund eines Server- oder Verbindungsfehlers fehlschlägt? Voreinstellung: 3
await_for
Addiert die Ricloud-Await
Header mit dem angegebenen Wert zu dem aktivieren Await Antwortmechanismus. Voreinstellung: 0
Abschnitt: webhooks
secret
Das Webhook-Konfigurationsgeheimnis, das zum Überprüfen der Nutzdaten für eingehende Ereignisbenachrichtigungen verwendet werden soll. Dies wird automatisch festgelegt, wenn die Option --webhook-url
für den Befehl ricloud event listen
.
delta
Die Abweichung, die zwischen dem Zeitpunkt des Sendens und dem Zeitpunkt des Empfangs in Sekunden zulässig ist. Standardeinstellung: 600
Abschnitt: logging
log_level
Abschnitt: samples
output_directory
Das Standardausgabeverzeichnis für alle Ergebnisse, die als Teil eines Beispielskripts heruntergeladen wurden. Wenn der Verzeichnispfad relativ ist, wird er relativ zum aktuellen Arbeitsverzeichnis erstellt.
user_identifier
Der Client erstellt beim Ausführen von Beispielskripten eine Benutzerressource. Der Standardwert für die Benutzerkennung dieses Benutzers ist ricloud-py
, kann jedoch über diese Option einfach angepasst werden.
Dies kann nützlich sein, um beispielsweise die Verwendung zwischen verschiedenen Entwicklern innerhalb derselben Organisation zu unterscheiden.
[api] token = <your key_token> url = https://ricloud-api.reincubate.com max_retries = 1 [logging] log_directory = logs log_level = WARNING [samples] output_directory = output user_identifier = ricloud-py