LogoLogo
Contact API support
  • Build apps
  • Site Templates
  • REST API Reference
  • Storefronts (JS API)
  • Webhook automations
  • Discounts
  • Guides
  • Changelog
  • Ecwid storefronts overview
  • Get started
    • Storefront customization options
    • Quickstart: customize storefront with Ecwid JS API
  • Track Storefront events
    • "Page is loaded" events
    • "Customer logged in" event
    • "Cart details are changed" event
    • "New order is placed" event
    • "Instant Site section load" events
  • Get Storefront details
    • Get Ecwid store ID
    • Get storefront language and currency
    • Get visitor location
    • Get public app details
  • Manage customers on the storefront
    • Get logged in customer's details
    • Manage customer's cookie consent
    • Log out customer
  • Open page on the storefront
    • Overview of open page options
    • Open product pages with params
    • Open category pages with params
    • Open search page with params
    • Open account pages with params
  • Manage cart and checkout
    • Get cart details
    • Add product to the cart
    • Remove products from the cart
    • Fully clear the cart
    • Create pre-filled shopping carts
    • Calculate cart details
    • Send customer to the checkout
    • Set customer's email for the checkout
    • Set customer's comments for order
    • Set customer's shipping and billing addresses
    • Set custom order referer
  • Store configuration settings
    • Overview
    • Behavioral configs
    • Design configs

Lightspeed® 2025

On this page
  • Ecwid.getAppPublicToken('client_id')
  • Ecwid.getAppPublicConfig('client_id')
  • Ecwid.getInitializedWidgets()
  • Ecwid.isStorefrontV3()

Was this helpful?

  1. Get Storefront details

Get public app details

PreviousGet visitor locationNextGet logged in customer's details

Last updated 3 months ago

Was this helpful?

There are several methods in JS API created specifically for public applications.

Ecwid.getAppPublicToken('client_id')

This method accepts app client_id as an argument and responds with a public access token for the app. Public tokens are safe to use on the storefront, as they won't be able to reveal any private store data.

Code example:

var publicToken = Ecwid.getAppPublicToken('my-cool-app');
console.log(publicToken);

// prints
// public_qKDUqKkNXzcj9DejkMUqEkYLq2E6BXM9

If you need to make this call on the main Instant Site page, use window.instantsite.getAppPublicToken('client_id'); call instead.

Ecwid.getAppPublicConfig('client_id')

This method accepts app client_id as an argument and responds with a "public config" for the app, which is the data saved in App Storage as a public key. Read more about setting up .

Code example:

var publicConfig = Ecwid.getAppPublicConfig("client_id");
console.log(publicConfig);

// prints
// {"key": "public","value": "{'color':'red','text':'Email button','border-radius':'3px'}"}

If you need to make this call on the main Instant Site page, use window.instantsite.getAppPublicConfig('client_id'); call instead.

Ecwid.getInitializedWidgets()

This method responds with a list of widgets currently loaded on the website. Full list of widgets:

  • Minicart - Minicart widget

  • SearchPanel - Search widget

  • ProductBrowser - Main storefront widget, contains full Ecwid store

  • Categories - Horizontal categories menu widget

  • Product - Widget with an embedded product page

Code example:

var widgets = Ecwid.getInitializedWidgets();
console.log(widgets);

// prints 
// ["Minicart", "SearchPanel", "ProductBrowser"]

Ecwid.isStorefrontV3()

This method is useful for public applications developed before 2024. It helps apps to adapt their design by detecting the old storefront version.

All stores created in 2024 and later are using the latest storefront without the ability to switch the version.

Code example:

var v3Migration = Ecwid.isStorefrontV3();
console.log(v3Migration);

// prints if enabled
// true
App Storage