Entwickler-Docs
Mit Pico entwickeln
Testen Sie die Sandbox, betten Sie den Einkaufsassistenten ein und lernen Sie die API-Konventionen für Widget- und Händler-Endpunkte.
Schnellstart
- API starten
Starten Sie die API unter
http://localhost:8000und führen Siephp artisan migrate --seed. - Sandbox öffnen
Nutzen Sie die Sandbox oder rufen Sie die Widget-Endpunkte direkt auf.
- Als Händler anmelden
Dashboard unter
http://localhost:3000mitowner@pico.test/password.
Der öffentliche Widget-Flow nutzt drei Aufrufe:
# 1. Fetch widget configuration (public, no auth)
curl http://localhost:8000/api/v1/widget/config/pw_sandbox_demo_widget_001
# 2. Start a shopper session
curl -X POST http://localhost:8000/api/v1/widget/sessions \
-H "Content-Type: application/json" \
-d '{"public_widget_id":"pw_sandbox_demo_widget_001","locale":"en"}'
# 3. Send a message
curl -X POST http://localhost:8000/api/v1/widget/sessions/<session_id>/messages \
-H "Content-Type: application/json" \
-d '{"message":"Waterproof hiking boots under 150"}'Widget einbetten
<script type="module" src="https://cdn.example.com/pico-widget.js"
data-public-widget-id="pw_sandbox_demo_widget_001"
data-api-url="http://localhost:8000/api/v1"></script>Das Widget rendert im Shadow DOM, damit Ihre Site-Styles es nicht zerstören. „In den Warenkorb“ erscheint nur, wenn der verbundene Shop die Capability add_to_cart meldet.
Sandbox-Leitfaden
Die Sandbox ist eine klar gekennzeichnete Nicht-Produktionsumgebung mit einem Mock-Shop und Beispiel-Outdoor-Artikeln.
- Anonym: Demo-Widget-ID eingeben
pw_sandbox_demo_widget_001und chatten. - Angemeldet: die Sandbox lädt Ihren eigenen Sandbox-Shop über
GET /sandbox/config. - Jede Anfrage und Antwort wird als JSON angezeigt, damit Sie genau sehen, was die API zurückgibt.
- Hier werden keine echten Bestellungen, Zahlungen oder Produktionskataloge berührt.
Fehlerformat
Jeder Fehler nutzt einen HTTP-Status und denselben JSON-Body. Loggen Sie immer request_id, wenn Sie ein Problem melden.
{
"error": {
"code": "VALIDATION_ERROR",
"message": "The request could not be validated.",
"details": { "message": ["The message field is required."] },
"request_id": "req_01HXYZ..."
}
}| Code | HTTP | Bedeutung |
|---|---|---|
VALIDATION_ERROR | 422 | Ungültige Eingabe; details enthält Feldfehler |
UNAUTHENTICATED | 401 | Fehlende oder ungültige Session/Zugangsdaten |
FORBIDDEN | 403 | Authentifiziert, aber nicht berechtigt |
NOT_FOUND | 404 | Ressource in Ihrem Scope fehlt |
RATE_LIMITED | 429 | Zu viele Anfragen |
CONFLICT | 409 | Zustandskonflikt oder doppelte Mutation |
CONNECTOR_ERROR | 502 | Upstream-Commerce-Plattform fehlgeschlagen |
UNSUPPORTED_CAPABILITY | 400 | Aktion von diesem Shop nicht unterstützt |
SESSION_EXPIRED | 401 | Widget-Shopper-Session abgelaufen |
AGENT_UNAVAILABLE | 503 | Modell-/Agent-Anbieter nicht verfügbar |
INTERNAL_ERROR | 500 | Unerwarteter Serverfehler |
details details kann Feldfehler enthalten und enthält niemals Geheimnisse oder Stacktraces.
Integrationsleitfäden
Verbinden Sie Pico mit Ihrer Commerce-Plattform. Die Guides decken Zugangsdaten, Sync und Storefront-Embed ab.
Mock-Shop
VerfügbarSandbox-Katalog für Demos und lokale API-Tests.
Shopware 6
VerfügbarAdmin-API + Store-API Setup mit offiziellen Admin-Screenshots.
Shopify
VerfügbarOAuth-Installation, Katalog-Sync und Theme-App-Embed für den Pico-Assistenten.
Laravel-Shop
GeplantGemeinsamer Commerce-Vertrag für eigene Laravel-Storefronts.