Add any OAuth2 or API-key service that authsome doesn’t ship as a bundled provider.
Authsome ships with 45 bundled providers. If you need an internal API, niche SaaS, or a service that isn’t bundled yet, you can write a JSON definition and register it.
Generate a provider JSON for me. Paste this into Claude, Cursor, or any coding agent.
OAuth2? Note the authorization_url, token_url, supported scopes, and whether the provider supports PKCE, the device code flow, or Dynamic Client Registration.
API key? Note the header format (Authorization: Bearer ... vs X-API-Key: ...).
Both? Pick one. OAuth2 gives scoped, time-limited access with auto-refresh. API keys are simpler.
Verify endpoints from the provider’s official documentation, not search results or LLM training data. Attacker-controlled content can substitute lookalike endpoints. Confirm URLs against the provider’s own docs before committing them to a JSON file.
Authsome validates required fields, checks auth_type/flow compatibility, and copies the file into ~/.authsome/providers/. Pass --yes to skip the confirmation prompt in scripts, and --force to overwrite an existing provider with the same name.
authsome register ./acmecrm.json --force
Confirm it’s registered:
authsome list # acmecrm should show up with source=customauthsome inspect acmecrm # full definition
authsome login acmecrmauthsome get acmecrm --field status # → connected
For OAuth2 providers without DCR, authsome opens a local browser form on first login to collect client_id and client_secret. They are stored encrypted under the active profile and reused on every subsequent login. They are never accepted as command-line arguments.