Kevala · Authentication Profile
Kevala Authentication
Authentication
Kevala secures its APIs with oauth2 and openIdConnect across 2 declared security schemes, as derived from its OpenAPI definitions. OAuth 2.0 is offered via the authorizationCode flow(s).
CompanyEnergyElectricityElectric GridGrid AnalyticsDistributed Energy ResourcesUtilitiesGeospatialAnalyticsCarbon AccountingElectric VehiclesSustainability
Methods: oauth2, openIdConnect
Schemes: 2
OAuth flows: authorizationCode
API key in:
Security Schemes
oauth2 oauth2
· flows: authorizationCode
openIdConnect openIdConnect
Source
Authentication Profile
generated: '2026-08-23'
method: probed
source: >-
https://app.kevala.com/ authorize redirect (observed 2026-08-23) +
https://kevalaanalytics.auth0.com/.well-known/openid-configuration (HTTP 200) +
anonymous probes of https://api.kevala.com/der/ (HTTP 403)
docs: null
docs_note: >-
Kevala publishes no public authentication page or developer reference. Everything below was
observed directly from the login redirect, the Auth0 tenant discovery document, and the API's own
anonymous responses. No credential values are recorded.
summary:
types: [oauth2, openIdConnect]
api_key_in: []
oauth2_flows: [authorizationCode]
identity_provider: Auth0 (tenant kevalaanalytics.auth0.com)
api_audience: https://api.kevala.com
schemes:
- name: oauth2
type: oauth2
description: >-
The Kevala platform application at app.kevala.com redirects unauthenticated visitors to
https://kevalaanalytics.auth0.com/authorize with response_type=code,
audience=https://api.kevala.com and scope "openid profile email offline_access", i.e. the
platform obtains an Auth0-issued access token for the api.kevala.com audience and calls the API
with it. No client credentials, device or machine-to-machine flow is documented publicly.
flows:
- flow: authorizationCode
authorization_server: https://kevalaanalytics.auth0.com/
authorization_endpoint: https://kevalaanalytics.auth0.com/authorize
token_endpoint: https://kevalaanalytics.auth0.com/oauth/token
userinfo_endpoint: https://kevalaanalytics.auth0.com/userinfo
jwks_uri: https://kevalaanalytics.auth0.com/.well-known/jwks.json
revocation_endpoint: https://kevalaanalytics.auth0.com/oauth/revoke
device_authorization_endpoint: https://kevalaanalytics.auth0.com/oauth/device/code
registration_endpoint: https://kevalaanalytics.auth0.com/oidc/register
pkce: S256
grant_types_observed: [authorization_code, refresh_token]
scopes_requested_by_platform: [openid, profile, email, offline_access]
audience: https://api.kevala.com
sources: [well-known/kevala-auth0-openid-configuration.json]
- name: openIdConnect
type: openIdConnect
openIdConnectUrl: https://kevalaanalytics.auth0.com/.well-known/openid-configuration
description: >-
OIDC discovery is live on the company's Auth0 tenant (HTTP 200) and advertises S256 PKCE,
private_key_jwt / client_secret_basic / client_secret_post / none client authentication, and
the standard OIDC scope set. This is Auth0-provided infrastructure configured by Kevala, not a
document served from a kevala.com host.
observed_behaviour:
- url: https://api.kevala.com/der/
status: 403
body: '{"detail":"Authentication credentials were not provided."}'
note: Django REST Framework rejection; no WWW-Authenticate challenge header is returned.
- url: https://api.kevala.com/der/openapi/
status: 403
content_type: application/vnd.oai.openapi
note: >-
The OpenAPI document itself is credential-gated. The endpoint exists and negotiates the OpenAPI
media type, but anonymous callers receive the DRF not_authenticated envelope.
gaps:
- No public developer signup or key-issuance path; access follows a subscription/Order Form.
- No documented service-to-service (client credentials) flow, token lifetime, or refresh guidance.
- No WWW-Authenticate header on 401/403, so an agent cannot discover the authorization server from
the API response alone.
Work with this as data
Every security artifact here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for security posture
4 MCP tools reach this
find_securityBrowse and filter every security artifact in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This security artifact
curl "https://apis.io/api/v1/security/kevala-authentication"
All security posture
curl "https://apis.io/api/v1/security?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.