Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.shopi.lk/llms.txt

Use this file to discover all available pages before exploring further.

shop.getStoreSettings()

Returns the full store configuration. Use this to populate your theme’s header, footer, contact page, and shipping information.
const settings = await shop.getStoreSettings();

Response

{
  shop_name: string;
  tagline: string | null;
  logo_url: string | null;
  phone_number: string | null;
  email: string | null;
  address: string | null;
  footer_text: string | null;
  meta_title: string | null;
  meta_description: string | null;
  keywords: string | null;
  business_category: string | null;
  business_hours: any;
  location_city: string | null;
  location_country: string | null;
  social_links: Record<string, string> | null;
  shipping_regions: any;
  is_free_shipping: boolean | null;
  free_shipping_enabled: boolean | null;
  free_shipping_threshold: number | null;
  shipping_currency: string | null;
  shipping_config: any;
  international_shipping: any;
}

Example — Header

const settings = await shop.getStoreSettings();

// Logo
if (settings.logo_url) {
  logoEl.src = settings.logo_url;
}

// Social links
if (settings.social_links?.instagram) {
  instagramLink.href = settings.social_links.instagram;
}

Example — SEO meta tags

const settings = await shop.getStoreSettings();

document.title = settings.meta_title ?? settings.shop_name;

document
  .querySelector('meta[name="description"]')
  ?.setAttribute('content', settings.meta_description ?? '');

Example — Free shipping banner

const settings = await shop.getStoreSettings();

if (settings.free_shipping_enabled && settings.free_shipping_threshold) {
  banner.textContent = `Free shipping on orders over ${settings.free_shipping_threshold}`;
}