Project shopping guides
Deterministic material and exact-SKU selection driven by a published expert tech map.
A guide is a server-side state machine, not an open chat. The LLM may parse free text into facts, while formulas, catalog filters, package rounding and cart hand-off stay deterministic. Every route requires search:read. Related opt-in Flow Runtime journeys: Commerce flows.
Start a session:
POST /api/v1/indexes/{slug}/guide/sessions
{"client_id":"visitor-42","tech_map_key":"bathroom-tiling"}The response contains data.revision and data.question. Submit the answer with that revision:
POST /api/v1/indexes/{slug}/guide/sessions/{sessionId}/answers
{"expected_revision":1,"answer":{"value":"full"}}When state.stage becomes select, call POST .../recommendations, then POST .../quotes. Save the versioned state for a returning customer through POST .../projects. Prepare the cart with POST .../cart, an active quote_id and a unique idempotency_key. Send the returned shopRequest to the same-origin Bitrix shopEndpoint with a valid sessid, then record its result through POST .../cart/{commitId}/ack.
A stale revision returns 409 GUIDE_REVISION_CONFLICT. Missing mandatory attributes, bindings or eligible SKUs return 422 GUIDE_INCOMPLETE; hard constraints are never relaxed automatically.