API-Referenz: Data-Management
Dataset Endpoints
Datasets sind Sammlungen zusammengehöriger Datatables, die logisch verbunden sind.
Datasets auflisten
Alle Datasets in einem Tenant abrufen.
Endpoint: GET /tenant/{tenantId}/datasets
Parameter:
| Name | Typ | Ort | Erforderlich | Beschreibung |
|---|---|---|---|---|
| tenantId | string | path | Ja | Eindeutige Kennung des Tenants |
Response:
[
{
"id": "f6a7b8c9-d0e1-2345-fab6-789012345678",
"displayName": "Sales Data",
"createdAt": "2024-01-20T08:00:00Z",
"datatableCount": 3
}
]
Dataset erstellen
Erstellt ein neues Dataset in einem Tenant.
Endpoint: POST /tenant/{tenantId}/datasets
Parameter:
| Name | Typ | Ort | Erforderlich | Beschreibung |
|---|---|---|---|---|
| tenantId | string | path | Ja | Eindeutige Kennung des Tenants |
Request Body:
{
"displayName": "My New Dataset",
"treeNodeType": "Dataset",
"treeParentId": null
}
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
| displayName | string | Ja | Name des Datasets |
| treeNodeType | string | Nein | Muss Dataset (Standard) oder TreeGroup sein |
| treeParentId | string | Nein | Parent-Folder-ID zur Organisation von Datasets |
Response: Gibt das erstellte Dataset-Objekt zurück.
Dataset abrufen
Details zu einem bestimmten Dataset abrufen.
Endpoint: GET /tenant/{tenantId}/datasets/{datasetId}
Parameter:
| Name | Typ | Ort | Erforderlich | Beschreibung |
|---|---|---|---|---|
| tenantId | string | path | Ja | Eindeutige Kennung des Tenants |
| datasetId | string | path | Ja | Eindeutige Kennung des Datasets |
Response:
{
"id": "f6a7b8c9-d0e1-2345-fab6-789012345678",
"displayName": "Sales Data",
"createdAt": "2024-01-20T08:00:00Z",
"datatables": [
{
"id": "a7b8c9d0-e1f2-3456-abc7-890123456789",
"displayName": "Orders",
"rowCount": 15000
}
]
}
Dataset löschen
Löscht ein Dataset samt aller zugehörigen Datatables.
Endpoint: DELETE /tenant/{tenantId}/datasets/{datasetId}
Parameter:
| Name | Typ | Ort | Erforderlich | Beschreibung |
|---|---|---|---|---|
| tenantId | string | path | Ja | Eindeutige Kennung des Tenants |
| datasetId | string | path | Ja | Eindeutige Kennung des Datasets |
Response:
{
"success": true
}
warning
Das Löschen eines Datasets entfernt alle verbundenen Datatables und Daten dauerhaft. Diese Aktion kann nicht rückgängig gemacht werden.
Datatable Endpoints
Datatables speichern die eigentlichen Event-Log-Daten, die für Process Mining genutzt werden.
Datatables auflisten
Alle Datatables in einem Tenant abrufen.
Endpoint: GET /tenant/{tenantId}/datatables
Parameter:
| Name | Typ | Ort | Erforderlich | Beschreibung |
|---|---|---|---|---|
| tenantId | string | path | Ja | Eindeutige Kennung des Tenants |
Response:
[
{
"id": "a7b8c9d0-e1f2-3456-abc7-890123456789",
"displayName": "Orders 2024",
"datasetId": "f6a7b8c9-d0e1-2345-fab6-789012345678",
"rowCount": 15000,
"createdAt": "2024-01-25T10:00:00Z"
}
]
Datatable erstellen
Erstellt eine neue Datatable in einem vorhandenen Dataset.
Endpoint: POST /tenant/{tenantId}/datasets/{datasetId}/datatables
Parameter:
| Name | Typ | Ort | Erforderlich | Beschreibung |
|---|---|---|---|---|
| tenantId | string | path | Ja | Eindeutige Kennung des Tenants |
| datasetId | string | path | Ja | Eindeutige Kennung des Datasets |
Request Body:
{
"displayName": "Orders Q1 2024"
}
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
| displayName | string | Ja | Name der Datatable |
Response: Gibt das erstellte Datatable-Objekt zurück.
Datatable abrufen
Details zu einer bestimmten Datatable abrufen.
Endpoint: GET /tenant/{tenantId}/datatable/{datatableId}
Parameter:
| Name | Typ | Ort | Erforderlich | Beschreibung |
|---|---|---|---|---|
| tenantId | string | path | Ja | Eindeutige Kennung des Tenants |
| datatableId | string | path | Ja | Eindeutige Kennung der Datatable |
Response:
{
"id": "a7b8c9d0-e1f2-3456-abc7-890123456789",
"displayName": "Orders 2024",
"datasetId": "f6a7b8c9-d0e1-2345-fab6-789012345678",
"rowCount": 15000,
"columns": [
{"name": "case_id", "type": "string"},
{"name": "activity", "type": "string"},
{"name": "timestamp", "type": "datetime"}
],
"createdAt": "2024-01-25T10:00:00Z"
}
Presigned Upload URL abrufen
Temporäre URL für den direkten Upload einer Datei in eine Datatable erhalten.
Endpoint: GET /tenant/{tenantId}/datatable/{datatableId}/uploads/presignedurl
Parameter:
| Name | Typ | Ort | Erforderlich | Beschreibung |
|---|---|---|---|---|
| tenantId | string | path | Ja | Eindeutige Kennung des Tenants |
| datatableId | string | path | Ja | Eindeutige Kennung der Datatable |
| datasetid | string | query | Ja | Eindeutige Kennung des Datasets |
| filename | string | query | Ja | Name der hochzuladenden Datei |
| filesize | string | query | Ja | Dateigröße in Bytes |
| filelastmodified | string | query | Ja | Timestamp der letzten Änderung der Datei |
| validforseconds | string | query | Nein | Gültigkeitsdauer der URL in Sekunden (Standard: 3600) |
Response:
{
"PreSignedUploadUrl": "https://s3.amazonaws.com/bucket/path?X-Amz-Algorithm=AWS4-HMAC-SHA256&..."
}
Verwendung: Nutze die zurückgegebene URL, um eine Datei per HTTP PUT hochzuladen:
# Erhalte die presigned URL mit den erforderlichen Parametern
URL=$(curl -s -H "X-API-Key: your-api-key" \
"https://api.processmind.com/tenant/{tenantId}/datatable/{datatableId}/uploads/presignedurl?datasetid={datasetId}&filename=data.csv&filesize=1024&filelastmodified=1704067200000")
# Datei hochladen
curl -X PUT --upload-file "data.csv" -H "Content-Type: text/csv" "$URL"
info
Presigned URLs laufen nach kurzer Zeit ab. Nutze die URL zeitnah nach Erhalt. Falls der Upload fehlschlägt, fordere eine neue presigned URL an.