Skip to main content
A Demo Storefront is a Seller Account’s time-limited stand-in made of synthetic sample inventory. You extend it and choose which sample sources it carries with one field on save_seller: demo. A Scope3 platform administrator creates a Demo Storefront. You reset or delete one from the Demo Storefront Page. It is a different control from the intake hold, which stops new buyer business on a live Seller Account. get with kind: "seller" returns the current state as demo.expiresAt and demo.sourceRecipeIds, beside the Demo Storefront’s status and disclosure. A Seller Account with no Demo Storefront has no demo object.

Extend the Demo Storefront

Send demo.expiresAt, the instant you want the Demo Storefront to expire.
A request that is a few minutes beyond the seven-day limit, because your clock runs ahead of ours, is held to the limit. Read demo.expiresAt in the result for the instant that was saved.

Choose the sample sources

Send demo.sourceRecipeIds, the complete set of sample sources you want.
The three sample sources are sample-publisher-display, sample-publisher-ctv and sample-retail-media. The Demo Storefront gains the ones it lacks and drops the optional ones you leave out, with the products they generated. The set must list each source once and must keep sample-publisher-display, which supplies the sample brief; a set without it is refused with VALIDATION_ERROR. To add one source, read demo.sourceRecipeIds, add it, and send the whole set.

Rules

  • Send demo alone. It changes the Demo Storefront, not the Seller Account’s own configuration. demo together with any other save_seller field is refused with VALIDATION_ERROR.
  • You need the same access as for the Demo Storefront Page. A Seller Account with no Demo Storefront and no modular-source entitlement is refused with FEATURE_NOT_ENABLED, and one with no Demo Storefront is NOT_FOUND. A Demo Storefront that is being deleted is refused with CONFLICT. So is a sources change made from sources that have since changed, for example by another save at the same moment: read demo.sourceRecipeIds again and retry.
  • expiresAt and sourceRecipeIds can be sent together. The expiry is saved first. If the sources are then refused, the error says the expiry was saved, and you retry with only the sources.
  • The write role is required, the same role save_seller needs for every other change.