Zum Inhalt

Verwendung von Projekt-Zugriffstoken

In dieser Anleitung erfährst Du, wie Du programmatisch mit DATAMIMIC-Projekten über Projekt-Zugriffstoken interagieren kannst. Dieser Ansatz ermöglicht Dir die Verwaltung Deiner Projekte und die Generierung von Daten über API-Aufrufe, was besonders nützlich für Automatisierung und CI/CD-Pipelines ist.

Voraussetzungen

  • Ein DATAMIMIC-Projekt
  • curl auf Deinem System installiert
  • jq auf Deinem System installiert (für JSON-Verarbeitung)
  • base64 Kommandozeilen-Tool

Erste Schritte

  1. Klone die Demo Basic JSON aus dem DATAMIMIC Demo Store.
  2. Füge ein neues Projekt-Zugriffstoken hinzu für dieses neu geklonte Demo-Projekt.
  3. Notiere Dir sowohl die Project ID als auch das neue Project Access Token.

Grundlegende Operationen

Projektdateien lesen

Um den Inhalt einer Datei (z.B. datamimic.xml) zu lesen und in einer lokalen Datei namens datamimic.xml zu speichern:

1
2
3
4
5
curl -X 'GET' \
  'https://your-datamimic-instance/api/v1/{project-id}/file/read/datamimic.xml' \
  -H 'accept: application/json' \
  -H 'Authorization: Bearer {your-access-token}' | \
  jq -r | base64 --decode > datamimic.xml

Projektdateien aktualisieren

Nimm lokal die gewünschten Änderungen am Dateiinhalt vor und aktualisiere ihn dann im System.

Um den Inhalt einer Datei zu aktualisieren:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
curl -X 'POST' \
  'https://your-datamimic-instance/api/v1/{project-id}/files/update' \
  -H 'accept: application/json' \
  -H 'Authorization: Bearer {your-access-token}' \
  -H 'Content-Type: application/json' \
  -d "$(jq -nc --arg code "$(base64 -w 0 -i datamimic.xml)" \
    '[{
      code: $code,
      encoding: "utf-8",
      extension: ".xml",
      index: 0,
      name: "datamimic",
      uri: "{project-id}/datamimic.xml"
    }]')"

Daten generieren

Um die Datengenerierung zu starten:

1
2
3
4
curl -X 'POST' \
  'https://your-datamimic-instance/api/v1/{project-id}/generate' \
  -H 'accept: application/json' \
  -H 'Authorization: Bearer {your-access-token}'

Dieser Aufruf gibt eine Task ID zurück, mit der Du den Generierungsfortschritt verfolgen und Artefakte herunterladen kannst.

Generierte Daten herunterladen

Um generierte Artefakte herunterzuladen und anzuzeigen:

1
2
3
curl -X 'GET' \
  'https://your-datamimic-instance/api/v1/{project-id}/task/{task-id}/artifact/download/person/json' \
  -o person.json && jq . person.json

Beispiel-Workflow

Hier ist ein vollständiges Beispiel eines typischen Workflows:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# Setze Deine Variablen
PROJECT_ID="your-project-id"
ACCESS_TOKEN="your-access-token"
API_BASE="https://your-datamimic-instance/api/v1"

# Aktuelle Konfiguration lesen
curl -X 'GET' \
  "${API_BASE}/${PROJECT_ID}/file/read/datamimic.xml" \
  -H "Authorization: Bearer ${ACCESS_TOKEN}" | \
  jq -r | base64 --decode > datamimic.xml

# Ändere datamimic.xml nach Bedarf

# Konfiguration aktualisieren
curl -X 'POST' \
  "${API_BASE}/${PROJECT_ID}/files/update" \
  -H "Authorization: Bearer ${ACCESS_TOKEN}" \
  -H 'Content-Type: application/json' \
  -d "$(jq -nc --arg code "$(base64 -w 0 -i datamimic.xml)" \
    '[{
      code: $code,
      encoding: "utf-8",
      extension: ".xml",
      index: 0,
      name: "datamimic",
      uri: "'${PROJECT_ID}'/datamimic.xml"
    }]')"

# Daten generieren
TASK_ID=$(curl -X 'POST' \
  "${API_BASE}/${PROJECT_ID}/generate" \
  -H "Authorization: Bearer ${ACCESS_TOKEN}" | \
  jq -r '.task_id')

# Ergebnisse herunterladen und anzeigen
curl -X 'GET' \
  "${API_BASE}/${PROJECT_ID}/task/${TASK_ID}/artifact/download/person/json" \
  -o person.json && jq . person.json

Note

Ersetze your-datamimic-instance, {project-id}, {task-id} und {your-access-token} in allen Beispielen durch Deine tatsächlichen Werte.

Zusammenfassung

In dieser Anleitung haben wir besprochen, wie Du programmatisch mit DATAMIMIC-Projekten über Projekt-Zugriffstoken interagieren kannst. Hier ist eine Zusammenfassung der wichtigsten Konzepte und Operationen:

  1. Setup und Authentifizierung:

    • DATAMIMIC-Projekt erstellt/verwendet
    • Projekt-Zugriffstoken generiert
    • Token für API-Authentifizierung verwendet
  2. Grundlegende Operationen:

    • Projektdateien über GET-Anfragen lesen
    • Dateiinhalte über POST-Anfragen aktualisieren
    • Datengenerierung auslösen
    • Generierte Artefakte herunterladen und anzeigen
  3. Workflow-Integration:

    • Operationen zu einem vollständigen Workflow kombinieren
    • Umgebungsvariablen für die Konfiguration nutzen
    • Grundlegende Automatisierungsmuster implementieren

Diese API-Operationen ermöglichen Dir die Automatisierung der DATAMIMIC-Projektverwaltung und die Integration in Deine Entwicklungs-Workflows, CI/CD-Pipelines oder benutzerdefinierten Anwendungen.