Qlik Sense APIs · Authentication Profile

Qliksense Authentication

Authentication

Authentication profile for the Qlik Cloud API surface. AUTHORED FROM THE DOCS, NOT DERIVED FROM THE SPEC — and that is the headline finding: not one of the 78 published OpenAPI documents declares a components.securitySchemes block or a security requirement, on any of their 681 operations. A machine reading only Qlik's contract cannot tell that the API needs authentication at all, which flow to use, or which scope an operation requires. Everything below exists only in prose on qlik.dev.

Qlik Sense APIs declares 8 security scheme(s) across its OpenAPI definitions.

AgentsAnalyticsArtificial IntelligenceBusiness IntelligenceCloudData IntegrationData VisualizationEmbedded AnalyticsEnterpriseMachine-Learning
Methods: Schemes: 8 OAuth flows: API key in:

Security Schemes

Authorization apiKey
· in: header ()
oauth2
oauth2
oauth2
oauth2
oauth2
http
scheme: bearer
cookie

Source

Authentication Profile

Raw ↑
generated: '2026-08-29'
method: searched
source: >-
  https://qlik.dev/authenticate, https://qlik.dev/authenticate/oauth/,
  https://qlik.dev/authenticate/api-key/generate-your-first-api-key/,
  https://qlik.dev/authenticate/jwt/implement-jwt-authorization/,
  https://qlik.dev/authenticate/oauth/oauth-private-key-jwt/,
  https://qlik.dev/authenticate/oauth/oauth-dynamic-client-registration/,
  https://qlik.dev/apis/rest/.well-known/
docs: https://qlik.dev/authenticate
description: >-
  Authentication profile for the Qlik Cloud API surface. AUTHORED FROM THE DOCS,
  NOT DERIVED FROM THE SPEC — and that is the headline finding: not one of the
  78 published OpenAPI documents declares a components.securitySchemes block or
  a security requirement, on any of their 681 operations. A machine reading only
  Qlik's contract cannot tell that the API needs authentication at all, which
  flow to use, or which scope an operation requires. Everything below exists
  only in prose on qlik.dev.

spec_declared: false
spec_evidence:
  documents_checked: 78
  with_security_schemes: 0
  operations_checked: 681
  with_security_requirement: 0

base_url: https://{tenant}.{region}.qlikcloud.com

schemes:
  - id: api-key
    type: apiKey
    in: header
    name: Authorization
    format: "Bearer <api-key>"
    docs: https://qlik.dev/authenticate/api-key/generate-your-first-api-key/
    audience: interactive users and simple scripts
    notes: >-
      Tenant admins must enable API keys per tenant; the "Developer" role and
      the "Enable API keys" toggle were removed in January 2026 in favour of the
      api-keys scope (see scopes/qliksense-scopes.yml and
      blogs/2026-01-26-developer-role-and-enable-api-keys-toggle-removed.md).
      Keys are managed through openapi/qliksense-api-keys.json.
  - id: oauth2-m2m
    type: oauth2
    flow: clientCredentials
    token_endpoint: https://{tenant}.{region}.qlikcloud.com/oauth/token
    docs: https://qlik.dev/authenticate/oauth/getting-started-oauth-m2m/
    audience: backend services and platform-operations automation
    notes: Machine-to-machine OAuth client; the recommended path for server-side integrations.
  - id: oauth2-authorization-code
    type: oauth2
    flow: authorizationCode
    pkce: true
    authorization_endpoint: https://{tenant}.{region}.qlikcloud.com/oauth/authorize
    token_endpoint: https://{tenant}.{region}.qlikcloud.com/oauth/token
    revocation_endpoint: https://{tenant}.{region}.qlikcloud.com/oauth/revoke
    docs: https://qlik.dev/authenticate/oauth/create/create-oauth-client-spa/
    audience: single-page apps and interactive web integrations
    notes: >-
      Consent screen presents the requested scopes. offline_access must be
      requested explicitly for a refresh token.
  - id: oauth2-impersonation
    type: oauth2
    flow: clientCredentials with subject impersonation
    docs: https://qlik.dev/authenticate/oauth/implement-oauth-impersonation/
    audience: OEM and embedded-analytics providers acting on behalf of end users
    notes: >-
      An M2M client exchanges for a token bound to a named user. Qlik publishes
      separate guiding principles for it at
      https://qlik.dev/authenticate/oauth/guiding-principles-oauth-impersonation/.
  - id: oauth2-private-key-jwt
    type: oauth2
    client_authentication: private_key_jwt
    standard: RFC 7523
    docs: https://qlik.dev/authenticate/oauth/oauth-private-key-jwt/
    reference: https://qlik.dev/authenticate/oauth/oauth-private-key-jwt-reference/
    notes: Asymmetric client authentication as an alternative to a client secret.
  - id: oauth2-dcr
    type: oauth2
    feature: dynamic-client-registration
    standard: RFC 7591
    docs: https://qlik.dev/authenticate/oauth/oauth-dynamic-client-registration/
    announced: '2026-06-30'
    changelog: https://qlik.dev/changelog/232-oauth-dynamic-client-registration/
    notes: >-
      DCR matters for agents specifically: an MCP client can register itself
      against a tenant rather than waiting on a human to hand-create an OAuth
      client in the console.
  - id: jwt
    type: http
    scheme: bearer
    bearerFormat: JWT
    docs: https://qlik.dev/authenticate/jwt/implement-jwt-authorization/
    audience: embedded/iframe sessions where the host app already authenticates the user
    notes: >-
      Customer-signed JWTs exchanged for a Qlik session. A JWT proxy pattern is
      documented at https://qlik.dev/authenticate/jwt/jwt-proxy/.
  - id: cookie-session
    type: cookie
    csrf_header: qlik-csrf-token
    csrf_endpoint: GET /api/v1/csrf-token
    audience: browser sessions inside the Qlik hub
    notes: Not for server-to-server use; requires the CSRF token on state-changing requests.

authorization_server_metadata:
  path: /.well-known/oauth-authorization-server
  host: https://{tenant}.{region}.qlikcloud.com
  documented_at: https://qlik.dev/apis/rest/.well-known/
  rate_limit_tier: 1
  fields:
    - issuer
    - jwks_uri
    - token_endpoint
    - revocation_endpoint
    - grant_types_supported
    - authorization_endpoint
    - response_types_supported
  probed: false
  probe_note: >-
    Not probed: the host is templated on a customer tenant name, so there is no
    anonymous instance to fetch. Recorded from Qlik's documentation, including
    its published example response.

scopes:
  detail: scopes/qliksense-scopes.yml
  count: 225
  oauth_usable: 101
  docs: https://qlik.dev/manage/access-control/scopes/

identity_providers:
  supported: true
  api: openapi/qliksense-identity-providers.json
  standards: [oidc, saml]
  notes: >-
    Tenants can bring their own IdP. Auth session behaviour (including session
    timeout) is managed through openapi/qliksense-core-auth-settings.json.

related_controls:
  ip_allowlisting:
    api: openapi/qliksense-core-ip-policies.json
    changelog: https://qlik.dev/changelog/
  csp_origins:
    api: openapi/qliksense-csp-origins.json
  web_integrations:
    api: openapi/qliksense-web-integrations.json
    note: Origin allowlisting for embedded/mashup contexts.
  content_security_policy:
    docs: https://qlik.dev/authenticate/content-security-policy/

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.
All 92 tools →

Call it yourself

curl for this page
This security artifact
curl "https://apis.io/api/v1/security/qliksense-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.