Retrieve agent config
How this store’s assistant is configured: whether it runs at all, its name, greeting and persona, the two instruction directives, the three skill groups, and the merchant’s starter chips. A SINGLETON, so there is no id and no page block. A STORE THAT HAS NEVER CONFIGURED THE ASSISTANT IS NOT A 404. It answers the documented defaults, which are what the assistant is actually running with: enabled true, no custom voice, both directives and all three skills on. Its updated_at is null, because there is no row to have a version, and that null is what you send back as expected_updated_at on your first write. enabled is the whole gate. The storefront widget renders on exactly this, so false means shoppers see nothing whatever else is set. persona_instructions is published here and withheld from the storefront’s own shopper-facing config. It shapes tone only: the server always appends its safety rules on top, so a persona can never remove a guardrail.
Authorizations
A secret API key. Publishable keys cannot reach this API. A key may carry an expiry, and an expired key is refused exactly like an unknown one, with a 401 that names no reason; check the key's expires_at in the dashboard rather than inferring it from a response. When a merchant rolls a key's secret they choose a grace window of up to 3 days, and for its duration BOTH the new secret and the one it replaced authenticate, so an integration moves over on its own deploy schedule instead of at the instant the button is pressed. Move before the window closes: after it, the old secret is refused. Nothing else about this contract moves with a roll. The key keeps its id and its scopes, so the only thing an integration updates is the credential itself.
Response
Success
