Kostenlos testen

API v2 Reference


Die LeitzCloud API basiert auf REST. Unsere API ist so konzipiert, dass sie, um vorhersehbare, ressourcenorientierte URLs zu haben, HTTP-Antwortcodes verwenden können, die API-Fehler anzeigen. Wir verwenden integrierte HTTP-Funktionen, wie z.B. HTTP-Authentifizierung und HTTP-Verben, die von handelsüblichen HTTP-Clients verstanden werden können. JSON wird in allen API Antworten, einschließlich Fehlern, zurückgeschickt.


Voraussetzung

https://<hostname:port>/api/2

Alle Anfragen an die LeitzCloud API müssen über HTTPS Wege erfolgen. Nicht-HTTPS-Anfragen werden abgelehnt.


Rückmeldungen


LeitzCloud verwendet herkömmliche HTTP-Antwortcodes, um den Erfolg oder Misserfolg einer API-Anfrage anzuzeigen. Im Allgemeinen werden Codes im Bereich 2xx verwendet, die einen Erfolg angeben. Codes im Bereich 4xx zeigen einen Fehler an, der sich aus den bereitgestellten Informationen ergibt (d.h. ein erforderlicher Parameter war fehlend oder ungültig, die Anforderung ist fehlerhaft, etc.) und Codes im Bereich von 5xx zeigen einen Fehler mit dem LeitzCloud-Server an.


Zusammenfassung des HTTP Statuscodes

  • 200 OK - Alles hat wie erwartet funktioniert.
  • 304 Not Modified - Die Antwort hat sich seit einer früheren Anfrage nicht geändert.
  • 400 Bad Request - Der Anforderung fehlt ein erforderlicher Parameter, sie enthält einen ungültigen Parameterwert oder ist anderweitig fehlerhaft.
  • 401 Unauthorized - Keine gültige Authentifizierung vorhanden.
  • 403 Forbidden - Die Anfrage wurde abgelehnt, weil der authentifizierte Benutzer keinen Zugriff hat.
  • 404 Not Found - Die angeforderte Ressource ist nicht vorhanden.
  • 405 Method Not Allowed - Es wurde eine ungültige HTTP-Methode (GET, POST, etc.) verwendet.
  • 409 Conflict - Die Anforderung führt zu einem Konflikt mit dem aktuellen Zustand der Ressource.
  • 410 Gone - Die angeforderte Ressource war vorhanden, wurde aber dauerhaft gelöscht.
  • 500, 502, 503, 504 Server errors - Etwas ist am Ende von LeitzCloud schief gelaufen.

JSON

Alle API-Antworten geben ein JSON-Objekt zurück. Aus Gründen der Konsistenz gilt dies auch für den Fall, dass der HTTP-Statuscode den vollen Funktionsumfang beantworten kann. Beispielsweise zeigen einige API-Methoden einfach an, dass sie mit einem HTTP 200-Statuscode erfolgreich waren. In diesen Fällen ist die Antwort wie folgt:

HTTP status code: 200
Response body:
{
    "status": "ok"
}

Ein weiterer Fall ist die Rückgabe eines HTTP 304-Statuscodes, der angibt, dass der Client seine zwischengespeicherte Antwort aus einer früheren Version verwenden sollte. Zum Beispiel:

HTTP status code: 304
Response body:
{
    "status": "not_modified"
}

Genaue Antworten finden Sie in den Details der einzelnen Methoden.


Fehlermeldungen

Im Fall einer Fehlermeldung verwendet die API einen entsprechenden HTTP-Statuscode in der Antwort. JSON gibt eine Angabe der Fehlerart und falls vorhanden, eine lesbare Beschreibung des Fehlers an.

Im Folgenden finden Sie häufige Fehler, die bei der Arbeit mit der API auftreten können:

Ungültige Anfrage

HTTP status code: 400
Response body:
{
    "error": "invalid_request"
}

Zugriff verweigert

HTTP status code: 401
Response body:
{
    "error": "access_denied"
}

Verboten

HTTP status code: 403
Response body:
{
    "error": "forbidden"
}

Nicht gefunden

HTTP status code: 404
Response body:
{
    "error": "not_found"
}

Unbekannter Fehler

HTTP status code: 500
Response body:
{
    "error": "unknown"
}

Der Antrag verwendet einen unsicheren Transport

HTTP status code: 400
Response body:
{
    "error": "insecure_transport",
    "error_description": "Requests MUST utilize https."
}

Der Anforderung fehlt ein erforderlicher Parameter

HTTP status code: 400
Response body:
{
    "error": "invalid_request",
    "error_description": "Missing required parameter: <param>"
}

Die Anfrage enthält einen ungültigen Parameterwert

HTTP status code: 400
Response body:
{
    "error": "invalid_request",
    "error_description": "Invalid value for parameter: <param>"
}

Das Datum ist nicht richtig formatiert

HTTP status code: 400
Response body:
{
    "error": "invalid_date_format",
    "error_description": "Invalid date format. The expected format is: JJJJ-MM-TT"
}

Das Datum/ Die Zeit ist nicht richtig formatiert

HTTP status code: 400
Response body:
{
    "error": "invalid_datetime_format",
    "error_description": "Invalid datetime format. The expected format is: JJJJ-MM-TT SS:MM:SS"
}

Die Lizenz ist abgelaufen

HTTP status code: 403
Response body:
{
    "error": "license_expired"
}

Die Testversion ist abgelaufen

HTTP status code: 403
Response body:
{
    "error": "trial_expired"
}

Fehler, die für bestimmte Methoden spezifisch sind, können in den Methodendetails gefunden werden.


Versionierung

Die wichtigsten API-Versionen werden anhand der Endpunkt-URL ausgewählt. Es ist unsere Absicht, die Abwärtskompatibilität innerhalb eines großen Zeitraums aufrechtzuerhalten, außer wenn es sich um Sicherheitsprobleme handelt. Die verwendete Minor-API-Version kann durch Aufruf der Version Methode festgelegt werden.


Authentifizierung

Sofern nicht anders angegeben, erfordern alle LeitzCloud API-Methoden eine Authentifizierung über OAuth2. Derzeit unterstützt es das Passwort,refresh token grants, mit authorization code und client credential grants, die in naher Zukunft kommen.

Der OAuth2-Anbieter ist nicht spezifisch für eine API-Version. Weitere Informationen zum Erhalten, Aktualisieren und Widerrufen von OAuth2-Zugriffstoken finden Sie unter der OAuth2-Dokumentation.


Allgemein

Fordern Sie ein Token zum Zurücksetzen des Passworts an

POST /api/2/reset_password

Felder

Benötigt
  • E-Mail: Die E-Mail-Adresse des Benutzers, der das Zurücksetzen des Passworts initiiert.
  • destination: Die Ziel-URL, an die der Benutzer gesendet werden soll, um die Passwortzurücksetzung zu bestätigen. Der Domainname der ersten Ebene des Ziels muss entweder mit der Domain in der API-Anfrage oder dem Hostnamen der Organisation des Benutzers übereinstimmen. Es muss auch einen "{token}"-Platzhalter enthalten, der ersetzt wird mit dem generierten Passwortzurücksetzungs Token.
Response
HTTP status code: 200

Bestätigen Sie den Token zum Zurücksetzen des Passworts

Das Bestätigen eines Reset-Tokens gibt neue OAuth2-Zugriffstoken zurück, welche dann verwendet werden können, um das Passwort des Benutzers über die update person methodfestzulegen.

POST /api/2/reset_password/confirm

Felder

Benötigt
  • Token: Der Token zum Zurücksetzen des Passworts
Response
HTTP status code: 200
Response body:
{
    "access_token": "<access_token>",
    "expires_in": 3600,
    "token_type": "Bearer",
    "refresh_token": "<refresh_token>",
    "scope": "full"
}
Errors
Password reset token expired
HTTP status code: 401
Response body:
{
    "error": "password_reset_token_expired"
}

Version

Die Version Methode gibt die genaue API-Version im Format <major>.<minor>.<revision> zurück. Eine Authentifizierung ist nicht erforderlich.

GET /api/2/version

Rückmeldung

HTTP status code: 200
Response body:
{
    "version": "2.0.9"
}

File-System


Root-Objekt

Eigenschaften

  • type string

    "root"

  • id integer

    Der eindeutige Identifikator der Rootdatei

  • name string

    Der Name der Rootdatei

  • path string

    "/"

  • is_locked boolean

    Ob die Rootdatei gesperrt ist

  • root_type string

    Der Typ der Rootdatei: "Synchronisieren", "Teilen" oder "Sichern"

  • space_used integer

    Die Gesamtgröße der Rootdatei in Bytes

  • space_used_formatted string

    Die Gesamtgröße der Rootdatei in menschengerechter Formatierung

  • children list

    Eine Liste von unter/ child- Dateien und Ordnern

  • permissions list

    Eine Liste der Berechtigungen des authentifizierten Benutzers auf der Rootdatei

  • hash string

    Ein Hash der Root-Metadaten, die für das Ergebnis-Caching verwendet werden

Beispiel
{
    "children": [
        ...child files and folders...
    ],
    "hash": "<hash>",
    "id": 1,
    "is_locked": false,
    "name": "Example Files",
    "path": "/",
    "permissions": [
        "FILE_VIEW",
        "FILE_READ",
        "FILE_WRITE"
    ],
    "root_type": "sync",
    "space_used": 10000,
    "space_used_formatted": "10k",
    "type": "root"
}

Datei/ File-Objekt2

Eigenschaften

  • type string

    "file"

  • id integer

    Die eindeutige Kennung der Datei

  • revision_id integer

    Die eindeutige Revisionskennung der Datei

  • root_id integer

    Der Bezeichner der Rootdatei, die die Datei enthält

  • name string

    Der Dateiname

  • path string

    Der absolute Pfad der Datei innerhalb des Root-/ Stammverzeichnisses

  • is_deleted boolean

    Ob die Datei gelöscht wird

  • created string

    Datum und Uhrzeit in UTC, zu dem die Datei im Format JJJJ-MM-TT SS:MM:SS erstellt wurde

  • modified string

    Datum Uhrzeit in UTC, in dem die Datei zuletzt im Format JJJJ-MM-TT SS:MM:SS geändert wurde

  • size integer

    Die Größe der Datei in Bytes

  • size_formatted string

    Die Größe der Datei in menschengerechter Formatierung

  • is_locked boolean

    Ob die Datei gesperrt ist

  • permissions list

    Eine Liste der Berechtigungen des authentifizierten Benutzers für die Datei

  • ancestors list

    Eine Liste der Versionen der Datei in aufsteigender Reihenfolge. Je nach Kontext kann der erste Eintrag das Stammobjekt der obersten Ebene sein.

Beispiel
{
    "created": "2015-01-01T01:02:03",
    "id": 1,
    "is_deleted": false,
    "is_locked": false,
    "modified": "2015-01-01T02:03:04",
    "path": "/path/to/file.ext",
    "permissions": [
        "FILE_VIEW",
        "FILE_READ",
        "FILE_WRITE"
    ],
    "revision_id": 1,
    "root_id": 1,
    "size": 12205,
    "size_formatted": "11.92k",
    "type": "file"
}

Ordner-Objekt

Eigenschaften

  • type string

    "folder"

  • id integer

    Die eindeutige Kennung des Ordners

  • root_id integer

    Der Bezeichner der Rootdatei, die den Ordner enthält

  • path string

    Der absolute Pfad des Ordners innerhalb des Stammverzeichnisses

  • is_deleted boolean

    Ob der Ordner gelöscht wird

  • is_locked boolean

    Ob der Ordner gesperrt ist

  • children list

    Eine Liste von untergeordneten Dateien und Ordnern

  • permissions list

    Eine Liste der Berechtigungen des authentifizierten Benutzers für den Ordner

  • hash string

    Ein Hash der Ordnermetadaten, die für das Ergebnis-Caching verwendet werden

  • ancestors list

    Eine Liste der Versionen der Datei in aufsteigender Reihenfolge. Je nach Kontext kann der erste Eintrag das Stammobjekt der obersten Ebene sein

Beispiel
{
    "children": [
        ...child files and folders...
    ],
    "hash": "<hash>",
    "id": 1,
    "is_deleted": false,
    "is_locked": false,
    "path": "/path/to/name",
    "permissions": [
        "FILE_VIEW",
        "FILE_READ",
        "FILE_WRITE"
    ],
    "root_id": 1,
    "type": "folder"
}

Revisions - Objekt

Eigenschaften

  • type string

    "revision"

  • id integer

    Der einzigartige Identifikator der Revision

  • file_id integer

    Der einzigartige Identifikator der Datei

  • root_id integer

    Der Identifikator des Stamms, der die Revision enthält

  • created string

    Das Datum/Uhrzeit in UTC, an dem die Revision erstellt wurde, ist im Format YYYY-MM-DDTHH:MM:SS

  • modified string

    Das Datum/Uhrzeit in UTC, an dem die Revision zuletzt bearbeitet wurde, ist im Format YYYY-MM-DDTHH:MM:SS

  • full_size integer

    Die Größe der vollständigen Image-Datei der Revision, falls möglich, in Byte

  • full_size_formatted string

    Die Größe der vollständigen Bilddatei der Revision, falls möglich, in benutzerfreundlicher Formatierung

  • delta_size integer

    Die Größe der Delta-Bilddatei der Revision, falls möglich, in Byte

  • delta_size_formatted string

    Die Größe der Delta-Bilddatei der Revision, falls möglich, in benutzerfreundlicher Formatierung

  • file_size integer

    Die Größe der Bilddatei zum Zeitpunkt dieser Revision in Byte

  • file_size_formatted string

    Die Größe der Bilddatei zum Zeitpunkt dieser Revision in benutzerfreundlicher Formatierung

Beispiel
{
    "created": "2019-12-05T14:12:11",
    "delta_size": 4096,
    "delta_size_formatted": "4.00 KB",
    "file_id": 1953,
    "file_size": 14679,
    "file_size_formatted": "14.33 KB",
    "full_size": 11200,
    "full_size_formatted": "10.94 KB",
    "id": 3747,
    "modified": "2019-12-05T14:12:11",
    "root_id": 1,
    "type": "revision"
}

Root-Space Nutzungs Objekt

Eigenschaften

  • type string

    "root_space_usage"

  • del_file_count integer

    Anzahl der gelöschten Dateien

  • del_revision_count integer

    Anzahl der gelöschten Revisionen

  • deleted_size integer

    Platzverbrauch der gelöschten Dateien in Bytes

  • deleted_size_formatted string

    Platzverbrauch der gelöschten Dateien in einer benutzerfreundlichen Formatierung

  • file_count integer

    Gesamtzahl der Dateien

  • head_size integer

    Speicherverbrauch von nicht gelöschten Dateien in Bytes

  • head_size_formatted string

    Platzverbrauch von nicht gelöschten Dateien in einer benutzerfreundlichen Formatierung

  • physical_size integer

    Gesamter Platzbedarf in Bytes

  • physical_size_formatted string

    Gesamter Platzbedarf in menschengerechter Formatierung

  • revision_count integer

    Anzahl der Revisionen

  • revision_size integer

    Platzverbrauch von Revisionen in Bytes

  • revision_size_formatted string

    Platzverbrauch von Revisionen in menschengerechter Formatierung

  • root_count integer

    Die Gesamtzahl der Roots, die in den Nutzungskennzahlen enthalten sind

Beispiel
{
    "del_file_count": 5,
    "del_revision_count": 5,
    "deleted_size": 395168,
    "deleted_size_formatted": "385.91 KB",
    "file_count": 504,
    "head_size": 41533273,
    "head_size_formatted": "39.61 MB",
    "physical_size": 43199769,
    "physical_size_formatted": "41.20 MB",
    "revision_count": 2275,
    "revision_size": 1271328,
    "revision_size_formatted": "1.21 MB",
    "root_count": 21,
    "type": "root_space_usage"
}

Datei-Methoden

Datei-Metadaten abrufen

GET /api/2/files/<root_id>/<file_id>
Query Parameters
  • include_ancestors: ob die Dateiberechtigungen des Benutzers in die Antwort aufgenommen werden sollen. "true" oder "false". Voreinstellung "false".
  • include_permissions: ob die Dateiberechtigungen des Benutzers in die Antwort aufgenommen werden sollen. "true" or "false". Standard "false".
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a file object...
}

Herunterladen einer Datei

GET /api/2/files/<root_id>/<file_id>/download
GET /api/2/files/<root_id>/<file_id>/view

Ob die Datei über den download Endpunkt oder den view Endpunkt heruntergeladen wird, bestimmt die Content-Disposition in der Antwort -- attachment oder inline.

Rückmeldung
HTTP status code: 200
Response body:
<binary file data>

Freigeben einer Datei

POST /api/2/files/<root_id>/<file_id>/share
POST Fields
  • login_required: ob sich Benutzer anmelden müssen, um auf die Freigabe zuzugreifen. "true" oder "false". Standard "false".
  • expires: ein Datum im Format JJJJJ-MM-TT, an dem die Freigabe verfällt. Standardmäßig ist kein Ablaufdatum voreingestellt.
  • subscribers: eine durch Kommata getrennte Liste der Abonnenten nach E-Mail-Adresse.
  • notify_subscribers: "true" oder "false". Voreinstellung "false".
  • download_limit: die Gesamtzahl der Downloads, die für die Freigabe erlaubt sind. Die Standardeinstellung ist unbegrenzt.
  • download_notify: ob Sie über Downloads informiert werden möchten. "true" oder "false". Standard "false".
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a file share link object...
}

Umbenennen einer Datei

POST /api/2/files/<root_id>/<file_id>/rename
POST Fields
  • name: der neue Dateiname Benötigt.
Fehlermeldungen
Ungültiger Dateiname
HTTP status code: 400
Response body:
{
    "error": "invalid_name"
}
Ungültige Dateiextension
HTTP status code: 400
Response body:
{
    "error": "invalid_extension"
}
Eine Datei mit dem gleichen Namen existiert bereits
HTTP status code: 409
Response body:
{
    "error": "name_conflict"
}

Verschieben einer Datei

POST /api/2/files/<root_id>/<file_id>/move
POST Fields
  • to_folder_id: die ID des Zielordners. Um zum Stammverzeichnis zu gelangen, lassen Sie diesen Parameter weg.
Fehlermeldungen
Eine Datei mit dem gleichen Namen existiert bereits im Ziel
HTTP status code: 409
Response body:
{
    "error": "name_conflict"
}

Sperren einer Datei

POST /api/2/files/<root_id>/<file_id>/lock
POST Fields
  • duration: the number of minutes after which the lock will be automatically released.
Rückmeldung
HTTP status code: 200

Entsperren einer Datei

POST /api/2/files/<root_id>/<file_id>/unlock
Response
HTTP status code: 200

Löschen einer Datei

POST /api/2/files/<root_id>/<file_id>/delete
Rückmeldung
HTTP status code: 200

Zeige Dateirevisionen

GET /api/2/files/<root_id>/<file_id>/revisions
Query Parameters
  • include_related: ob alle Revisionen einer Dateien eingeschlossen werden sollen, die denselben Pfad wie die angegebene Datei haben (d. h. alle Revisionen, die die angegebene Datei bei einer Wiederherstellung ersetzen würden). "richtig oder falsch". Der Standardwert ist "falsch".
  • page: die Ergebnisseite, um zurückzukehren: max_page. Standard: 1.
  • page_size: die Anzahl der Ergebnisse, die pro Seite zurückgegeben werden sollen: 1 bis 100. Standard 20..
Rückmeldung
HTTP status code: 200
Response body:
{
    "page": 1,
    "page_size": 20,
    "max_page": 3,
    "results": [
        ...up to page_size revision objects...
    ],
    "total": 42
}
  • page: die im Methodenaufruf angegebene Seite oder 1.
  • page_size: die im Methodenaufruf angegebene page_size oder 20.
  • max_page: die Gesamtzahl der Ergebnisseiten.
  • results: eine Liste von Revisionsobjekten.
  • total: die Gesamtzahl der verfügbaren Ergebnisdatensätze.

Meta - Revisonsdaten abrufen

GET /api/2/files/<root_id>/<file_id>/revisions/<revision_id>
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a revision object...
}

Revisionen herunterladen

GET /api/2/files/<root_id>/<file_id>/revisions/<revision_id>/download
GET /api/2/files/<root_id>/<file_id>/revisions/<revision_id>/view
Rückmeldung
HTTP status code: 200
Response body:
<binary file data>

Ob die Revision über den Endpunkt download oder den Endpunkt view heruntergeladen wird, bestimmt die Content-Disposition in der Antwort -- Anhang bzw. inline.


Ordner-Methode


Ordner-Metadaten abrufen

GET /api/2/files/<root_id>/folder/<folder_id>
Query Parameters
  • include_children: ob die untergeordneten Elemente des Ordners in die Antwort einbezogen werden sollen. "true" oder "false". Standard "true".
  • include_deleted: ob gelöschte untergeordnete Elemente in die Antwort einbezogen werden sollen. "true" oder "false". Standard "true".
  • include_lock_info: ob Sperrinformationen in die Antwort aufgenommen werden sollen. "true" oder "false". Standard "true".
  • include_permissions: ob die Datei- und Ordnerrechte des Benutzers in die Antwort aufgenommen werden sollen. "true" oder "false". Standard "false".
  • hash: der Hash-Wert, der beim letzten Aufruf dieser Methode zurückgegeben wurde. Nur verwendet, wenn include_children "true" ist.
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a folder object...
}

Children ist eine Liste von Datei- und Ordnermetadatenobjekten innerhalb des Ordners. Sie ist nur vorhanden, wenn include_children "true" ist.

Der hash Wert eine Signatur für die Antwortdaten darstellt. Wenn der Hash-Wert in der Antwort identisch mit dem vom Client übergebenen Hash-Wert ist, dann wird HTTP 304 Not Modified zurückgegeben. Hash ist nur vorhanden wenn include_children "true" ist.


Metadaten für einen Children-Folder abrufen

GET /api/2/files/<root_id>/folder/<folder_id>/children

Gibt Metadaten für die unmittelbaren untergeordneten Elemente eines Ordners mit Optionen zum Sortieren und Paginieren zurück.

Query Parameters
  • include_deleted: ob gelöschte Kinder in die Antwort aufgenommen werden sollen. "richtig oder falsch". Standardwert "wahr".
  • include_lock_info: ob Sperrinformationen in die Antwort aufgenommen werden sollen. "richtig oder falsch". Standardwert "wahr".
  • include_permissions: ob die Datei- und Ordnerberechtigungen des Benutzers in die Antwort aufgenommen werden sollen. "richtig oder falsch". Standardwert "falsch".
  • sort_by: das Feld, nach dem sortiert werden soll: "name", "modified", oder "size". Standardwert "name".
  • sort_order: die Sortierrichtung: "asc" oder "desc". Standard "asc".
  • page: die Ergebnisseite, um zurückzukehren: 1 bismax_page. Standardwert 1.
  • page_size: die Anzahl der Ergebnisse, die pro Seite zurückgegeben werden sollen: 1 zu 100. Standardwert 20.
Rückmeldung
HTTP status code: 200
Response body:
{
    "page": 1,
    "page_size": 20,
    "max_page": 3,
    "results": [
        ...up to page_size file and folder objects...
    ],
    "total": 42
}

Eine Datei in einen Ordner hochladen

POST /api/2/files/<root_id>/folder/<folder_id>/upload
POST Fields
  • file: Benötigt.
Rückmeldung
HTTP status code: 200
Response body:
{
    ...file metadata...
}
Fehlermeldungen
Keine Datei empfangen
HTTP status code: 400
Response body:
{
    "error": "no_file_received",
    "error_description": "Missing required file: file"
}
Datei aufgrund von Unternehmensrichtlinien abgelehnt
HTTP status code: 409
Response body:
{
    "error": "policy_error"
}
Ungültiger Dateiname
HTTP status code: 400
Response body:
{
    "error": "invalid_name"
}
Ungültige Dateiendung
HTTP status code: 400
Response body:
{
    "error": "invalid_extension"
}
Eine Datei mit dem gleichen Namen existiert bereits
HTTP status code: 409
Response body:
{
    "error": "name_conflict"
}

Erstellen eines Unterordners

POST /api/2/files/<root_id>/folder/<folder_id>/create_folder
POST Fields
  • name: Der neue Ordnername. Benötigt.
Rückmeldung
HTTP status code: 200
Response body:
{
    ...folder metadata...
}
Fehlermeldungen
Ungültiger Ordnername
HTTP status code: 400
Response body:
{
    "error": "invalid_name"
}
Der Ordnername ist zu lang
HTTP status code: 400
Response body:
{
    "error": "name_too_long"
}
Ein Ordner mit dem gleichen Namen existiert bereits
HTTP status code: 409
Response body:
{
    "error": "name_conflict"
}

Herunterladen eines Ordners

GET /api/2/files/<root_id>/download
GET /api/2/files/<root_id>/folder/<folder_id>/download
Query Parameters
Optional
  • file_ids: eine durch Kommas getrennte Liste von Datei-IDs, die in den Download eingeschlossen werden sollen. Diese müssen direkte untergeordnete Elemente der in der Anforderung angegebenen Ressource sein.
  • folder_ids: eine durch Kommas getrennte Liste von Ordner-IDs, die in den Download eingeschlossen werden sollen. Diese müssen direkte untergeordnete Elemente der in der Anforderung angegebenen Ressource sein.

Wenn entweder file_ids oder folder_ids präsent ist, enth#lt der Download nur die angegebenen Elemente.

Rückmeldung
HTTP status code: 200
Response body:
<binary zip file data>

Freigeben eines Ordners

POST /api/2/files/<root_id>/folder/<folder_id>/share
POST Fields
  • login_required: ob sich Benutzer anmelden müssen, um auf die Freigabe zuzugreifen. "true" oder "false". Voreinstellung "false".
  • expires: ein Datum im Format JJJJ-MM-TT in der die Freigabe verfällt. Standardwert ist kein Ablaufdatum.
  • subscribers: eine kommagetrennte Liste der Abonnenten nach E-Mail-Adresse.
  • notify_subscribers: "true" oder "false". Voreinstellung "false".
  • download_limit: die Gesamtzahl der Downloads, die für die Freigabe erlaubt sind. Standardwerte sind unbegrenzt.
  • download_notify: ob Sie über Downloads informiert werden möchten. "true" oder "false". Voreinstellung "false".
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a folder share link object...
}

Umbenennen eines Ordners

POST /api/2/files/<root_id>/folder/<folder_id>/rename
POST Fields
  • name: Der neue Ordnername. Benötigt.
Fehlermeldungen
Ungültiger Ordnername
HTTP status code: 400
Response body:
{
    "error": "invalid_name"
}
Der Ordnername ist zu lang
HTTP status code: 400
Response body:
{
    "error": "name_too_long"
}
Ein Ordner mit dem gleichen Namen existiert bereits
HTTP status code: 409
Response body:
{
    "error": "name_conflict"
}

Verschieben eines Ordners

POST /api/2/files/<root_id>/folder/<folder_id>/move
POST Fields
  • to_folder_id: die ID des Zielordners. Um zur Root zu gelangen, lassen Sie diesen Parameter weg.
Fehlermeldungen
Ein Ordner mit dem gleichen Namen existiert bereits im Ziel
HTTP status code: 409
Response body:
{
    "error": "name_conflict"
}

Sperren eines Ordners

POST /api/2/files/<root_id>/folder/<folder_id>/lock
POST Fields
  • duration: die Anzahl der Minuten, nach denen die Sperre automatisch freigegeben wird.
Rückmeldung
HTTP status code: 200

Entsperren eines Ordners

POST /api/2/files/<root_id>/folder/<folder_id>/unlock
Rückmeldung
HTTP status code: 200

Löschen eines Ordners

POST /api/2/files/<root_id>/folder/<folder_id>/delete
Rückmeldung
HTTP status code: 200

Root-Methoden


Root-Metadaten abrufen

GET /api/2/files/<root_id>
Query Parameter
  • include_children: ob die "children" der Root in die Antwort einbezogen werden sollen. "true" oder "false". Voreinstellung " true".
  • include_deleted: ob gelöschte Untere/ children in die Antwort einbezogen werden sollen. "true" oder "false". Voreinstellung " true".
  • include_lock_info: ob Sperrinformationen in die Antwort aufgenommen werden sollen. "true" oder "false". Voreinstellung " true".
  • include_permissions: ob die Stamm-, Datei- und Ordnerberechtigungen des Benutzers in die Antwort aufgenommen werden sollen. "true" oder "false". Standard "false".
  • Hash: der Hash-Wert, der beim letzten Aufruf dieser Methode zurückgegeben wurde. Nur verwendet, wenn include_children "true" ist.
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a root object...
}

Mögliche Werte für root_type sind "sync", "share", und "backup".

Children ist eine Liste von Datei- und Ordnermetadatenobjekten auf der obersten Ebene des Root. Sie ist nur vorhanden, wenn include_children "true" ist.

Der hash Wert stellt eine Signatur für die Antwortdaten dar. Wenn der Hash-Wert in der Antwort identisch mit dem vom Client übergebenen Hash-Wert wäre, dann wird HTTP 304 Not Modified zurückgegeben. Hash ist nur vorhanden wenn include_children "true" ist.

HTTP status code: 304

Metadaten für die Kinder eines Stammverzeichnisses abrufen

GET /api/2/files/<root_id>/children

Gibt Metadaten für die unmittelbaren untergeordneten Elemente einer Wurzel mit Optionen zum Sortieren und Paginieren zurück.

Query Parameters
  • include_deleted: ob gelöschte Kinder in die Antwort aufgenommen werden sollen. "richtig oder falsch". Standardwert "wahr".
  • include_lock_info: ob Sperrinformationen in die Antwort aufgenommen werden sollen. "richtig oder falsch". Standardwert "wahr".
  • include_permissions: ob die Datei- und Ordnerberechtigungen des Benutzers in die Antwort aufgenommen werden sollen. "richtig oder falsch". Standardwert "falsch".
  • sort_by: das Feld, nach dem sortiert werden soll: "name", "modified" oder "size". Standard "Name".
  • sort_order:die Sortierrichtung: "asc" oder "desc". Standard "asc".
  • page: die Ergebnisseite, um zurückzukehren: 1 bis max_page. Standardwert 1.
  • page_size: die Anzahl der Ergebnisse, die pro Seite zurückgegeben werden sollen: 1 bis 100. Standardwert 20.
Rückmeldung
HTTP status code: 200
Response body:
{
    "page": 1,
    "page_size": 20,
    "max_page": 3,
    "results": [
        ...up to page_size file and folder objects...
    ],
    "total": 42
}

Eine Datei in eine Root hochladen

POST /api/2/files/<root_id>/upload
POST Fields
  • file: Benötigt.
Rückmeldung
HTTP status code: 200
Response body:
{
    ...file metadata...
}
Fehlermeldungen
Keine Datei empfangen
HTTP status code: 400
Response body:
{
    "error": "no_file_received",
    "error_description": "Missing required file: file"
}
Datei aufgrund von Unternehmensrichtlinien abgelehnt
HTTP status code: 409
Response body:
{
    "error": "policy_error"
}
Ungültiger Dateiname
HTTP status code: 400
Response body:
{
    "error": "invalid_name"
}
Ungültige Dateiextension
HTTP status code: 400
Response body:
{
    "error": "invalid_extension"
}
Eine Datei mit dem gleichen Namen existiert bereits
HTTP status code: 409
Response body:
{
    "error": "name_conflict"
}

Erstellen eines Ordners in einem Stammverzeichnis

POST /api/2/files/<root_id>/create_folder
POST Fields
  • name: Der neue Ordnername. Benötigt.
Rückmeldung
HTTP status code: 200
Response body:
{
    ...folder metadata...
}
Fehlermeldungen
Ungültiger Ordnername
HTTP status code: 400
Response body:
{
    "error": "invalid_name"
}
Der Ordnername ist zu lang
HTTP status code: 400
Response body:
{
    "error": "name_too_long"
}
Ein Ordner mit dem gleichen Namen existiert bereits
HTTP status code: 409
Response body:
{
    "error": "name_conflict"
}

Dateien und Ordner durchsuchen

GET /api/2/files/<root_id>/search
Query Parameter
  • q: der Suchbegriff. Benötigt.
Rückmeldung
HTTP status code: 200
Response body:
{
    "results": [
        ...file and folder metadata...
    ]
}

Liste zuletzt geänderten Dateien

GET /api/2/files/<root_id>/modified_since
Query Parameter
  • since: Datum/Uhrzeit in UTC im Format JJJJ-MM-TT SS:MM:SS. Erforderlich
  • include_deleted: "true" oder "false". Standard "true".
Rückmeldung
HTTP status code: 200
Response body:
{
    "results": [
        ...file metadata...
    ]
}

Sperren einer Root

POST /api/2/files/<root_id>/lock
POST Fields
  • duration: die Anzahl der Minuten, nach denen die Sperre automatisch aufgehoben wird.
Rückmeldung
HTTP status code: 200

Freischalten einer Root

POST /api/2/files/<root_id>/unlock
Rückmeldung
HTTP status code: 200

Fehlermeldungen


Die folgenden Fehler können für jede Dateisystemmethode auftreten und sind in den Methodenbeschreibungen nicht ausdrücklich erwähnt.


Authentifizierter Benutzer hat keinen Zugriff auf das Stammverzeichnis

HTTP status code: 403
Response body:
{
    "error": "forbidden"
}

Stamm, Ordner oder Datei existiert nicht

HTTP status code: 404
Response body:
{
    "error": "not_found"
}

Stamm, Ordner oder Datei ist gesperrt

HTTP status code: 409
Response body:
{
    "error": "resource_locked"
}

Stamm ist nicht mehr zugänglich, da er gelöscht wurde

HTTP status code: 410
Response body:
{
    "error": "root_deleted",
    "error_description": "Root was previously deleted."
}

Der Dateiserver ist besetzt oder vorübergehend nicht verfügbar

HTTP status code: 503
Response body:
{
    "error": "temporarily_unavailable",
    "error_description": "Service is temporarily unavailable.""
}

Organisation


Organisations-Objekt

Ein Unternehmen repräsentiert eine Sammlung von Personen, Maschinen, Roots und anderen Kinderorganisationen. Zugriffskontrolle, Richtlinien und die meisten Systemeinstellungen werden auf Unternehmensebene angewendet.

Eigenschaften

  • type string

    "organisation"

  • id integer

    Der eindeutige Identifikator für das Unternehmen

  • parent_id integer

    Die eindeutige Kennung der übergeordneten Organisation

  • name string

    Der Name der Organisation

  • slug string

    Der URL-freundliche Name des Unternehmens

  • description string

    Eine Beschreibung des Unternehmens

  • email string

    Die Kontakt-Email-Adresse des Unternehmens

  • hostname string

    Der Hostname, den die Agenten Ihrer Organisation für die Verbindung verwenden

  • policy object

    Ein Richtlinien Objekt

  • created string

    Datum/Uhrzeit in UTC, in dem das Unternehmen im Format JJJJ-MM-TT SS:MM:SS angelegt wurde.

  • email_server_id integer

  • bandwidth_throttle integer

  • throttle_exception_start string

  • throttle_exception_end string

  • throttle_exception_dow list of integers

  • throttle_exception_days string

  • throttle_exception_throttle integer

  • throttled boolean

    Ob die Bandbreitenbegrenzung für das Unternehmen aktiviert ist

  • active boolean

    Ob das Unternehmen aktiv ist

  • plan_id integer

  • trial_until string

    Datum/Uhrzeit in UTC der Testphase des Unternehmens läuft im Format JJJJJ-MM-TT SS:MM:SS ab

  • subscription_uuid string

  • share_disclaimer string

  • default_encryption integer

  • email_templates boolean

  • privacy_mode boolean

    Ob der Privatsphärenmodus für das Unternehmen aktiviert ist

Beispiel
{
    "active": true,
    "bandwidth_throttle": null,
    "created": "2013-10-08T05:45:40",
    "default_encryption": 1,
    "description": "",
    "email": "organization@example.com",
    "email_server_id": null,
    "email_templates": false,
    "hostname": "",
    "id": 2,
    "name": "Example Organization",
    "parent_id": 1,
    "plan_id": null,
    "policy": {
        ...a policy object...
    },
    "privacy_mode": false,
    "share_disclaimer": null,
    "slug": "example-organization",
    "subscription_uuid": null,
    "throttle_exception_days": null,
    "throttle_exception_dow": null,
    "throttle_exception_end": null,
    "throttle_exception_start": null,
    "throttle_exception_throttle": null,
    "throttled": false,
    "trial_until": null,
    "type": "organization"
}

Richtlinien-Objekt

Eigenschaften

  • type string

    "policy"

  • company_id integer

    Der Identifikator des Unternehmens, zu dem die Richtlinie gehört

  • ad_enabled boolean

  • admin_browse_files boolean

    Ob Administratoren Dateien durchsuchen können

  • admin_browse_remote boolean

    Ob Administratoren Remote-Dateien anzeigen können

  • admin_create_users boolean

    Ob Administratoren Benutzer anlegen können

  • backups_enabled boolean

    Ob Backups aktiviert sind

  • branding_enabled boolean

    Ob benutzerdefiniertes Branding aktiviert ist

  • change_password_frequency

  • deactivate_token_frequency

  • excluded_extensions string

    Eine kommagetrennte Liste von Dateierweiterungen, die nicht hochgeladen werden dürfen

  • file_server_enabled boolean

  • locked_extensions string

    Eine kommagetrennte Liste von Dateierweiterungen

  • max_file_size integer

    Die maximale hochgeladene Dateigröße in XX

  • monthly_cost_cents integer

  • monthly_cost_currency string

  • num_orgs_maximum integer

    Die maximal zulässige Anzahl von Unterorganisationen

  • num_users_maximum integer

    Die maximal zulässige Anzahl von Benutzern

  • num_users_minimum integer

    Die minimal zulässige Anzahl von Benutzern

  • psa_enabled boolean

    Ob die PSA-Integration aktiviert ist

  • purge_deleted boolean

    Ob gelöschte Dateien automatisch gelöscht werden

  • purge_deleted_frequency

    Die Häufigkeit, mit der gelöschte Dateien automatisch gelöscht werden

  • require_mobile_lock boolean

    Ob mobile App-Benutzer eine PIN-Verriegelung verwenden müssen

  • require_two_step_auth boolean

    Ob Benutzer aufgefordert werden, eine zweistufige Verifizierung zu aktivieren

  • secure_shares boolean

    Ob Benutzer aufgefordert werden, eine zweistufige Verifizierung zu aktivieren

  • service_plans_enabled boolean

  • space_quota integer

    Der maximale Raum, der von dem Unternehmen genutzt werden darf

  • space_quota_formatted integer

    Der maximale Platz, der von dem Unternehmen in menschenfreundlicher Form genutzt werden darf

  • trial_length_days integer

  • trim_revisions boolean

    Ob Dateirevisionen automatisch abgeschnitten/ getrimmt werden

  • trim_revisions_x

  • user_create_backups boolean

    Ob es Benutzern erlaubt ist, Backup-Roots zu erstellen

  • user_create_shares boolean

    Ob Benutzer Dateien freigeben dürfen

  • user_lock_files boolean

    Ob Benutzer Dateien sperren dürfen

  • user_purge_deleted boolean

    Ob es Benutzern erlaubt ist, gelöschte Dateien unwiderruflich zu löschen

  • user_trim_revisions boolean

    Ob es Benutzern erlaubt ist, Dateirevisionen zu trimmen

  • webdav_enabled boolean

    Ob der WebDAV-Zugriff aktiviert ist

Beispiel
{
    "ad_enabled": true,
    "admin_browse_files": true,
    "admin_browse_remote": true,
    "admin_create_users": true,
    "backups_enabled": true,
    "branding_enabled": true,
    "change_password_frequency": null,
    "company_id": 2,
    "deactivate_token_frequency": "",
    "excluded_extensions": ".$$,.$db,.113,.3g2,.3gp,.3gp2,.3gpp,.3mm,.a,.abf,.abk,.afm,.ani,.ann,.asf,.avi,.avs,.bac,.bak,.bck,.bcm,.bdb,.bdf,.bkf,.bkp,.bmk,.bsc,.bsf,.cab,.cf1,.chm,.chq,.chw,.cnt,.com,.cpl,.cur,.dev,.dfont,.dll,.dmp,.drv,.dv,.dvd,.dvr,.dvr-ms,.eot,.evt,.exe,.ffa,.ffl,.ffo,.ffx,.flc,.flv,.fnt,.fon,.ftg,.fts,.fxp,.gid,.grp,.hdd,.hlp,.hxi,.hxq,.hxr,.hxs,.ico,.idb,.idx,.ilk,.img,.inf,.ini,.ins,.ipf,.iso,.isp,.its,.jar,.jse,.kbd,.kext,.key,.lex,.lib,.library-ms,.lnk,.log,.lwfn,.m1p,.m1v,.m2p,.m2v,.m4v,.mem,.mkv,.mov,.mp2,.mp2v,.mp4,.mpe,.mpeg,.mpg,.mpv,.mpv2,.msc,.msi,.msm,.msp,.mst,.ncb,.nt,.nvram,.o,.obj,.obs,.ocx,.old,.ost,.otf,.pch,.pf,.pfa,.pfb,.pfm,.pnf,.pol,.pref,.prf,.prg,.prn,.pvs,.pwl,.qt,.rdb,.reg,.rll,.rox,.sbr,.scf,.scr,.sdb,.shb,.suit,.swf,.swp,.sys,.theme,.tivo,.tmp,.tms,.ttc,.ttf,.v2i,.vbe,.vga,.vgd,.vhd,.video,.vmc,.vmdk,.vmsd,.vmsn,.vmx,.vxd,.win,.wpk",
    "file_server_enabled": false,
    "locked_extensions": ".doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.txt,.xlsb,.xlsm,.csv,.docm,.dotx,.dotm,.pub,.wpd,.odt,.ott,.oth,.odm,.ots,.odp,.odg,.otp,.odf,.oxt,.odc,.ods,.vdx,.vsx,.vtx,.one",
    "max_file_size": 1,
    "monthly_cost_cents": 0,
    "monthly_cost_currency": "",
    "num_orgs_maximum": 10,
    "num_users_maximum": 0,
    "num_users_minimum": 0,
    "psa_enabled": true,
    "purge_deleted": false,
    "purge_deleted_frequency": "",
    "require_mobile_lock": true,
    "require_two_step_auth": false,
    "secure_shares": false,
    "service_plans_enabled": false,
    "space_quota": "1073741824",
    "trial_length_days": 30,
    "trim_revisions": false,
    "trim_revisions_x": "",
    "type": "policy",
    "user_create_backups": true,
    "user_create_shares": true,
    "user_lock_files": true,
    "user_purge_deleted": false,
    "user_trim_revisions": false,
    "webdav_enabled": true
}

Nutzungsobjekt der Organisation

Eigenschaften

Beispiel
{
    "backup_space_usage": {
        ...a root space usage object...
    },
    "counts": {
        ...an organization usage counts object...
    },
    "team_share_space_usage": {
        ...a root space usage object...
    },
    "total_space_usage": {
        ...a root space usage object...
    },
    "type": "organization_usage",
    "user_space_usage": {
        ...a root space usage object...
    }
}

Organizations Nutzungszähler Objekt

Eigenschaften

  • type string

    "organization_usage_counts"

  • accounts integer

    Gesamtzahl der Konten

  • admin_accounts integer

    Anzahl der Admin-Konten

  • groups integer

    Anzahl der Gruppen

  • guests integer

    Anzahl der Gäste

  • machines integer

    Anzahl der Maschinen

  • organizations integer

    Anzahl der Unternehmen

Beispiel
{
    "accounts": 11,
    "admin_accounts": 5,
    "groups": 8,
    "guests": 4,
    "machines": 6,
    "organizations": 7,
    "type": "organization_usage_counts"
}

Organisations-Methoden

Eine Organisation erstellen

GET /api/2/organization/<organization_id>
GET /api/2/organization/<license_key>
Rückmeldung
HTTP status code: 200
Response body:
{
    ...an organization object...
}

Eine Organisation erstellen

POST /api/2/organization/<organization_id>/organizations/create
POST Fields
Erforderlich
  • name: der Name des Unternehmens.
  • email: die Kontakt-Email-Adresse des Unternehmens.
  • hostname: ein eindeutiger Hostname für das Unternehmen, der in Links zu Ressourcen und Freigaben verwendet wird. Dies sollte nur der Teil der dritten Ebene des Hostnamens sein (z.B. "Firma" in "company.example.com"). Nicht erforderlich für Single-Host-Konfigurationen.
  • slug: eine eindeutige, URL-freundliche Organisationskennung. Beispielsweise kann eine Organisation namens "Widgets, Ltd." den Slug "widgets-ltd" haben.
Optional
  • description: eine Beschreibung des Unternehmens. Die Standardeinstellung ist leer.
  • parent_id: die ID der übergeordneten Organisation. Standardmäßig wird die Stammorganisation verwendet.
  • trial_until: Datum/Uhrzeit im Format JJJJ-MM-TT SS:MM:SS, läuft die Probezeit des Unternehmens ab. Standardmäßig ist keine Probezeit voreingestellt.
  • share_disclaimer:
  • login_required: ob sich Benutzer anmelden müssen, um auf die Freigabe zuzugreifen. "true" oder "false". Standard "false".
  • expires: ein Datum im Format JJJJJ-MM-TT in der die Freigabe verfällt. Standardmäßig ist kein Ablaufdatum voreingestellt.
  • subscribers: eine kommagetrennte Liste der Abonnenten nach E-Mail-Adresse.
  • notify_subscribers: "true" oder "false". Standard "false".
  • download_limit: die Gesamtzahl der Downloads, die für die Freigabe erlaubt sind. Die Standardeinstellungen sind unbegrenzt.
  • download_notify: ob Sie über Downloads informiert werden möchten. "true" oder "false". Standard "false".
  • space_quota: Raumkontingent in Bits. Standard 1073741824240000.
  • max_file_size: maximale Dateigröße in MB. Standard 300.
  • excluded_extensions: ausgeschlossene Erweiterungen. Standard ".$$,.$db,.113,.3g2,.3gp,.3gp2,.3gpp,.3mm,.a,.abf,.abk,.afm,.ani,.ann,.asf,.avi,.avs,.bac,.bak,.bck,.bcm,.bd2,.bdb,.bdf,.bkf,.bkp,.bmk,.bsc,.bsf,.cab,.cf1,.chm,.chq,.chw,.cnt,.com,.cpl,.cur,.dbs,.dev,.dfont,.dll,.dmp,.drv,.dv,.dvd,.dvr,.dvr-ms,.eot,.evt,.exe,.ffa,.ffl,.ffo,.ffx,.flc,.flv,.fnt,.fon,.ftg,.fts,.fxp,.gid,.grp,.hdd,.hlp,.hxi,.hxq,.hxr,.hxs,.ico,.idb,.idx,.ilk,.img,.inf,.ini,.ins,.ipf,.iso,.isp,.its,.jar,.jse,.kbd,.kext,.key,.lex,.lib,.library-ms,.lnk,.log,.lwfn,.m1p,.m1v,.m2p,.m2v,.m4v,.mem,.mkv,.mov,.mp2,.mp2v,.mp4,.mpe,.mpeg,.mpg,.mpv,.mpv2,.msc,.msi,.msm,.msp,.mst,.ncb,.nt,.nvram,.o,.obj,.obs,.ocx,.old,.ost,.otf,.pch,.pd6,.pf,.pfa,.pfb,.pfm,.pnf,.pol,.pref,.prf,.prg,.prn,.pst,.pvs,.pwl,.QBA,.QBA.TLG,.QBW,.QBW.TLG,.qt,.rdb,.reg,.rll,.rox,.sbr,.scf,.scr,.sdb,.shb,.suit,.swf,.swp,.sys,.theme,.tivo,.tmp,.tms,.ttc,.ttf,.v2i,.vbe,.vga,.vgd,.vhd,.video,.vmc,.vmdk,.vmsd,.vmsn,.vmx,.vxd,.win,.wpk".
  • user_trim_revisions: Benutzern erlauben, Revisionen zu löschen? Standard "false".
  • trim_revisions: Änderungen automatisch löschen? Standard "false".
  • trim_revisions_x: Revisionen für Dateien, die nach einer bestimmten Anzahl von Tagen unverändert bleiben, löschen. Als Standard eingestellt.
  • user_purge_deleted: Benutzern erlauben, gelöschte Dateien zu löschen? Standard "false".
  • purge_deleted: gelöschte Dateien automatisch löschen? Voreinstellung "false".
  • purge_deleted_frequency: gelöschte Dateien nach einer bestimmten Anzahl von Tagen löschen. Standard nie.
  • deactivate_token_frequency: API-Token nach einer bestimmten Anzahl von Tagen deaktivieren. Standard 30.
  • user_create_backups: es Benutzern erlauben, ihre eigenen Backups zu erstellen? Standard "true".
  • user_create_shares: Benutzern erlauben, Dateien zu teilen? Standard "true".
  • secure_shares: neue Freigabelinks zwingen, ein Login zu verlangen? Voreinstellung "false".
  • user_overwrite_collisions: den Benutzern erlauben, Kollisionen zu überschreiben? Voreinstellung "false".
  • user_lock_files: Benutzern erlauben, Dateien zu sperren? Voreinstellung "false".
  • locked_extensions: verwenden Sie Dateisystemberechtigungen, um Sperren zu aktivieren. Standard ".doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.txt,.xlsb,.xlsm,.csv,.docm,.dotx,.dotm,.pub,.wpd,.odt,.ott,.oth,.odm,.ots,.odp,.odg,.otp,.odf,.oxt,.odc,.ods,.vdx,.vsx,.vtx,.one".
  • admin_browse_files: lassen Sie Organisationssverwalter Benutzerdateien durchsuchen? Standard "true".
  • admin_browse_remote: lassen Sie Unternehmensverwalter Remote-Dateien durchsuchen? Standard "true".
  • admin_create_users: lassen Sie Unternehmensadministratoren Benutzer erstellen? Voreinstellung " true ".
  • change_password_frequency: erzwingen Sie die Änderung des Passworts nach einer bestimmten Anzahl von Tagen. Standard nie.
  • require_two_step_auth: eine Zwei-Faktor-Authentifizierung benötigen? Standard "false".
  • num_users_minimum: minimale Anzahl von Benutzern. Standard 0.
  • num_users_maximum: maximale Anzahl von Benutzern. Standard keine.
  • num_orgs_maximum: maximale Anzahl von Unterorganisationen. Standard 10.
  • backups_enabled: Backup-Erstellung aktivieren? Standard "true".
  • branding_enabled: Branding-Unterstützung ermöglichen? Standard "true".
  • webdav_enabled: WebDAV-Unterstützung aktivieren? Standard "true".
  • psa_enabled: PSA-Unterstützung aktivieren? Standard "true".
  • ad_enabled: Unterstützung der Verzeichnisserver-Authentifizierung aktivieren? Standard "true".
  • file_server_enabled: "File Server Enablement" aktivieren? Standard "true".
  • trial_length_days: Probelänge in Tagen. Standard 30.
  • service_plans_enabled: Servicepläne aktivieren? Standard "false".
  • require_mobile_lock: benötigen Sie eine Passwortsperre auf mobilen Geräten? Standard "false".
  • web_preview_enabled: Benutzern erlauben, Dateien im Web in der Vorschau anzuzeigen? Voreinstellung " true ".
Rückmeldung

Gibt die erstellte Organisation zurück

HTTP status code: 200
Response body:
{
    ...an organization object...
}

Aktualisieren eines Unternehmens

POST /api/2/organization/<organization_id>/update
Rückmeldung

Gibt die aktualisierte Organisation zurück

HTTP status code: 200
Response body:
{
    ...an organization object...
}

Deaktivieren eines Unternehmens

POST /api/2/organization/<organization_id>/disable

Ein Unternehmen aktivieren

POST /api/2/organization/<organization_id>/enable

Löschen einer Organisation

POST /api/2/organization/<organization_id>/delete

Aktualisieren der Richtlinien eines Unternehmens

POST /api/2/organization/<organization_id>/policy/update
Rückmeldung

Gibt die aktualisierte Organisation zurück

HTTP status code: 200
Response body:
{
    ...an organization object...
}

Auflistung der Unterorganisationen/Kinder einer Organisation

GET /api/2/organization/<organization_id>/organizations
Query Parameter
  • offset: Null-basierte Verschiebung, von der aus mit der Auflistung von Unterorganisationen begonnen wird. Standardwert ist 0.
Rückmeldung
HTTP status code: 200
Response body:
{
    "offset": 0,
    "results": [
        ...up to 100 organization objects...
    ],
    "total": 42
}
  • offset: der im Methodenaufruf angegebene Offset oder Null.
  • results: eine Liste von Organisationsobjekten.
  • total: die Gesamtzahl der Unterorganisationen / Kinder der Organisation.

Root-Methoden

Auflistung der Roots eines Unternehmens

GET /api/2/organization/<organization_id>/roots
Query Parameter
  • offset: nullbasierter Offset, von dem aus Sie mit der Auflistung der Roots beginnen können. Standardwert ist 0.
Rückmeldung
HTTP status code: 200
Response body:
{
    "offset": 0,
    "results": [
        ...up to 100 root objects...
    ],
    "total": 42
}
  • offset: der im Methodenaufruf angegebene Offset oder Null.
  • results: eine Liste der Root-Objekte.
  • total: die Gesamtzahl der Roots.

Eine Root erhalten

GET /api/2/organization/<organization_id>/root/<root_id>
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a root object...
}

Auflistung der Freigaben einer Organisation

GET /api/2/organization/<organization_id>/shares
Query Parameter
  • offset: Null-basierte Verrechnung, ab der die Listung der Freigaben beginnen soll. Standardwert ist 0.
Rückmeldung
HTTP status code: 200
Response body:
{
    "offset": 0,
    "results": [
        ...up to 100 root objects...
    ],
    "total": 42
}
  • offset: der im Methodenaufruf angegebene Offset oder Null.
  • results: eine Liste von Root-Objekten.
  • total: die Gesamtzahl der Freigaben.

Erstellen einer Freigabe

POST /api/2/organization/<organization_id>/shares/create
POST Fields
Erforderlich
  • name: der Name der Freigabe
Optional
  • description: eine Beschreibung der Freigabe. Die Standardeinstellung ist leer.
  • auto_lock: die automatische Sperrung von Dateien in unterstützten Anwendungen aktivieren? Standard "false".
  • notify: neue Abonnenten benachrichtigen? Standard "true".
  • subscribers: eine JSON-Liste von "three-tuples", wobei der erste Wert eine Personen-ID, der zweite Wert eine Maschinen-ID oder ein Abonnementtyp, "alle", "Zukunft", "Web" oder "Webdav" und der dritte Wert eine Zugriffsrolle ist. Beispiel: [[1, "all", "COLLABORATOR"], [2, "web", "COLLABORATOR"]]
  • group_subscribers: eine JSON-Liste von "three-tuples", wobei der erste Wert eine Gruppen-ID ist, der zweite Wert ein Abonnementtyp, "web", "webdav" oder "machines" ist und der dritte Wert eine Zugriffsrolle ist. Beispiel: [[1, "web", "COLLABORATOR"], [2, "machines", "COLLABORATOR"]]
  • external_subscribers: eine JSON-Liste mit E-Mail-Adressen externer Teilnehmer. Dies müssen bestehende Konten in einem anderen Unternehmen sein. Beispiel:["john@example.com", "jane@example.com"]
Rückmeldung

Gibt die erstellte Freigabe zurück.

HTTP status code: 200
Response body:
{
    ...a root object...
}

Eine Freigabe erhalten

GET /api/2/organization/<organization_id>/share/<root_id>
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a root object...
}

Eine Freigabe aktualisieren

POST /api/2/organization/<organization_id>/share/<root_id>/update
POST Fields
Optional
  • company_id: Eine Firmen-ID, in die die Freigabe verschoben wird.
  • name: der Name der Freigabe.
  • description: eine Beschreibung der Freigabe.
  • auto_lock: die automatische Sperrung von Dateien in unterstützten Anwendungen aktivieren?
  • notify: neue Abonnenten benachrichtigen?
Rückmeldung

Gibt die aktualisierte Freigabe zurück.

HTTP status code: 200
Response body:
{
    ...a root object...
}

Liste der Freigabenabonnenten

GET /api/2/organization/<organization_id>/share/<root_id>/subscribers
Query Parameter
  • include_from_group: einzelne Abonnenten aus abonnierten Gruppen einbeziehen? Standardwert ist "false".
Rückmeldung
HTTP status code: 200
Response body:
{
    "external_subscribers": {"one@example.com": "invited", "two@example.com": "accepted"},
    "from_group": [[2, "web", "COLLABORATOR"], [2, "webdav", "COLLABORATOR"], [2, "future", "COLLABORATOR"]],
    "group_subscribers": [[1, "web", "COLLABORATOR"], [1, "webdav", "COLLABORATOR"], [1, "machines", "COLLABORATOR"]],
    "subscribers": [[1, "web", "COLLABORATOR"], [3, "web", "COLLABORATOR"], [3, "future", "COLLABORATOR"]]
}
  • external_subscribers: ein Archiv externer Teilnehmer, das nach E-Mail-Adresse mit den Werten "eingeladen", "akzeptiert" oder "abgelehnt" verschlüsselt ist und die Antwort des Eingeladenen anzeigt.
  • from_group: eine Liste von "three-tuples", wobei der erste Wert eine Personen-ID ist, der zweite Wert eine Maschinen-ID oder ein Abonnementtyp, "web", "webdav" oder "future" ist und der dritte Wert eine Zugriffsrolle ist.
  • group_subscribers: eine Liste von "three-tuples", wobei der erste Wert eine Gruppen-ID ist, der zweite Wert ein Abonnementtyp, "web", "webdav" oder "machines" ist und der dritte Wert eine Zugriffsrolle ist.
  • subscribers: eine Liste von "three-tuples", wobei der erste Wert eine Personen-ID ist, der zweite Wert eine Maschinen-ID oder ein Abonnementtyp, "future", "web" oder "webdav" ist und der dritte Wert eine Zugriffsrolle ist.

Aktualisierung der Freigabenabonnenten

POST /api/2/organization/<organization_id>/share/<root_id>/subscribers/update
POST Fields
Optional
  • subscribers: eine JSON-Liste von " three-tuples ", wobei der erste Wert eine Personen-ID, der zweite Wert eine Maschinen-ID oder ein Abonnementtyp, "alle", "Zukunft", "Web" oder "Webdav" und der dritte Wert eine Zugriffsrolle ist. Beispiel: [[1, "all", "COLLABORATOR"], [2, "web", "COLLABORATOR"]]
  • group_subscribers: eine JSON-Liste von "three-tuples", wobei der erste Wert eine Gruppen-ID ist, der zweite Wert ein Abonnementtyp, "web", "webdav" oder "machines" ist und der dritte Wert eine Zugriffsrolle ist. Beispiel:[[1, "web", "COLLABORATOR"], [2, "machines", "COLLABORATOR"]]
  • external_subscribers: eine JSON-Liste mit Email-Adressen externer Teilnehmer. Dies müssen bestehende Konten in einem anderen Unternehmen sein. Beispiel: ["john@example.com", "jane@example.com"]
  • remove_files: Dateien von nicht registrierten Agenten entfernen? Standard "false".
Rückmeldung
HTTP status code: 200

Löschen einer Freigabe

POST /api/2/organization/<organization_id>/share/<root_id>/delete
POST Fields
Optional
  • remove_files: Dateien aus abonnierten Agenten entfernen? Voreinstellung "false".
Rückmeldung
HTTP status code: 200

Geräteverfahren

Auflisten der Geräte eines Unternehmens

GET /api/2/organization/<organization_id>/machines
Query Parameter
  • offset: Null-basierte Verschiebung, von der aus die Auflistung der Maschinen gestartet werden kann. Standardwert ist 0.
Rückmeldung
HTTP status code: 200
Response body:
{
    "offset": 0,
    "results": [
        ...up to 100 machine objects...
    ],
    "total": 42
}
  • offset: der im Methodenaufruf angegebene Offset oder Null.
  • results: eine Liste der Geräte.
  • total: die Gesamtzahl der Geräte.

User-Methoden

Auflisten der Benutzer eines Unternehmens

GET /api/2/organization/<organization_id>/persons
Query Parameter
  • offset: Null-basierte Verschiebung, von der aus Sie mit der Auflistung der Personen beginnen können. Standardwert ist 0.
Rückmeldung
HTTP status code: 200
Response body:
{
    "offset": 0,
    "results": [
        ...up to 100 person objects...
    ],
    "total": 42
}
  • offset: der im Methodenaufruf angegebene Offset oder Null.
  • results: eine Liste von Personen-Objekten.
  • total: die Gesamtzahl der Personen

Auflistung der Gäste einer Organisation

GET /api/2/organization/<organization_id>/guests
Query Parameters
  • offset: Null-basierte Verschiebung, von der aus Sie mit der Auflistung der Gäste beginnen können. Standardwert ist 0.
Rückmeldung
HTTP status code: 200
Response body:
{
    "offset": 0,
    "results": [
        ...up to 100 guest objects...
    ],
    "total": 42
}
  • offset: der im Methodenaufruf angegebene Offset oder Null.
  • results: eine Liste von Gast-Objekten.
  • total: die Gesamtzahl der Gäste.

Gruppen-Methoden

Auflistung der Gruppen einer Organisation

GET /api/2/organization/<organization_id>/groups
Query Parameter
  • offset: Null-basierte Verschiebung, von der aus Sie mit der Auflistung der Gäste beginnen können. Standardwert ist 0.
Rückmeldung
HTTP status code: 200
Response body:
{
    "offset": 0,
    "results": [
        ...up to 100 group objects...
    ],
    "total": 12
}
  • offset: der im Methodenaufruf angegebene Offset oder Null.
  • results: eine Liste von Gruppen-Objekten.
  • total: die Gesamtzahl der Gruppen.

Authentifizierungsquellen-Methoden

Auflistung der Authentifizierungsquellen einer Organisation

GET /api/2/organization/<organization_id>/auth_sources
Query Parameters
  • offset: Null-basierte Verschiebung, von der aus Sie mit der Auflistung der Gäste beginnen können. Standardwert ist 0.
Rückmeldung
HTTP status code: 200
Response body:
{
    "offset": 0,
    "results": [
        ...up to 100 authentication source objects...
    ],
    "total": 42
}
  • offset: der im Methodenaufruf angegebene Offset oder Null.
  • results: eine Liste von Authentifizierungsquellen-Objekten.
  • total: die Gesamtzahl der Authentifizierungsquellen.

Listen Sie die Spitznamen der Authentifizierungsquelle einer Organisation auf

GET /api/2/organization/<organization_id>/auth_sources/nicknames
GET /api/2/organization/<slug>/auth_sources/nicknames
GET /api/2/organization/<hostname>/auth_sources/nicknames
Rückmeldung

Die Organisation hat Authentifizierungsquellen konfiguriert, aber hat keine Spitznamen

HTTP status code: 200
Response body:
{
    "results": []
}

Die Organisation hat Authentifizierungsquellen konfiguriert mit Spitznamen

HTTP status code: 200
Response body:
{
    "results": [
        ...a list of auth source nickname strings...
    ]
}
Fehlermeldungen
Die Organisation existiert nicht oder hat keine Authentifizierungsquellen generiert
HTTP status code: 404
Response body:
{
    "error": "not_found"
}

Aktivitäts-Methoden

Auflistung der aktuellen Aktivitäten einer Organisation

GET /api/2/organization/<organization_id>/activity
Query Parameter
  • offset: Null-basierte Verschiebung, von der aus Sie mit der Auflistung der Gäste beginnen können. Standardwert ist 0.
Rückmeldung
HTTP status code: 200
Response body:
{
    "offset": 0,
    "results": [
        ...up to 100 activity objects in reverse chronological order...
    ],
    "total": 42
}
  • offset: der im Methodenaufruf angegebene Offset oder Null.
  • results: eine Liste der Aktivitätsobjekte in umgekehrter chronologischer Reihenfolge.
  • total: die Gesamtzahl der für das Unternehmen verfügbaren Tätigkeitsaufzeichnungen.

Kennzahl/ Metrics-Methoden

Nutzung für ein Unternehmen erhalten

GET /api/2/organization/<organization_id>/metrics/usage
Response
HTTP status code: 200
Response body:
{
    ...an organization usage object...
}

Fehlermeldungen

Die folgenden Fehler können für jede Organisationsmethode auftreten und werden in den Methodenbeschreibungen nicht explizit erwähnt.

Authentifizierter Benutzer hat keinen Zugriff auf die Ansicht oder Änderung des Unternehmens.

HTTP status code: 403
Response body:
{
    "error": "forbidden"
}

Unternehmen existiert nicht

HTTP status code: 404
Response body:
{
    "error": "not_found"
}

Person


Person-Objekt

Ein Personenobjekt repräsentiert ein Leitz-Cloud-Benutzerkonto.

Eigenschaften

  • type string

    "person"

  • id integer

    Der eindeutige Identifikator für die Person

  • email string

    Die E-Mail-Adresse der Person

  • username string

    Der Benutzername der Person

  • company_id integer

    Die Kennung der Firma, zu der die Person gehört

  • first_name string

    Der Vorname der Person

  • last_name string

    Der Nachname der Person

  • display_name string

    Der Name der Person, der für die Anzeige formatiert ist

  • root_id integer

    Der Identifikator der Sync-Root der Person

  • roots list

    Eine Liste von Root-Objekten bei dem die Person abonniert ist

  • space_quota integer

    Das Raumkontingent der Person in Bytes

  • space_quota_formatted string

    Das Raumkontingent der Person in menschengerechter Formatierung

  • space_usage integer

    Der von der Person belegte Platz in Bytes

  • space_usage_formatted string

    Der Platz, den die Person in einer menschenfreundlichen Formatierung einnimmt

  • can_share boolean

    Ob die Firmenpolitik der Person es erlaubt, Teamshares anzulegen.

  • company_policy object

    Das erweiterte Unternehmen Richtlinienobjekt

Beispiel
{
    "can_share": true,
    "company_policy": {
        ...
    },
    "display_name": "First Last",
    "email": "user@example.com",
    "first_name": "First",
    "id": 1,
    "last_name": "Last",
    "root_id": 1,
    "roots": [
        ...
    ],
    "space_quota": 10000,
    "space_quota_formatted": "10k",
    "space_usage": 100,
    "space_usage_formatted": "100b",
    "type": "person",
    "username": ""
}

Person-Methoden

Eine Person erstellen

Die person Methode gibt Informationen über den authentifizierten Benutzer oder einen Benutzer mit einer bestimmten ID oder E-Mail-Adresse zurück.

GET /api/2/person
GET /api/2/person/<person_id>
GET /api/2/person/<email>
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a person object...
}

Eine Person anlegen

POST /api/2/person/create
POST Fields
  • company_id:
  • email:
  • first_name:
  • last_name:
  • password:
  • generate_password:
  • pw_expires:
  • webdav:
  • space_quota:
  • mobile_phone:
  • site_admin:
  • system_admin:
  • create_root:
  • dept_shares:
  • group_ids:
  • quota_50:
  • quota_80:
  • quota_85:
  • quota_90:
  • quota_95:
  • quota_100:
  • send_welcome_email:
Rückmeldung

Gibt die erstellte Person zurück.

HTTP status code: 200
Response body:
{
    ...a person object...
}

Eine Person aktualisieren

POST /api/2/person/<person_id>/update
Rückmeldung

Gibt die aktualisierte Person zurück.

HTTP status code: 200
Response body:
{
    ...a person object...
}
Fehlermeldung
Passwort unverändert

Diese Fehlermeldung zeigt an, dass das passwort welches vorgeschlagen wurde, das geleiche Passwort ist, wei das bereits bestehende Passwort.

HTTP status code: 400
Response body:
{
    "error": "password_unchanged"
}

Eine Person löschen

POST /api/2/person/<person_id>/delete
POST Fields
  • remove_server_files:
  • remove_user_files: ob der Konto-Root des Benutzers gelöscht werden soll
  • remove_dept_files: ob Dateien, die dem Benutzer gehören, in Teamfreigaben gelöscht werden sollen
Rückmeldung
HTTP status code: 200

Erstellen einer Konto Synchronisierungs Root

Erstellen Sie eine Synchronisierungs-Root für ein Konto, wenn es noch nicht vorhanden ist

POST /api/2/person/<person_id>/roots/create
POST Fields
Optional
  • webdav: ob der Webdav-Zugriff aktiviert werden soll. Voreinstellung "false".
Rückmeldung

Gibt die erstellte Root zurück.

HTTP status code: 200
Response body:
{
    ...a root object...
}

Auflistung der Dateien und Ordner, die eine Person geteilt hat

GET /api/2/person/<person_id>/sharelinks
Query Parameters
  • sort_by: das Feld, nach dem sortiert werden soll: "created", "expires", "creator_name", "times_viewed" oder "times_downloaded". Standard "created".
  • sort_order: die Sortierrichtung: "asc" oder "desc". Standard "asc".
  • page: die Ergebnisseite, um zurückzukehren: 1 bis max_page. Standardwert 1.
  • page_size:die Anzahl der Ergebnisse, die pro Seite zurückgegeben werden sollen: 1 bis 100. Default 20.
Rückmeldung
HTTP status code: 200
Response body:
{
    "page": 1,
    "page_size": 20,
    "max_page": 3,
    "results": [
        ...up to page_size file and folder share link objects...
    ],
    "total": 42
}
  • page: die im Methodenaufruf angegebene Seite oder 1.
  • page_size: die im Methodenaufruf angegebene page_size oder 20.
  • max_page: die Gesamtzahl der Ergebnisseiten.
  • results: eine Liste von Teilen-Link-Objekten.
  • total: die Gesamtzahl der verfügbaren Ergebnisdatensätze.

Auflistung von Dateien und Ordner, welche mit einer Person geteilt wurden

GET /api/2/person/<person_id>/sharelinks/received
Query Parameters
  • sort_by: das Feld, nach dem sortiert werden soll: "created", "expires", "creator_name", "times_viewed" oder "times_downloaded". Standard "created".
  • sort_order: die Sortierrichtung: "asc" oder "desc". Standard "asc".
  • page: die Ergebnisseite, um zurückzukehren: 1 bis max_page. Standardwert 1.
  • page_size: die Anzahl der Ergebnisse, die pro Seite zurückgegeben werden sollen: 1 bis 100. Default 20.
Rückmeldung
HTTP status code: 200
Response body:
{
    "page": 1,
    "page_size": 20,
    "max_page": 3,
    "results": [
        ...up to page_size file and folder share link objects...
    ],
    "total": 42
}
  • page: die im Methodenaufruf angegebene Seite oder 1.
  • page_size: die im Methodenaufruf angegebene page_size oder 20.
  • max_page: die Gesamtzahl der Ergebnisseiten.
  • results: eine Liste von Teilen-Link-Objekten.
  • total: die Gesamtzahl der verfügbaren Ergebnisdatensätze.

Liste der letzten Aktivitäten für eine Person

GET /api/2/person/<person_id>/activity
Query Parameter
  • offset: Null-basierte Verschiebung, ab der Sie mit der Listung von Aktivitätssätzen beginnen können. Standard 0.
Rückmeldung
HTTP status code: 200
Response body:
{
    "offset": 0,
    "results": [
        ...up to 100 activity objects in reverse chronological order...
    ],
    "total": 42
}
  • offset: der im Methodenaufruf angegebene Offset oder Null.
  • results: eine Liste der Aktivitätsobjekte in umgekehrter chronologischer Reihenfolge.
  • total: die Gesamtzahl der für die Person verfügbaren Tätigkeitsnachweise.

Aktiviere die 2-Fakor-Authentifizierung

POST /api/2/person/two_step/enable
Felder
Benötigt
  • password: das Passwort des authentifizierten Benutzers.
  • mode: der zu verwendende zweistufige Authentifizierungsmodus: "authenticator", "email" oder "sms".
Optional
  • auth_code:der zweistufigen Authentifizierungscode. Wenn er ausgeschlossen ist löst dass, die Übermittlung des zweistufigen Authentifizierungscodes aus, wenn der konfigurierte zweistufige Modus „SMS“ oder „E-Mail“ ist. Er ist erforderlich, um die Aktivierung der zweistufigen Authentifizierung abzuschließen.
  • mobile_phone: wenn mode=sms, aktualisiert es die Mobiltelefonnummer des authentifizierten Benutzers.
Rückmeldung
Schritt 1: Authentifizierungscode ist nicht präsent
HTTP status code: 200
Response body:
{
  "backup_key": "GZTEQRKMGIYDS4JU",
  "key": "GM4EUUKOKNMHEZS2OZ2UE43YNVYG4OL2",
  "uri": "otpauth://totp/foo@example.com?secret=GM4EUUKOKNMHEZS2OZ2UE43YNVYG4OL2"
}
Schritt 2: Authentifizierungscode erhalten
HTTP status code: 200
Fehlmeldung
Passwort oder Authentifizierungscode sind nicht gültig
HTTP status code: 403
Response body:
{
    "error": "forbidden"
}

Deaktiviere die 2-Fakor-Authentifizierung

POST /api/2/person/two_step/disable
Felder
Benötigt
  • password: das Passwort des authentifizierten Benutzers.
Optional
  • auth_code: der zweistufigen Authentifizierungscode. Wenn er ausgeschlossen ist löst dass, die Übermittlung des zweistufigen Authentifizierungscodes aus, wenn der konfigurierte zweistufige Modus „SMS“ oder „E-Mail“ ist. Er ist erforderlich, um die Deaktivierung der zweistufigen Authentifizierung abzuschließen.
Rückmeldung
HTTP status code: 200
Errors
Passwort oder Authentifizierungscode sind nicht gültig
HTTP status code: 403
Response body:
{
    "error": "forbidden"
}

Wiederherstellung der 2-Fakor-Authentifizierung

POST /api/2/person/two_step/recovery
Felder
Benötigt
  • email: die E-Mail-Adresse des Benutzers, der die Wiederherstellung der zwei Schritte einleitet.
  • backup_key: der Backup-Schlüssel für die zweistufige Wiederherstellung des Benutzers.
Rückmeldung
HTTP status code: 200
Fehlermeldung
Backup Schlüssel kann nicht verifiziert werden.
HTTP status code: 401
Response body:
{
    "error": "access_denied"
}

Fehlermeldung

Die folgenden Fehler können für jede Personenmethode auftreten und werden in den Methodenbeschreibungen nicht explizit erwähnt.

Authentifizierter Benutzer hat keinen Zugriff auf die Ansicht oder Änderung der Person.

HTTP status code: 403
Response body:
{
    "error": "forbidden"
}

Person existiert nicht

HTTP status code: 404
Response body:
{
    "error": "not_found"
}

Gast


Gast-Objekt

Ein Gast repräsentiert ein eingeschränktes Konto mit eingeschränktem Zugriff auf freigegebene Dateien.

Eigenschaften

  • type string

    "guest"

  • id integer

    Die eindeutige Kennung für den Gast

  • company_id integer

    Die Kennung der Firma, zu der der Gast gehört

  • creator_id integer

    Die Kennung der Person, die den Gast angelegt hat

  • email string

    Die Email-Adresse des Gastes

  • first_name string

    Der Vorname des Gastes

  • last_name string

    Der Nachname des Gastes

  • active boolean

    Ob das Gastkonto aktiv ist

  • created string

    Datum/Uhrzeit in UTC, in dem der Gast im Format JJJJ-MM-TT SS:MM:SS angelegt wurde

Beispiel
{
    "active": true,
    "company_id": 1,
    "created": "2015-01-01T01:02:03",
    "creator_id": 1,
    "email": "guest@example.com",
    "first_name": "First",
    "id": 1,
    "last_name": "Last",
    "type": "guest"
}

Gast-Methoden

Erstellen Sie sich einen Gast

Erstellen Sie sich einen Gast über seine ID oder Email-Adresse.

GET /api/2/guest/<guest_id>
GET /api/2/guest/<email>
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a guest object...
}

Einen Gast erstellen

POST /api/2/guest/create
POST Fields
Erforderlich
  • company_id: die Kennung der Firma, in der der Gast angelegt werden soll.
  • first_name: den Vornamen des Gastes.
  • last_name: den Nachnamen des Gastes.
  • email: die E-Mail-Adresse des Gastes.
  • password: das Passwort des Gastes. Erforderlich, wenn "generate_password" "false" ist.
  • generate_password: ob ein Passwort automatisch generiert werden soll. Erforderlich, wenn kein Passwort angegeben wird. Standard "false".
Optional
  • send_welcome_email: eine Willkommens-E-Mail an den Gast senden? Standard "false".
  • pw_expires: Anzahl der Stunden, bis das Passwort abläuft. Gültige Optionen sind leer (nie), "6", "12" und "24". Standard nie.
Rückmeldung

Gibt den erstellten Gast zurück.

HTTP status code: 200
Response body:
{
    ...a guest object...
}

Einen Gast aktualisieren

POST /api/2/guest/<guest_id>/update
POST Fields
Optional
  • first_name: den Vornamen des Gastes.
  • last_name: den Nachnamen des Gastes.
  • email: die Email-Adresse des Gastes.
  • password: das Passwort des Gastes.
  • pw_expires: Anzahl der Stunden, bis das Passwort abläuft. Gültige Optionen sind leer (nie), "6", "12" und "24". Standard nie.
Rückmeldung

Gibt den aktualisierten Gast zurück.

HTTP status code: 200
Response body:
{
    ...a guest object...
}

Einen Gast löschen

POST /api/2/guest/<guest_id>/delete
Rückmeldung
HTTP status code: 200

Dateien und Ordner für einen Gast freigeben lassen

GET /api/2/guest/<guest_id>/shares
Rückmeldung
HTTP status code: 200
Response body:
{
    "results": [
        ...file share objects...
    ]
}

Einen Gast in ein Standardkonto umwandeln

POST /api/2/guest/<guest_id>/convert
Rückmeldung

Gibt das erstellte Konto zurück.

HTTP status code: 200
Response body:
{
    ...a person object...
}
Fehlermeldung
Benutzerlimit überschritten

Tritt auf, wenn die Umwandlung des Gastkontos das Kontolimit des Unternehmens überschreiten würde.

HTTP status code: 409
Response body:
{
    "error": "user_limit_exceeded",
    "error_description": "User limit has been reached."
}

Gruppe


Gruppe-Objekt

Eine Gruppe stellt eine Sammlung von Benutzern und anderen Gruppen dar.

Eigenschaften

  • type string

    "group"

  • id integer

    Der eindeutige Identifikator für die Gruppe

  • company_id integer

    Die eindeutige Kennung für die Organisation der Gruppe

  • name string

    Der Gruppenname

  • created string

    Datum/Uhrzeit in UTC, in dem die Gruppe im Format JJJJ-MM-TT SS:MM:SS erstellt wurde.

  • active boolean

    Ob die Gruppe aktiv ist

Beispiel
{
    "active": true,
    "company_id": 2,
    "created": "2016-03-30T05:57:23",
    "id": 1,
    "name": "Example Group",
    "type": "group"
}

Gruppe-Methoden

Eine Gruppe erstellen

POST /api/2/group/create
POST Fields
Erforderlich
  • name: der Gruppenname.
  • company_id: die Organisations-ID, in der die Gruppe erstellt werden soll.
Optional
  • members: eine JSON-Liste mit ganzzahligen Personen-IDs.
  • member_groups: eine JSON-Liste von ganzzahligen Gruppen-IDs.
Rückmeldung

Gibt die erstellte Gruppe zurück.

HTTP status code: 200
Response body:
{
    ...a group object...
}

Eine Gruppe erhalten

GET /api/2/group/<group_id>
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a group object...
}

Eine Gruppe aktualisieren

POST /api/2/group/<group_id>/update
POST Fields
Optional
  • name: der Gruppenname.
Rückmeldung

Gibt die aktualisierte Gruppe zurück.

HTTP status code: 200
Response body:
{
    ...a group object...
}

Gruppenmitglieder auflisten

GET /api/2/group/<group_id>/members
Query Parameter
  • include_from_group: einzelne Abonnenten aus abonnierten Gruppen einbeziehen? Standardwert ist "false".
Rückmeldung
HTTP status code: 200
Response body:
{
    "member_groups": [
        2
    ],
    "member_groups_from_group": [
        3
    ],
    "members": [
        2,
        3
    ],
    "members_from_group": [
        1
    ]
}
  • member_groups: eine Liste von Gruppen-IDs, die direkte Mitglieder der Gruppe sind.
  • member_groups_from_group: eine Liste von Gruppen-IDs, die direkte Mitglieder der Liste von Gruppen-IDs sind, die vererbte Mitglieder der Gruppe sind. Nur vorhanden, wenn include_from_group "true" ist.
  • members: eine Liste von Personen-IDs, die direkte Mitglieder der Gruppe sind.
  • members_from_group: eine Liste von Personen-IDs, die vererbte Mitglieder der Gruppe sind. Nur vorhanden, wenn include_from_group "true" ist.

Gruppenmitglieder aktualisieren

POST /api/2/group/<group_id>/members/update
POST Fields
Optional
  • members: eine JSON-Liste mit ganzzahligen Personen-IDs.
  • member_groups: eine JSON-Liste von ganzzahligen Gruppen-IDs.
  • remove_files: Dateien von nicht registrierten Agenten entfernen? Standard "false".
Rückmeldung
HTTP status code: 200

Eine Gruppe löschen

POST /api/2/group/<group_id>/delete
POST Fields
Optional
  • remove_files: Dateien aus abonnierten Agenten entfernen? Voreinstellung "false".
Rückmeldung
HTTP status code: 200

Gerät


Gerät-Objekt

Ein Computer stellt eine Vorrichtung dar, die zur Verbindung mit der LeitzCloud verwendet wird, wie beispielsweise ein Computer, Telefon oder Tablett.

Eigenschaften

  • type string

    "machine"

  • id integer

    Die eindeutige Kennung für die Maschine

  • dns_name string

    Ein beschreibender Name für das Gerät, wie beispielsweise der Hostname oder der Gerätehersteller und das Modell

  • nickname string

  • last_login string

    Datum/Uhrzeit in UTC, an dem sich das Gerät zuletzt im Format JJJJ-MM-TT SS:MM:SS angemeldet hat. Wird vom Desktop-Agenten verwendet

  • guid string

    Eine global eindeutige Kennung, die der Maschine zugeordnet ist

  • created string

    Datum/Uhrzeit in UTC, in dem das Gerät im Format JJJJ-MM-TT SS:MM:SS erstellt wurde

  • os_type string

    Der Systemtyp des Gerätes, wie z.B. "win", "osx", "android", "ios" oder "winphone"

  • os_version string

    Die Systemversion des Gerätes, z.B. "5.1.0"

  • agent_version string

    Die auf der Maschine installierte Agentenversion. Wird vom Desktop-Agenten verwendet

  • locked boolean

  • bandwidth_throttle integer

  • throttle_exception_days string

  • throttle_exception_dow list of integers

  • throttle_exception_start string

  • throttle_exception_end string

  • throttle_exception_throttle integer

  • throttled boolean

    Ob die Bandbreitenbegrenzung für die Maschine aktiviert ist

  • machine_type string

    Der Gerätentyp

  • last_disconnect string

    Das Datum/Uhrzeit in UTC, in dem die Maschine zuletzt im Format JJJJ-MM-TT SS:MM:SS getrennt wurde. Wird vom Desktop-Agenten verwendet

  • health_report_period_minutes

  • manual_collisions boolean

Beispiel
{
    "agent_version": null,
    "bandwidth_throttle": null,
    "created": "2015-01-01T01:02:03",
    "dns_name": "Google Nexus 6",
    "guid": "794f7f67-3bd6-407c-9274-be735b880143",
    "health_report_period_minutes": null,
    "id": 1,
    "last_disconnect": null,
    "last_login": null,
    "locked": false,
    "machine_type": "mobile",
    "manual_collisions": true,
    "nickname": null,
    "os_type": "android",
    "os_version": "5.1.0",
    "throttle_exception_days": null,
    "throttle_exception_dow": null,
    "throttle_exception_end": null,
    "throttle_exception_start": null,
    "throttle_exception_throttle": null,
    "throttled": false,
    "type": "machine"
}

Geräte-mapping-Objekt

Eine Maschinenzuordnung stellt einen Pfad auf einem Dateiserver-fähigen Rechner dar, der einem Root zugeordnet ist.

Eigenschaften

  • type string

    "machine_mapping"

  • id integer

    Der eindeutige Identifikator für das Mapping

  • machine_id integer

    Die Kennung des Dateiserver-fähigen Rechners, dem die Root zugeordnet ist

  • name string

    Der Mapping-Name

  • path string

    Der Pfad auf dem Dateiserver-fähigen Computer, dem die Root zugeordnet ist

  • person_id integer

    Die Kennung des Kontos, wenn die abgebildete Root eine Kontoroot ist

  • root_id integer

    Der Bezeichner der abgebildeten Root

  • share boolean

    Ob die zugeordnete Root eine Freigabe ist

Beispiel
{
    "id": 1234,
    "machine_id": 1,
    "name": "Example Share",
    "path": "C:\Example1",
    "person_id": null,
    "root_id": 2,
    "share": true,
    "type": "machine_mapping"
}

Backup-Objekt

Ein Backup stellt eine Backup-Root dar, die einem Pfad auf einem Dateiserver-fähigen Rechner zugeordnet ist.

Eigenschaften

  • type string

    "backup"

  • id integer

    Die eindeutige Kennung für das Backup

  • machine_id integer

    Die Kennung des Dateiserver-fähigen Rechners, dem die Root zugeordnet ist

  • path string

    Der Pfad auf dem Dateiserver-fähigen Computer, von dem aus Dateien gesichert werden

Beispiel
{
    "id": 1234,
    "machine_id": 1,
    "path": "C:\\Example",
    "type": "backup"
}

Gerät-Methode

Ein Gerät erstellen

GET /api/2/machine/<machine_id>
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a machine object...
}

Den Status des Gerätes abfragen

GET /api/2/machine/<machine_id>/status
Rückmeldung
HTTP status code: 200
Response body:
{
    "results": {
        "subscriptions": [
            {
                "excl_files": 1,
                "rsub_id": 1234,
                "synced": true,
                "synced_folder": "C:\\Example"
            }
        ],
        "synced": true,
        "transfers": []
    }
}

Dateiserver Aktivierungs-Methoden

Dateiserver auf einem Rechner aktivieren

POST /api/2/machine/<machine_id>/server/enable
Rückmeldung
HTTP status code: 200

Dateiserver auf einem Rechner deaktivieren

POST /api/2/machine/<machine_id>/server/disable
Rückmeldung
HTTP status code: 200

Auflisten von Dateien auf einem Dateiserver

POST /api/2/machine/<machine_id>/ls
POST Fields
Optional
  • path: der Verzeichnispfad zur Liste oder nicht-Listung der Laufwerke. Standard keine.
  • username: der Benutzername, wenn der Pfad ein Netzwerkpfad ist und eine Authentifizierung erfordert. Standard keine.
  • password: das Passwort, wenn der Pfad ein Netzwerkpfad ist und eine Authentifizierung erfordert. Standard keine.
Rückmeldung
HTTP status code: 200
Response body:
{
    "results": [
        "Example1",
        "Example2"
    ]
}

Liste zugeordneten Pfade auf einem Dateiserver

GET /api/2/machine/<machine_id>/mappings
Rückmeldung
HTTP status code: 200
Response body:
{
    "results": [
        ...machine_mapping objects...
    ]
}

Einen Pfad auf einem Dateiserver einem Root zuordnen

POST /api/2/machine/<machine_id>/mappings/create
POST Fields
Benötigt
  • root_id: der Bezeichner der zu mappenden Root.
  • path: der Pfad auf dem Dateiserver-fähigen Computer, dem die Root zugeordnet wird.
Optional
  • username: der Benutzername, wenn path ein Netzwerkpfad ist und eine Authentifizierung erfordert. Standard keine.
  • password: das Passwort, wenn der Pfad ein Netzwerkpfad ist und eine Authentifizierung erfordert. Standard keine.
Rückmeldung

Gibt das erstellte Mapping zurück.

HTTP status code: 200
Response body:
{
    ...a machine_mapping object...
}

Erhalten Sie eine Gerätenzuordnung (mapping)

GET /api/2/machine/<machine_id>/mapping/<mapping_id>
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a machine_mapping object...
}

Löschen einer Gerätenzuordnung (mapping)

POST /api/2/machine/<machine_id>/mapping/<mapping_id>/delete
Rückmeldung
HTTP status code: 200

Backup-Methoden

Backup Auflistung

GET /api/2/machine/<machine_id>/backups
Rückmeldung
HTTP status code: 200
Response body:
{
    "results": [
        ...backup objects...
    ]
}

Einen Backup erstellen

POST /api/2/machine/<machine_id>/backups/create
POST Fields
Benötigt
  • path: der Pfad auf dem Dateiserver-fähigen Rechner, dem die Root zugeordnet werden soll.
Optional
  • username: der Benutzername, wenn der Pfad ein Netzwerkpfad ist und eine Authentifizierung erfordert. Standard keine.
  • password: das Passwort, wenn der Pfad ein Netzwerkpfad ist und eine Authentifizierung erfordert. Standard keine.
Rückmeldung

Gibt das erstellte Backup zurück

HTTP status code: 200
Response body:
{
    ...a backup object...
}

Backup erhalten

GET /api/2/machine/<machine_id>/backup/<root_id>
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a backup object...
}

Wiederherstellen eines Backups

POST /api/2/machine/<machine_id>/backup/<root_id>/restore
POST Fields
Benötigt
  • path: der Pfad auf dem Dateiserver-fähigen Rechner, auf dem das Backup wiederhergestellt wird.
Optional
  • to_machine_id: die ID der Maschine, auf der das Backup wiederhergestellt werden soll. Standardwert ist Wiederherstellen auf der Maschine, auf der das Backup läuft.
Rückmeldung

Returns the updated backup object.

HTTP status code: 200
Response body:
{
    ...a backup object...
}

Löschen eines Backups

POST /api/2/machine/<machine_id>/backup/<root_id>/delete
Rückmeldung
HTTP status code: 200

Fehlermeldung

Die folgenden Fehler können bei jedem Maschinenverfahren auftreten und sind in den Methodenbeschreibungen nicht explizit erwähnt.

Authentifizierter Benutzer hat keinen Zugriff auf die Ansicht oder Änderung des Systems.

HTTP status code: 403
Response body:
{
    "error": "forbidden"
}

Gerät existiert nicht

HTTP status code: 404
Response body:
{
    "error": "not_found"
}

Aktivität


Aktivitäts-Objekt

Eine Aktivität stellt eine protokollierte Aktion dar, die Details der agierenden Einheit und der betroffenen Einheit enthält.

Eigenschaften

  • type string

    "activity"

  • id integer

    Der eindeutige Identifikator für die Aktivität

  • actor_type string

    Der Entitätstyp, der die Aktivität auslöst

  • actor_text string

    Die Beschreibung der Einheit, die die Aktivität auslöst

  • actor_company_id integer

  • actor_machine_id integer

  • actor_person_id integer

  • actor_guest_id integer

  • action_text string

    Zusätzliche Beschreibung der ergriffenen Maßnahmen

  • acted_on_type string

    Der Entitätstyp, auf den reagiert wurde

  • acted_on_text string

    Die Beschreibung des Entitätstyps, auf den reagiert wird

  • acted_on_company_id integer

  • acted_on_machine_id integer

  • acted_on_person_id integer

  • acted_on_guest_id integer

  • acted_on_root_id integer

  • acted_on_group_id integer

  • data_text string

    Die Beschreibung der getroffenen Maßnahmen

  • activity_type_id integer

    Die Kennung der Aktivitätsart für diese Aktivität

  • created string

    Datum/Uhrzeit in UTC, zu dem die Aktivität im Format JJJJ-MM-TT SS:MM:SS stattgefunden hat

  • processed boolean

Beispiel
{
    "acted_on_company_id": 1,
    "acted_on_group_id": null,
    "acted_on_guest_id": null,
    "acted_on_machine_id": null,
    "acted_on_person_id": null,
    "acted_on_root_id": null,
    "acted_on_text": "Example Company",
    "acted_on_type": "site",
    "action_text": null,
    "activity_type_id": 8,
    "actor_company_id": null,
    "actor_guest_id": null,
    "actor_machine_id": null,
    "actor_person_id": 1,
    "actor_text": "First Last",
    "actor_type": "person",
    "created": "2015-01-01T01:02:03",
    "data_text": "increased from 4.00G to 100.00G",
    "id": 123,
    "processed": true,
    "type": "activity"
}

Aktivitätenart-Objekt

Eigenschaften

  • type string

    "activity_type"

  • id integer

    Der eindeutige Identifikator für die Aktivitätsart

  • activity string

    Die Beschreibung der Aktivität

  • machine_scope boolean

    ob die Aktivität im Rahmen eines Gerätes ausgeführt wird

  • user_scope boolean

    ob die Aktivität im Rahmen eines Benutzers durchgeführt wird

  • system_scope boolean

    ob die Aktivität auf Systemebene ausgeführt wird

Beispiel
{
    "activity": "added organization",
    "id": 3,
    "machine_scope": false,
    "system_scope": false,
    "type": "activity_type",
    "user_scope": false
}

Aktivitäts-Methoden

Eine Liste der Aktivitätsarten abrufen

GET /api/2/activity/types
Rückmeldung
HTTP status code: 200
Response body:
{
    "results": [
        ...a list of activity objects...
    ]
}

Einen Aktivitätsdatensatz abrufen

GET /api/2/activity/<activity_id>
Rückmeldung
HTTP status code: 200
Response body:
{
    ...an activity object...
}

Anlegen eines Aktivitätssatzes

POST /api/2/activity/create
Rückmeldung

Gibt den erstellten Aktivitätsdatensatz zurück.

HTTP status code: 200
Response body:
{
    ...an activity object...
}

Fehlermeldungen

Die folgenden Fehler können für jede Aktivitätsmethode auftreten und werden in den Methodenbeschreibungen nicht explizit erwähnt.

Authentifizierter Benutzer hat keinen Zugriff, um die Aktivität oder den Aktivitätstyp anzuzeigen oder zu ändern

HTTP status code: 403
Response body:
{
    "error": "forbidden"
}

Aktivität oder Aktivitätsart ist nicht vorhanden

HTTP status code: 404
Response body:
{
    "error": "not_found"
}

Authentifizierungsquelle


Authentifizierungs-Quellobjekt

Eine Authentifizierungsquelle stellt einen Verzeichnisserver dar, von dem Benutzer importiert werden können.

Eigenschaften

  • type string

    "auth_source"

  • id integer

    Die eindeutige Kennung für die Authentifizierungsquelle

  • host string

    Der Hostname des Verzeichnis-Servers

  • domain string

    Der Domänenname auf dem Verzeichnisserver, der für den Import von Benutzern verwendet werden soll

  • login string

    Der Benutzername, mit dem auf den Verzeichnisserver zugegriffen wurde

  • port integer

    Die Portnummer des Verzeichnis-Servers

  • protocol integer

  • ssl boolean

    Ob der Verzeichnisserver SSL/TLS verwendet

  • machine_id integer

  • nickname string

    Ein öffentlicher Spitzname für die Authentifizierungsquelle, der Besuchern auf der Anmeldeseite angezeigt wird

Beispiel
{
    "domain": "example.com",
    "host": "localhost",
    "id": 1,
    "login": "example",
    "machine_id": null,
    "port": null,
    "protocol": null,
    "ssl": false,
    "type": "auth_source"
}

Einen Link teilen

Eigenschaften

  • type string

    "file_sharelink"

  • id integer

    Der einzigartige Identifikator des Dateifreigabe-Link

  • hash string

    Der "öffentliche" Hash der genutzt wird, um einen einzigartigen Freigabe-Link zu erstellen

  • file object

    Das geteilte Datei Objekt

  • root_id integer

    Der Identifikator des Stammverzeichnis, welches die Datei enthält

  • creator_id integer

    Der Identifikator von der Erstellers des Freigabelinks

  • creator_name string

    Der Name des Erstellers des Freigabelinks

  • created string

    The date/time in UTC the share link was created in the format YYYY-MM-DDTHH:MM:SS

  • expires string

    Das Datum, an dem die Freigabe abläuft, im Format JJJJ-MM-TT oder null, wenn sie kein Ablaufdatum hat

  • login_required boolean

    Ob der Freigabe - Link öffentlich ist (false) oder nur für authentifizierte Nutzer zugänglich ist (true)

  • download_limit integer

    Die maximale Nummer, wie oft die Datei heruntergeladen werden kann oder null, wenn es kein Limit gibt

  • download_notify boolean

    Ob der Freigabe-Link Ersteller benachrichtigt wird, wenn die Datei heruntergeladen wird

  • anon_edit boolean

    Ob Dateien bearbeitet werden dürfen über die öffentliche Freigabe (z.B von anonymen Nutzern)

  • subscribers array

    Eine Liste von Abonnentenobjekten. Hinweis: Die Liste ist nicht immer vollständig, abhängig vom Kontext der Anfrage. Zum Beispiel, wenn Dateien und Ordner abrufen werden, die mit einem Gast geteilt werden, werden nur die Abonnentendaten des angefragten Gastes zurückgegeben.

  • times_downloaded integer

    Die Gesamtanzahl wie oft der Freigabelink heruntergeladen wurde. Kann je nach Kontext der Anfrage variieren.

  • times_viewed integer

    Gesamtanzahl der Zugriffe auf den Freigabelink. Kann je nach Kontext der Anfrage variieren.

  • url string

    Die URL des Freigabelinks.

Example
{
    "anon_edit": false,
    "created": "2019-03-27T10:42:34",
    "creator_name": "Jane Doe",
    "creator_id": 1,
    "download_limit": 1000,
    "download_notify": true,
    "expires": "2019-04-28",
    "file": {
        ...a file object...
    },
    "hash": "10d2d8d4e15e91",
    "id": 1,
    "login_required": true,
    "root_id": 1,
    "subscribers": [
        ...share link subscriber objects...
    ],
    "times_downloaded": 0,
    "times_viewed": 0,
    "type": "file_sharelink",
    "url": "http://example.com/shares/file/10d2d8d4e15e91/"
}

Eigenschaften

  • type string

    "folder_sharelink"

  • id integer

    Der eindeutiger Identifikator des Ordnerfreigabelinks

  • hash string

    Der "öffentliche" Hash, der verwendet wird, um die eindeutige URL für den Freigabelink zu erstellen

  • folder object

    Das geteilte Ordner Objekt

  • root_id integer

    Die Kennung des Stammverzeichnisses, das den freigegebenen Ordner enthält

  • creator_id integer

    Der Identifikator des Erstellers des Freigabelinks

  • creator_name string

    Der Name des Erstellers des Freigabelinks

  • created string

    Datum/Uhrzeit in UTC, in der der Freigabelink erstellt wurde, im Format YYYY-MM-DDTHH:MM:SS

  • expires string

    Das Datum, an dem der Freigabelink im Format JJJJ-MM-TT abläuft oder null, wenn er kein Ablaufdatum hat

  • login_required boolean

    Ob der Link öffentlich ist (false) oder nur von authentifizierten Nutzern geöffnet werden kann (true)

  • download_limit integer

    The maximum number of times the share link may be downloaded or null if there is no limit

  • download_notify boolean

    Ob der Ersteller des Freigabelinks benachrichtigt wird, wenn der freigegebene Ordner über den Freigabelink heruntergeladen wird

  • upload_notify boolean

    Ob der Ersteller des Freigabelinks benachrichtigt wird, wenn eine Datei über den Freigabelink in den freigegebenen Ordner hochgeladen wird

  • anon_edit boolean

    Ob Dateien über die öffentliche Freigabelink-URL bearbeitet werden dürfen (d. h. von anonymen Benutzern)

  • subscribers array

    ine Liste von Abonnentenobjekten. Hinweis: Die Liste ist nicht immer vollständig, abhängig vom Kontext der Anfrage. Zum Beispiel, wenn Dateien und Ordner abrufen werden, die mit einem Gast geteilt werden, werden nur die Abonnentendaten des angefragten Gastes zurückgegeben.

  • times_downloaded integer

    Gesamtanzahl der Downloads des freigegebenen Ordners. Kann je nach Kontext der Anfrage variieren.

  • times_viewed integer

    Gesamtanzahl der Zugriffe auf den Freigabelink. Kann je nach Kontext der Anfrage variieren.

  • url string

    Die URL des Freigabelinks.

Beispiel
{
    "anon_edit": false,
    "created": "2019-03-27T11:54:34",
    "creator_name": "Jane Doe",
    "creator_id": 1,
    "download_limit": null,
    "download_notify": false,
    "expires": null,
    "folder": {
        ...a folder object...
    },
    "hash": "10d2d8d4e15e91",
    "id": 1,
    "login_required": false,
    "root_id": 1,
    "subscribers": [
        ...share link subscriber objects...
    ],
    "times_downloaded": 0,
    "times_viewed": 0,
    "type": "folder_sharelink",
    "upload_notify": false,
    "url": "http://example.com/shares/folder/10d2d8d4e15e91/"
}

Eigenschaften

  • type string

    "sharelink_subscriber"

  • id integer

    Der eindeutige Identifikator des Share-Link-Abonnements

  • hash string

    Der Share-Hash des Abonnenten, der verwendet wird, um seine eindeutige Share-Link-URL zu erstellen

  • read_access boolean

    Ob der Abonnent Lesezugriff hat.

  • write_access boolean

    Ob der Abonnent Schreibzugriff hat

  • delete_access boolean

    Ob der Abonnent Löschzugriff hat.

  • subscriber_type string

    Der mit dem Abonnement verknüpfte Abonnententyp: Person, Gast, Gruppe oder E-Mail

  • subscriber object or string

    Ein Objekt, das zusätzliche Abonnentenmetadaten enthält wenn Subscriber_type eine person, guest oder group ist. Die E-Mail-Adresse des Abonnenten als String, wenn Subscriber_type email ist.

  • times_downloaded integer

    Wie oft die freigegebene Datei oder der freigegebene Ordner mit dem Freigabe-Hash des Abonnenten heruntergeladen wurde.

  • times_viewed integer

    Anzahl der Zugriffe auf den Share-Link mit dem Share-Hash des Abonnenten.

  • url string

    Die URL des Freigabelinks des Abonnenten.

Beispiele
{
    "delete_access": false,
    "hash": "d2d8d4e119105e",
    "id": 1,
    "read_access": true,
    "subscriber": {
        "email": "example@example.com",
        "id": 1,
        "name": "Jane Doe"
    },
    "subscriber_type": "person",
    "times_downloaded": 0,
    "times_viewed": 0,
    "type": "sharelink_subscriber",
    "write_access": false,
    "url": "http://example.com/shares/file/d2d8d4e119105e/"
}

Die Methoden Links zu teilen

Erhalten Sie einen Freigabelink nach ID

GET /api/2/sharelinks/<sharelink_id>
Query Parameters
  • include_subscribers: ob Abonnenten des Freigabelinks in die Antwort aufgenommen werden sollen. Nur der Ersteller der Freigabe oder ein Administrator können alle Abonnenten für einen Freigabelink anzeigen; andernfalls enthält die Antwort nur das Teilnehmerobjekt des Anforderers. "richtig oder falsch". Standardwert "falsch".
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a file share link object or a folder share link object...
}

Erhalte einen Freigabe-Link über hash

GET /api/2/sharelinks/<hash>
Query Parameters
  • include_subscribers: ob Abonnenten des Freigabelinks in die Antwort aufgenommen werden sollen. Nur der Ersteller der Freigabe oder ein Administrator können alle Abonnenten für einen Freigabelink anzeigen; andernfalls enthält die Antwort nur das Teilnehmerobjekt des Anforderers. "richtig oder falsch". Standardwert "falsch".
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a file share link object or a folder share link object...
}

Aktualisierung eines Freigabelinks

PUT /api/2/sharelinks/<sharelink_id>
Felder
Optional
  • login_required: ob der link öffentlich ist (false) oder nur durch einen authentifizierten Nutzern aufgerufen werden kann.(true). "true" or "false".
  • expires: das Datum im Format JJJJ-MM-TT, an dem der Freigabelink abläuft.
  • download_limit: die maximale Anzahl, die der Freigabelink heruntergeladen werden kann
  • download_notify:ob der Ersteller des Freigabelinks benachrichtigt wird, wenn die freigegebene Datei oder der freigegebene Ordner über den Freigabelink heruntergeladen wird. "richtig oder falsch".
  • upload_notify: ob der Ersteller des Freigabelinks benachrichtigt wird, wenn eine Datei über den Freigabelink in den freigegebenen Ordner hochgeladen wird. "richtig oder falsch". Gilt nur für Ordnerfreigabelinks.
  • anon_edit: ob Dateien über die öffentliche Freigabelink-URL bearbeitet werden dürfen (d. h. von anonymen Benutzern). "richtig oder falsch".
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a file share link object or a folder share link object...
}

Löschen eines Freigabelinks

DELETE /api/2/sharelinks/<sharelink_id>
Rückmeldung
HTTP status code: 200

Fügen Sie einen Abonnenten für einen Link zum Teilen per E-Mail hinzu

POST /api/2/sharelinks/<sharelink_id>/subscribers
Felder
Benötigt
  • email: Die E-mail Adresse des Abonnenten
Optional
  • write_access: ob der Abonnent Zugriff zum Hochladen und Bearbeiten von Dateien in einem freigegebenen Ordner hat. "richtig oder falsch". Standardwert "falsch".
  • delete_access: ob der Abonnent Zugriff zum Löschen von Dateien aus einem freigegebenen Ordner hat. Gilt nur für Ordnerfreigabelinks. "richtig oder falsch". Standardwert "falsch".
  • notify: ob der Abonnent über das neue Abonnement benachrichtigt werden soll. "richtig oder falsch". Standardwert "wahr".
  • message: eine zusätzliche Nachricht, die in die Abonnementbenachrichtigung aufgenommen werden soll, wenn Benachrichtigung "wahr" ist. Standard keine.
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a share link subscriber object...
}

Fügen Sie einen Abonnenten für einen Freigabelink nach Typ und ID hinzu

POST /api/2/sharelinks/<sharelink_id>/subscribers
Felder
Benötigt
  • subscriber_type: der Abonnententyp ("person", "guest", or "group").
  • subscriber_id: die ID des Abonnenten (z.B die Gruppen ID, wenn der Abonnententyp = "group" ist).
Optional
  • write_access: ob der Abonnent Zugriff zum Hochladen und Bearbeiten von Dateien in einem freigegebenen Ordner hat. "richtig oder falsch". Standardwert "falsch".
  • delete_access: ob der Abonnent Zugriff zum Löschen von Dateien aus einem freigegebenen Ordner hat. Gilt nur für Ordnerfreigabelinks. "richtig oder falsch". Standardwert "falsch".
  • notify: ob der Abonnent über das neue Abonnement benachrichtigt werden soll. "richtig oder falsch". Standardwert "wahr".
  • message: eine zusätzliche Nachricht, die in die Abonnementbenachrichtigung aufgenommen werden soll, wenn Benachrichtigung "wahr" ist. Standard keine.
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a share link subscriber object...
}

Aktualisieren eines Abonnenten für einen Freigabelink

PUT /api/2/sharelinks/<sharelink_id>/subscribers/<subscriber_id>
Felder
Optional
  • write_access: ob der Abonnent Zugriff zum Hochladen und Bearbeiten von Dateien in einem freigegebenen Ordner hat. "richtig oder falsch". Standardwert "falsch".
  • delete_access: ob der Abonnent Zugriff zum Löschen von Dateien aus einem freigegebenen Ordner hat. Gilt nur für Ordnerfreigabelinks. "richtig oder falsch". Standardwert "falsch".
  • notify: ob der Abonnent über das neue Abonnement benachrichtigt werden soll. "richtig oder falsch". Standardwert "wahr".
  • message: eine zusätzliche Nachricht, die in die Abonnementbenachrichtigung aufgenommen werden soll, wenn Benachrichtigung "wahr" ist. Standard keine.
Response
HTTP status code: 200
Response body:
{
    ...a share link subscriber object...
}

Löschen eines Abonnenten für einen Freigabelink

DELETE /api/2/sharelinks/<sharelink_id>/subscribers/<subscriber_id>
Rückmeldung
HTTP status code: 200

Geteilte Content-Methoden

Metadaten für den Freigabelink-Ordner abrufen

GET /api/2/sharelinks/<sharelink_id>/files
GET /api/2/sharelinks/<hash>/files
GET /api/2/sharelinks/<sharelink_id>/files/folder/<folder_id>
GET /api/2/sharelinks/<hash>/files/folder/<folder_id>
Query Parameters
  • include_ancestors: ob die Revisionen des Ordners in die Antwort aufgenommen werden sollen. "richtig oder falsch". Standardwert "falsch".
  • include_children: ob die untergeordneten Ordner / Kinder des Ordners in die Antwort eingeschlossen werden sollen. "richtig oder falsch". Standardwert "wahr".
  • include_lock_info: ob gesperrte Dateien in die Antwort mitaufgenommen werden sollen. "richtig oder falsch". Standardwert "wahr".
  • hash: der Hashwert, der vom letzten Aufruf dieser Methode zurückgegeben wurde. Nur verwendet, wenn include_children gleich "wahr" ist.
Response
HTTP status code: 200
Response body:
{
    ...a folder object...
}

children ist eine Liste von Datei- und Ordnermetadatenobjekten innerhalb des Ordners. Es ist nur vorhanden, wenn include_children gelich "wahr" ist.

Der hash Wert repräsentiert eine Signatur für die Antwortdaten. Ist der Hashwert in der Antwort identisch mit dem vom Client übergebenen Hash-Wert, wird "HTTP 304 Not Modified" zurückgegeben. hash ist nur vorhanden wenn include_children gleich "wahr" ist.


Abrufen von Metadaten für die Kinder eines freigegebenen Ordners

GET /api/2/sharelinks/<sharelink_id>/files/children
GET /api/2/sharelinks/<hash>/files/children
GET /api/2/sharelinks/<sharelink_id>/files/folder/<folder_id>/children
GET /api/2/sharelinks/<hash>/files/folder/<folder_id>/children

Gibt Metadaten für die unmittelbar untergeordneten Elemente eines freigegebenen Ordners mit Optionen zum Sortieren und Paginieren zurück.

Query Parameters
  • include_deleted: ob gelöschte Kinder in die Antwort aufgenommen werden sollen. "richtig oder falsch". Standardwert "wahr".
  • include_lock_info: ob gesperrte Dateien in die Antwort aufgenommen werden sollen. "richtig oder falsch". Standardwert "wahr".
  • include_permissions: ob die Datei- und Ordnerberechtigungen des Benutzers in die Antwort aufgenommen werden sollen. "richtig oder falsch". Standardwert "falsch".
  • sort_by: das Feld, nach dem sortiert werden soll: "name", "modified", or "size". Standardwert "name".
  • sort_order: Die Sortier# "asc" or "desc". Standardwert "asc".
  • page: die Ergebnisseite, um zurückzukehren: 1 bis max_page. Standardwert 1.
  • page_size: die Anzahl der Ergebnisse, die pro Seite zurückgegeben werden sollen: 1 bis 100. Standardwert 20.
Rückmeldung
HTTP status code: 200
Response body:
{
    "page": 1,
    "page_size": 20,
    "max_page": 3,
    "results": [
        ...up to page_size file and folder objects...
    ],
    "total": 42
}

Abrufen von Metadaten für die Freigabelinks

GET /api/2/sharelinks/<sharelink_id>/files/<file_id>
GET /api/2/sharelinks/<hash>/files/<file_id>
Query Parameters
  • include_ancestors: ob die Vorfahren der Datei in die Antwort aufgenommen werden sollen. "richtig oder falsch". Standardwert "falsch".
  • include_lock_info: ob gesperrte Informationen in die Antwort aufgenommen werden sollen. "richtig oder falsch". Standardwert "wahr".
Rückmeldung
HTTP status code: 200
Response body:
{
    ...a file object...
}

Alle Inhalte des Share-Links herunterladen

GET /api/2/sharelinks/<sharelink_id>/download
GET /api/2/sharelinks/<sharelink_id>/view

Diese Endpunkte werden verwendet, um den vollständigen Inhalt eines Freigabelinks, die Datei selbst für einen Freigabenlink oder den gezippten Inhalt eines freigegebenen Ordners herunterzuladen.

Ob die Datei heruntergeladen wird von dem download Endpunkt oder dem view Endpunkt, entscheidet die Content-Verteilung in der Antwort -- attachment or inline. Ein geteilter Ordner unterstützt nicht view und wird mit einem 404 antworten.

Query Parameters
Optional
  • file_ids: eine durch Kommas getrennte Liste von Datei-IDs, die in den Download eingeschlossen werden sollen. Es müssen direkte untergeordnete Elemente / Kinder der in der Anforderung angegebenen Ressource sein. Nur für den Endpunkt Download verfügbar.
  • folder_ids: eine durch Kommas getrennte Liste von Ordner-IDs, die in den Download eingeschlossen werden sollen. Es müssen direkte untergeordnete Elemente / Kinder der in der Anforderung angegebenen Ressource sein. Nur für den Endpunkt Download verfügbar.

Wenn entweder file_ids oder folder_ids vorhanden ist, wird der Download nur die bestimmten Elemente enthalten.

Rückmeldung
HTTP status code: 200
Response body:
<binary file data>

Laden Sie eine Datei in einem freigegebenen Ordner herunter

GET /api/2/sharelinks/<sharelink_id>/files/<file_id>/download
GET /api/2/sharelinks/<sharelink_id>/files/<file_id>/view
GET /api/2/sharelinks/<hash>/files/<file_id>/download
GET /api/2/sharelinks/<hash>/files/<file_id>/view

Diese Endpunkte werde genutzt, um eine spezifische Datei in einem geteilten Ordner herunterzuladen.

Ob die Datei über den download Endpunkt oder den view Endpunkt heruntergeladen wird, bestimmt die Content-Verteilung in der Anwort-- attachment or inline.

Rückmeldung
HTTP status code: 200
Response body:
<binary file data>

Laden Sie einen Unterordner eines freigegebenen Ordners herunter

GET /api/2/sharelinks/<sharelink_id>/files/folder/<folder_id>/download
GET /api/2/sharelinks/<hash>/files/folder/<folder_id>/download

Diese Endpunkte werden verwendet, um einen bestimmten Ordner innerhalb eines freigegebenen Ordners als ZIP-Datei herunterzuladen.

Query Parameters
Optional
  • file_ids: eine durch Kommas getrennte Liste von Datei-IDs, die in den Download eingeschlossen werden soll. Es müssen direkte untergeordnete Elemente der in der Anforderung angegebenen Ressource sein. Nur Verfügbar für den download Endpunkt.
  • folder_ids: eine durch Kommas getrennte Liste von Ordner-IDs, die in den Download eingeschlossen werden soll. Es müssen direkte untergeordnete Elemente der in der Anforderung angegebenen Ressource sein. Nur Verfügbar für den download Endpunkt..

If either file_ids or folder_ids is present, the download will include only the items specified.

Rückmeldung
HTTP status code: 200
Response body:
<binary file data>

Erstellen Sie einen Unterordner in einem freigegebenen Ordner

POST /api/2/sharelinks/<sharelink_id>/files/create_folder
POST /api/2/sharelinks/<hash>/files/create_folder
POST /api/2/sharelinks/<sharelink_id>/files/folder/<folder_id>/create_folder
POST /api/2/sharelinks/<hash>/files/folder/<folder_id>/create_folder
Felder
  • name: Der neue Ordnername benötigt.
Rückmeldung
HTTP status code: 200
Response body:
{
    ...folder metadata...
}
Fehlermeldungen
Ungültiger Ordnername
HTTP status code: 400
Response body:
{
    "error": "invalid_name"
}
Ordername ist zu lang
HTTP status code: 400
Response body:
{
    "error": "name_too_long"
}
Ein Ordner mit dem gleichen Name existiert bereits
HTTP status code: 409
Response body:
{
    "error": "name_conflict"
}

Fehlermeldungen

Die folgenden Fehler können bei jeder Share-Link-Methode auftreten und werden in den Methodenbeschreibungen nicht explizit erwähnt.

Authentifizierter Benutzer hat keinen Zugriff zum Anschauen oder Bearbeiten des Freigabelinks

HTTP status code: 403
Response body:
{
    "error": "forbidden"
}

Freigabe - Link existiert nicht

HTTP status code: 404
Response body:
{
    "error": "not_found"
}