Markets
Markets let a single bot serve different UI, greeting, and responses per location. You select which market to load by passing a market slug to start(...). The backend is told the same market so it can localize the conversation (greeting and responses).
market is required. You must pass the market slug configured for your bot — there is no default and no fallback. Find your market slugs in the Kindly platform (Settings → General → Details & markets).
Selecting a market
Pass the market slug (as configured in the Kindly platform, e.g. eu, us, general) when you initialize the SDK:
KindlySDK.start(botKey: "YOUR_BOT_KEY", languageCode: "en", market: "eu")With authentication:
KindlySDK.start(botKey: "YOUR_BOT_KEY", languageCode: "en", market: "eu") { chatId, promise in
promise.fulfill("JWT_TOKEN") // market + auth callback
}What the SDK does with the market
- Settings — it loads the market-specific settings (theme, greeting config, compliance, localization) from /settings/{botKey}/{market}.json.
- Connect — it includes the market in the /connect request so the backend serves the greeting and bot responses configured for that market.
No fallback
Settings are always market-scoped. The SDK loads the requested market's settings (with retries); if they can't be loaded, settings loading fails and the chat will not load. There is no fallback to another market and no base/per-bot settings file outside of markets — make sure the slug you pass exists and has published settings for your bot.
Notes
- The market is fixed for the lifetime of the session. To switch markets, call start(...) again with a different market (the SDK reinitializes just as it does for a bot-key change).
- The market does not change the language. Use languageCode / setLanguage(_:) for language; use market for the location-specific content set.
For initialization basics, see Initialization.