Sumble · Authentication Profile
Sumble Authentication
Authentication
Sumble secures its APIs with http and oauth2 across 2 declared security schemes, as derived from its OpenAPI definitions. OAuth 2.0 is offered via the authorizationCode flow(s).
CompanyAccount IntelligenceSales IntelligenceData EnrichmentGo-To-MarketTechnographicsPeople DataJob PostsSignalsMCP
Methods: http, oauth2
Schemes: 2
OAuth flows: authorizationCode
API key in: header
Security Schemes
api_token http
scheme: bearer
· in: header ()
mcp_oauth oauth2
· flows: authorizationCode
Source
Authentication Profile
generated: '2026-08-13'
method: searched
source: >-
openapi/_original/sumble-openapi-original.json (derived) upgraded from
https://docs.sumble.com/api/api,
https://docs.sumble.com/trust-and-security/trust-and-security, and live
probes of the MCP OAuth discovery documents.
docs: https://docs.sumble.com/api/api
summary:
types: [http, oauth2]
http_schemes: [bearer]
oauth2_flows: [authorizationCode]
api_key_in: [header]
note: >-
Two distinct auth surfaces. The REST API takes a long-lived account API
key as an HTTP bearer token. The hosted MCP server takes OAuth 2.0 with
PKCE and dynamic client registration — a different credential entirely,
and the reason an MCP client can be connected without ever handling the
API key.
schemes:
- name: api_token
surface: REST API
type: http
scheme: bearer
in: header
header: 'Authorization: Bearer YOUR_API_KEY'
sources: [openapi/_original/sumble-openapi-original.json]
applied_to: 'all 26 operations (declared per-operation as security[{api_token: []}])'
key_management:
url: https://sumble.com/account/api-keys
issuance: 'Account > API Keys > Create Key; name the key, copy the token immediately'
display: shown in full only once at creation
rotation: keys can be revoked at any time; lost keys are deleted and regenerated
availability: API keys can be generated on all plans
failure_status: 401
- name: mcp_oauth
surface: MCP server (https://mcp.sumble.com)
type: oauth2
flows:
- flow: authorizationCode
authorizationUrl: https://mcp.sumble.com/authorize
tokenUrl: https://mcp.sumble.com/token
registrationUrl: https://mcp.sumble.com/register
code_challenge_methods: [S256]
grant_types: [authorization_code, refresh_token]
token_endpoint_auth_methods: [client_secret_post, client_secret_basic]
scopes: {}
dynamic_client_registration: true
discovery:
- {spec: 'RFC 8414 (Authorization Server Metadata)', url: 'https://mcp.sumble.com/.well-known/oauth-authorization-server', status: 200, file: ../well-known/sumble-mcp-oauth-authorization-server.json}
- {spec: 'RFC 9728 (Protected Resource Metadata)', url: 'https://mcp.sumble.com/.well-known/oauth-protected-resource', status: 200, file: ../well-known/sumble-mcp-oauth-protected-resource.json}
bearer_methods_supported: [header]
failure_status: 401
challenge: 'WWW-Authenticate: Bearer error="invalid_token", error_description="Authentication required", resource_metadata="https://mcp.sumble.com/.well-known/oauth-protected-resource"'
scopes_published: false
note: >-
scopes_supported is absent from the authorization-server metadata and no
scope/permission reference is published, so there is no scope surface to
capture; scopes/ is intentionally not emitted.
user_authentication:
surface: web app (not the API)
methods:
- {method: magic-link, detail: users sign in with their email address via magic link}
- {method: sso, protocol: 'Okta OIDC', availability: enterprise plans, docs: 'https://docs.sumble.com/system-setup-and-configuration/users-access/okta-sso-oidc'}
session: JWT-based
source: https://docs.sumble.com/trust-and-security/trust-and-security
evidence:
- {url: 'https://docs.sumble.com/api/api.md', status: 200}
- {url: 'https://mcp.sumble.com/.well-known/oauth-authorization-server', status: 200}
- {url: 'https://mcp.sumble.com/.well-known/oauth-protected-resource', status: 200}
- {url: 'https://api.sumble.com/v9/organizations', status: 401, note: live unauthenticated POST confirms bearer enforcement}
checked: '2026-08-13'