DataMint’s AI features - enrichment, smart-rename, and the support chat - run on your own model, not ours. This page covers everything inside the AI & App Settings panel: the LLM provider (BYOK), the optional External Data APIs, and how your keys are stored.
Bring Your Own Key (BYOK): DataMint never sees, stores, or proxies your API keys on its servers. Keys live in your browser’s local storage and go straight from your device to the provider you choose.
LLM Provider (BYOK)
Open the side panel → header → AI-chip icon → “AI & App Settings”. The provider card controls four fields: Provider, Base URL, Model ID, and API Key. Every field auto-saves on each keystroke - there is no Save button.
Which providers can I use?
The dropdown shows three entries, but in practice you can use any OpenAI-compatible provider by selecting Custom and pasting its Base URL.
| Provider | Base URL | API key? | Cloud / Local | How to select |
|---|---|---|---|---|
| OpenAI | https://api.openai.com/v1 | Yes | Cloud | Direct from dropdown |
| Custom (any OpenAI-compatible) | (you provide) | Yes | Both | Direct from dropdown |
| Groq | https://api.groq.com/openai/v1 | Yes | Cloud | Custom + paste Base URL |
| OpenRouter | https://openrouter.ai/api/v1 | Yes | Cloud | Custom + paste Base URL |
| Ollama | http://localhost:11434/v1 | No | Local | Custom + paste Base URL (dropdown entry disabled) |
| LM Studio | http://localhost:1234/v1 | No | Local | Custom + paste Base URL |
The dropdown lists
OpenAI,Custom, andOllama(disabled / “soon”). Everything else - Groq, OpenRouter, LM Studio, etc. - is reached through Custom + Base URL. The backend recognises provider IDs and falls back gracefully.
Base URL rules
- The backend automatically appends
/chat/completionsif your Base URL doesn’t already end with it. So bothhttps://api.groq.com/openai/v1and…/v1/chat/completionswork. - Custom + empty Base URL throws a clear error: “Custom LLM provider requires a Base URL…”
Model ID
- Free-text Model ID field. Defaults: OpenAI →
gpt-4o-mini, Custom → empty, Ollama →llama3. - ⚠️ Important: an empty Model ID silently falls back to
gpt-4o-mini, which fails on non-OpenAI providers. Always enter the correct model ID (e.g.llama3for Ollama,mixtral-8x7bfor OpenRouter, etc.).
Local providers (Ollama, LM Studio)
- Local providers have
needsApiKey: false→ the key field is hidden, and switching to them clears any existing key. - ⚠️ The Test Connection button still expects a key, so it currently cannot verify no-key local providers. If you’re on Ollama/LM Studio, just run any enrichment to confirm it works.
External Data APIs
Two optional third-party APIs that supercharge enrichment. Both are routed through your local backend (never straight from the browser to the vendor), and both are stored in chrome.storage.local["settings"].
Serper (Google Search enrichment)
Adds Google Search enrichment beyond Maps - find founder/CEO, LinkedIn, social profiles, phone/WhatsApp, or email for each lead.
- Endpoint:
POST https://google.serper.dev/search, authenticated via theX-API-KEYheader. - Six query templates:
email,founder(default),linkedin,social,phone, andcustom(your own query with{name}/{city}placeholders). - Setup: paste your Serper key → Test Connection (
/test-serper).
Reoon (email verification)
Verifies a single email for deliverability.
- Base:
https://emailverifier.reoon.com/api/v1. - Modes:
quick(default, ~0.5s, 15s timeout) orpower(full SMTP probe, 70s timeout, adds an overall(NN%)score).
| Reoon status | Cell label |
|---|---|
valid | ✅ Valid |
safe | ✅ Safe to send |
invalid | ❌ Invalid |
disabled | ❌ Disabled |
inbox_full / disposable / catch_all / role_account | ⚠️ flagged |
spamtrap | 🚫 Spamtrap |
unknown | ❓ Unknown |
Reoon verifies one email at a time - cells with multiple addresses are split on the first. If no key is set, enrichment returns an error cell: ”… API key missing - add it in AI Settings.”
Test Connection
Each provider/API block has a Test Connection button that fires a dummy request:
- LLM →
POST /test-llmwith a trivial prompt. - Serper →
POST /test-serper. - Reoon →
POST /test-reoon.
A green status = success, red = failure. Use it right after pasting a key to confirm everything is wired up before running a real enrichment.
Security & Storage
Your keys take this path and no other:
password input → chrome.storage.local → JSON body to localhost:8000
→ Authorization: Bearer → provider
- The local backend binds only to
127.0.0.1- it is not reachable from the network. - Keys are auto-saved on every keystroke; there is no Save button.
- Keys survive
clearAllExtensionData- clearing leads does not wipe your LLM/external-API settings.
Quick setup (all providers)
- Side panel → header → AI-chip icon.
- Pick Provider (OpenAI or Custom).
- Base URL + Model ID auto-fill - edit if needed.
- Paste API Key.
- Click Test Connection → green = you’re live.