GuidesMModels & BYOKBring your own key
Intermediate6 min readPro

Bring your own key

Connect your own provider account. Which endpoints genuinely work, and where the compatibility limits are.

BYOK connects your own provider account, so usage is billed to you at cost with no platform limits in the way.

SettingsAI ModelsCustom Providers
Adding a provider requires Pro or a perpetual licence. Free users can view and delete providers they already have, but not create new ones.

The compatibility rule

This is the thing to understand before you start. The desktop app speaks one protocol: the OpenAI chat-completions format, with a bearer token, against whatever base URL you give it. Transcription likewise posts to an OpenAI-compatible /audio/transcriptions endpoint.

So the real question is not "is my provider on a list" — it is "does my provider offer an OpenAI-compatible endpoint".

EndpointWorks?
OpenAIYes
GroqYes
Azure OpenAIYes
A self-hosted OpenAI-compatible server — vLLM, LiteLLM, Ollama, LM StudioYes, via each one's OpenAI-compatible endpoint
Anthropic's native APINo — it is not OpenAI-compatible
!
The provider list includes an Anthropic preset that fills in api.anthropic.com. Because the desktop only speaks the OpenAI format, that base URL will not work directly — reach Claude models either through the built-in provider or through an OpenAI-compatible gateway in front of them.

Adding a provider

  1. 01
    Pick a preset or choose Custom
    Presets simply prefill the base URL. Custom and OpenAI-Compatible leave it blank for you to fill in.
  2. 02
    Paste your API key
    It is encrypted before being stored — see below.
  3. 03
    Add the models you want
    You type the model identifier exactly as the provider publishes it, and tag each one as Text, Audio, or Both. There is no dropdown, because InkSpoke cannot know your provider's catalogue.
  4. 04
    Select it as a default
    Under AI Models → Default, or per workspace for finer control.

How your key is stored

Provider keys are encrypted with AES-256-GCM before being written to the local database. The master key that protects them is what lives in your operating system credential store.

If the credential store is unavailable, InkSpoke refuses to create a new master key rather than falling back to something weaker. A provider whose key cannot be decrypted is skipped, and dictation falls back to an on-device model instead of failing.

Providers sync

Provider and model definitions sync across your devices when Cloud Sync is on. Turn on Private Sync if you would rather that content be encrypted with a key we never see.

Next in this track

Keep going.