Purpose
Point the app at a custom instance root URL and key. Most users leave the fields empty. RAG Meilisearch / Qdrant are configured under Settings → AI.Settings → Services: one card with URL, API key, Test connection
Screenshot TODO · images/screenshots/self-hosting/configure.webp
Entry
Settings → Services Intro copy: “Configure custom endpoints for Starcat backend services.” Each service card includes:Rules
- URL is the service root only: no business path, no extra trailing slash.
- Good:
http://127.0.0.1:5002orhttps://trending.example.com - Bad:
http://127.0.0.1:5002/api/v1or a legacy…/apisuffix (Sharing’s old/apiform is stripped on save)
- Good:
- API Key must be one entry from the instance’s
API_KEYSallowlist. Client priority: custom key on this page → baked-in production key → none (requests omitAuthorization, usually 401). - Test connection succeeds when the host is reachable, the key is accepted, and
data.servicematches the card (catches wrong ports). - You may override only some services (e.g. self-host Discovery, keep official Trending).
Related “self-host” that is not this page
Local wiring example
If all APIs are running per Deploy:
Paste matching keys and test each card.
How it takes effect
Saving hot-updates the client baseURL / key (full app restart usually unnecessary; refresh the Explore pane if a list looks stale). Status-bar availability uses/healthz (no key), which is different from Test connection:
Troubleshooting
Related
- Overview
- Deploy
- Integrations (plugin token and External Search)