Schnellstart
Ein durchgehendes Beispiel: von der Authentifizierung bis zum gerenderten Artikelbild.
Schritt 1: Token holen
bash
# Public Key abrufen
curl -s "https://portal.3doffice.de/authsrv/AuthSrv.dll/datasnap/rest/AuthSrv/GetPublicKey/"Antwort (Auszug):
json
{
"result": ["-----BEGIN PUBLIC KEY-----\n...\n-----END PUBLIC KEY-----"]
}→ Den PublicKey verwenden, um username/password zu verschlüsseln (siehe Authentifizierung).
bash
# Token anfordern (vereinfacht dargestellt)
curl -X POST \
"https://portal.3doffice.de/authsrv/AuthSrv.dll/datasnap/rest/AuthSrv/%22GetSessionToken%22/" \
-H "Content-Type: application/json" \
-d '{"User":"...","Password":"...","PublicKey":"...","RememberMe":false}'Antwort:
json
{
"result": ["{00000000-0000-0000-0000-000000000000}"]
}Schritt 2: Katalog durchsuchen
bash
curl "https://web.3doffice.de/webkatalog2/api/xcf.dll/xcf/getnodes?token={TOKEN}&lang=de"→ Liefert alle Hersteller, für die der Token freigeschaltet ist. Navigieren Sie durch die Kategorien, bis Sie einen Artikel finden.
Schritt 3: Artikel laden
bash
curl "https://web.3doffice.de/webkatalog2/api/ofml.dll/ofml/articles?token={TOKEN}&manufacturer=_dx&program=webti&basearticlenumber=27R0614Q&lang=de"→ Liefert alle Merkmale, Preise und die reinitstring-Konfiguration.
Schritt 4: Bild rendern
Aus der Antwort von Schritt 3 ocd.finalarticlenumber und ocd.reinitstring übernehmen (URL-kodiert) und als finalarticlenumber bzw. reinitstring übergeben:
bash
curl -o artikelbild.jpg \
"https://web.3doffice.de/webkatalog2/api/odb.dll/odb/articlesimage.jpg?token={TOKEN}&manufacturer=_dx&program=webti&basearticlenumber=27R0614Q&finalarticlenumber=27%20R%2006%2014%20KL%20Q&width=500&height=500&reinitstring=..."→ Speichert ein 500×500px Bild des konfigurierten Artikels.
Schritt 5: Bauteilliste holen (optional)
Für die 3D-Darstellung in WebGL:
bash
curl "https://web.3doffice.de/webkatalog2/api/odb.dll/odb/btg?token={TOKEN}&manufacturer=_dx&program=webti&basearticlenumber=27R0614Q&finalarticlenumber=27%20R%2006%2014%20KL%20Q&reinitstring=..."→ Liefert die Bauteilliste mit Geometrie und Materialien für die 3D-Darstellung.