Zum Hauptinhalt springen

Dokumente

Die Dokumentenverwaltung in InLoox umfasst drei Entitäten: Document, DocumentFolder und DocumentFolderStructure. Über die OData-API können Sie Dokumente hochladen, verknüpfen, Ordnerstrukturen verwalten und automatische Ordnerregeln definieren.

Entitätsübersicht
EntitätBeschreibung
DocumentEinzelnes Dokument (Datei, Hyperlink oder Dateiverweis)
DocumentFolderOrdner innerhalb der Projektdokumentenstruktur
DocumentFolderStructureAutomatische Ordnerstrukturregeln

Document

Datenmodell

PropertyTypeDescription
DocumentIdGuid (UUID)Eindeutiger Bezeichner des Dokuments (Primärschlüssel).
FileNamestring?Dateiname.
ProjectIdGuid?Zugehöriges Projekt.
DocumentFolderIdGuidZugehöriger Ordner.
DescriptionHTMLstring?Beschreibung als HTML.
OutlookPreviewTextstring?Vorschautext aus Outlook.
IsInternetLinkbooleanGibt an, ob das Dokument ein Hyperlink ist.
IsFileLinkbooleanGibt an, ob das Dokument ein Dateiverweis ist.
IsStandardFilebooleanGibt an, ob es sich um eine Standarddatei handelt.
StoreTypeint32Speichertyp (z. B. InLoox, SharePoint, Dateisystem).
PhysicalIdstring?Physische ID im Speichersystem.
IsOrphanedbooleanGibt an, ob das Dokument verwaist ist.
SourceFolderstring?Quellordner.
DocumentFolderPathstring?Vollständiger Ordnerpfad.
CreatedByContactIdGuid?Ersteller des Dokuments.
FileTypestring?Dateityp (Erweiterung).
Statestring?Dokumentstatus.
UpdatedAtDateTimeOffset?Zeitpunkt der letzten Aktualisierung.
CreatedAtDateTimeOffset?Erstellungszeitpunkt.

Endpunkte

CRUD-Operationen

GET/odata/Document

Alle Dokumente abrufen. Unterstützt OData-Abfrageparameter.

POST/odata/Document

Neues Dokument erstellen.

ParameterTypeRequiredDescription
BodyDelta<ApiDocument>JSON-Objekt mit den Dokumenteigenschaften.
GET/odata/Document({key})

Ein einzelnes Dokument abrufen.

ParameterTypeRequiredDescription
keyGuidDie DocumentId.
PATCH/odata/Document({key})

Dokument teilweise aktualisieren.

ParameterTypeRequiredDescription
keyGuidDie DocumentId.
BodyDelta<ApiDocument>JSON-Objekt mit den zu aktualisierenden Feldern.
DELETE/odata/Document({key})

Dokument löschen.

ParameterTypeRequiredDescription
keyGuidDie DocumentId.
GET/odata/Document/$count

Gesamtanzahl aller Dokumente abrufen.

Notizen

POST/odata/Document({key})/AddNote

Eine Notiz zum Dokument hinzufügen.

ParameterTypeRequiredDescription
keyGuidDie DocumentId.
BodyobjectJSON-Objekt mit dem Notizinhalt.
GET/odata/Document/DeleteNote(noteRelationId={noteRelationId})

Eine Notiz vom Dokument löschen.

ParameterTypeRequiredDescription
noteRelationIdGuidDie ID der Notizverknüpfung.

Verknüpfungen & Objekte

GET/odata/Document({key})/GetDocumentsForObject()

Alle Dokumente für ein bestimmtes Objekt abrufen.

ParameterTypeRequiredDescription
keyGuidDie Objekt-ID.
GET/odata/Document({key})/GetRelatedItems()

Verknüpfte Elemente eines Dokuments abrufen.

ParameterTypeRequiredDescription
keyGuidDie DocumentId.

Favoriten

GET/odata/Document({key})/ToggleFavorite(isFavorite={isFavorite})

Favoritenstatus eines Dokuments umschalten.

ParameterTypeRequiredDescription
keyGuidDie DocumentId.
isFavoritebooleantrue zum Markieren als Favorit, false zum Entfernen.
POST/odata/Document/AddFileLink

Einen Dateiverweis erstellen.

ParameterTypeRequiredDescription
BodyobjectJSON-Objekt mit dem Dateipfad und den Projektdetails.
POST/odata/Document/AddHyperlink

Einen Hyperlink erstellen.

ParameterTypeRequiredDescription
BodyobjectJSON-Objekt mit der URL und den Projektdetails.
POST/odata/Document/ChangeFileLink

Einen bestehenden Dateiverweis ändern.

ParameterTypeRequiredDescription
BodyobjectJSON-Objekt mit der Dokument-ID und dem neuen Pfad.

Sonderfunktionen

GET/odata/Document/GetFileUploadSizeLimit()

Maximale Datei-Upload-Größe abrufen.

GET/odata/Document/GetTrackedDocumentsForProject(projectId={projectId})

Getrackte Dokumente eines Projekts abrufen.

ParameterTypeRequiredDescription
projectIdGuidDie Projekt-ID.
GET/odata/Document/HasDocumentWithInternetMessageIdInProject(internetMessageId={internetMessageId},projectId={projectId})

Prüfen, ob ein Dokument mit einer bestimmten Internet-Nachrichten-ID im Projekt existiert.

ParameterTypeRequiredDescription
internetMessageIdstringDie Internet-Nachrichten-ID (aus E-Mail-Header).
projectIdGuidDie Projekt-ID.
E-Mail-Tracking

Mit HasDocumentWithInternetMessageIdInProject können Sie prüfen, ob eine E-Mail bereits im Projekt gespeichert wurde. Verwenden Sie GetTrackedDocumentsForProject, um alle getrackten E-Mail-Dokumente eines Projekts aufzulisten.


DocumentFolder

Datenmodell

PropertyTypeDescription
DocumentFolderIdGuid (UUID)Eindeutiger Bezeichner des Ordners.
ParentDocumentFolderIdGuid?Übergeordneter Ordner (null = Stammordner).
FolderNamestring?Ordnername.
RelativePathstring?Relativer Pfad des Ordners.
ProjectIdGuid?Zugehöriges Projekt.
IsOrphanedbooleanGibt an, ob der Ordner verwaist ist.
CreatedDateDateTimeOffsetErstellungsdatum.

Endpunkte

GET/odata/DocumentFolder

Alle Dokumentenordner abrufen.

POST/odata/DocumentFolder

Neuen Ordner erstellen.

ParameterTypeRequiredDescription
BodyDelta<ApiDocumentFolder>JSON-Objekt mit den Ordnereigenschaften.
GET/odata/DocumentFolder({key})

Einen einzelnen Ordner abrufen.

ParameterTypeRequiredDescription
keyGuidDie DocumentFolderId.
PATCH/odata/DocumentFolder({key})

Ordner aktualisieren.

ParameterTypeRequiredDescription
keyGuidDie DocumentFolderId.
BodyDelta<ApiDocumentFolder>JSON-Objekt mit den zu aktualisierenden Feldern.
DELETE/odata/DocumentFolder({key})

Ordner löschen.

ParameterTypeRequiredDescription
keyGuidDie DocumentFolderId.
GET/odata/DocumentFolder/$count

Gesamtanzahl der Ordner abrufen.


DocumentFolderStructure

Die DocumentFolderStructure-Entität definiert automatische Ordnerstrukturregeln, die beim Erstellen neuer Projekte angewendet werden.

Datenmodell

PropertyTypeDescription
DocumentStructureIdGuid (UUID)Eindeutiger Bezeichner der Strukturregel.
FolderPathstring?Ordnerpfad, der automatisch erstellt wird.
RuleFieldstring?Feld, auf dem die Regel basiert.
RuleExpressionstring?Regelausdruck für die automatische Erstellung.

Endpunkte

GET/odata/DocumentFolderStructure

Alle Ordnerstrukturregeln abrufen.

POST/odata/DocumentFolderStructure

Neue Ordnerstrukturregel erstellen.

ParameterTypeRequiredDescription
BodyDelta<ApiDocumentFolderStructure>JSON-Objekt mit den Regeleigenschaften.
PATCH/odata/DocumentFolderStructure({key})

Ordnerstrukturregel aktualisieren.

ParameterTypeRequiredDescription
keyGuidDie DocumentStructureId.
BodyDelta<ApiDocumentFolderStructure>JSON-Objekt mit den zu aktualisierenden Feldern.
DELETE/odata/DocumentFolderStructure({key})

Ordnerstrukturregel löschen.

ParameterTypeRequiredDescription
keyGuidDie DocumentStructureId.
GET/odata/DocumentFolderStructure/$count

Gesamtanzahl der Ordnerstrukturregeln abrufen.


OData-Abfragebeispiele

Alle Dokumente eines Projekts

GET /odata/Document?$filter=ProjectId eq 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'
GET /odata/Document?$filter=IsInternetLink eq true

Dokumente nach Dateityp filtern

GET /odata/Document?$filter=FileType eq '.pdf'

Ordnerstruktur eines Projekts

GET /odata/DocumentFolder?$filter=ProjectId eq 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'&$orderby=RelativePath
POST /odata/Document/AddHyperlink
Content-Type: application/json

{
"Url": "https://example.com/spezifikation",
"DisplayName": "Technische Spezifikation",
"ProjectId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"DocumentFolderId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}

Neuen Ordner erstellen

POST /odata/DocumentFolder
Content-Type: application/json

{
"FolderName": "Verträge",
"ProjectId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"ParentDocumentFolderId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
Speichertypen

InLoox unterstützt verschiedene Speichertypen (StoreType): InLoox Cloud-Speicher, SharePoint, Dateisystem und mehr. Der Wert von StoreType bestimmt, wie das Dokument physisch gespeichert wird.