Files
Brancheneinstufung2/notion_integration.md
Floke 66f759391b feat(notion): Initial PoC for Notion Integration
- Added documentation for Notion setup and resources (notion_integration.md).

- Added scripts for authentication test, database creation, and product insertion.

- Successfully tested connection and data mapping for 'RoboPlanet Product Master'.
2026-01-06 20:33:18 +00:00

3.0 KiB

Notion Integration Dokumentation

Stand: 06. Januar 2026 Status: Proof of Concept (PoC) erfolgreich

Diese Dokumentation beschreibt die erfolgreiche Anbindung der GTM Architect Engine an Notion. Es wurden Skripte erstellt, um eine Verbindung herzustellen, Seiten und Datenbanken anzulegen und strukturierte Produktdaten (Hard Facts) automatisch einzutragen.

1. Konfiguration

  • API Token: Das Notion-Token wird aus der Datei notion_api_key.txt (im Root-Verzeichnis) gelesen. Diese Datei ist im .gitignore und wird nicht versioniert.
  • Bot Identity: "RoboPlanet GTM Engine"

2. Ressourcen IDs

Wichtige IDs für die weitere Entwicklung und Integration:

  • Root Page (Roboplanet): 2e088f42-8544-8024-8289-deb383da3818
  • Product Master Database: 2e088f42-8544-815e-a3f9-e226f817bded

3. Skripte (PoC)

Folgende Python-Skripte wurden entwickelt und getestet:

3.1. hello_notion.py

  • Zweck: Testet die Authentifizierung und erstellt eine einfache "Hello World"-Seite.
  • Funktion:
    1. Liest Token.
    2. Authentifiziert sich als Bot.
    3. Erstellt eine Page "Hello World" unterhalb der Root Page.

3.2. create_notion_db.py

  • Zweck: Erstellt die zentrale Produktdatenbank ("📦 RoboPlanet Product Master").
  • Struktur: Legt Properties für alle relevanten "Hard Facts" an, die in Phase 1 des GTM Architect extrahiert werden:
    • Core Specs: Battery Runtime, Charge Time, Weight, Max Slope.
    • Layers: Fresh Water, Area Performance.
    • Metadata: Brand, Category, Manufacturer URL, GTM Status.

3.3. add_product_to_notion.py

  • Zweck: Schreibt ein analysiertes Produkt in die Datenbank.
  • Input: Erwartet ein JSON-Objekt im Format der specs aus Phase 1 (siehe templates/json_struktur_roboplanet.txt).
  • Mapping: Mapped die JSON-Felder (z.B. core_specs.battery_runtime_min) auf die entsprechenden Notion-Datenbank-Spalten.

4. Datenmodell (Product Master)

Die Datenbank "📦 RoboPlanet Product Master" hat folgendes Schema:

Notion Property Typ Source JSON Field
Model Name Title metadata.model_name
Brand Select metadata.brand
Category Select metadata.category
Battery Runtime (min) Number core_specs.battery_runtime_min
Charge Time (min) Number core_specs.charge_time_min
Weight (kg) Number core_specs.weight_kg
Max Slope (deg) Number core_specs.max_slope_deg
Fresh Water (l) Number layers.cleaning.fresh_water_l
Area Performance (m2/h) Number layers.cleaning.area_performance_sqm_h
Manufacturer URL URL metadata.manufacturer_url
GTM Status Status (Initial: Not Started)

5. Nächste Schritte

  1. Integration der Logik aus add_product_to_notion.py direkt in gtm_architect_orchestrator.py (Phase 1).
  2. Erweiterung um "Content"-Blöcke (z.B. generierte Zusammenfassung als Page Content).
  3. Status-Updates (GTM Status) je nach Fortschritt der Phasen (z.B. "Phase 3 Complete").