zSpace · Authentication Profile

Zspace Authentication

Authentication

zSpace declares 3 security scheme(s) across its OpenAPI definitions.

CompanyEducationAugmented RealityVirtual RealityEdTechHardware3DSimulationCareer and Technical EducationDeveloper SDK
Methods: Schemes: 3 OAuth flows: API key in:

Security Schemes

openIdConnect
scheme: bearer · in: header ()
oauth2
· flows: , , ,
apiKey
· in: cookie ()

Source

Authentication Profile

zspace-authentication.yml Raw ↑
generated: '2026-09-05'
method: probed
source: https://auth.zspace.com/auth/realms/master/.well-known/openid-configuration
note: >-
  Derived from the production Keycloak OpenID Connect discovery document, fetched
  anonymously. No OpenAPI securitySchemes block exists to derive from — the zSpace
  developer API publishes no public contract — so this profile records the identity
  provider's own machine-readable metadata plus the auth behaviour observed on live
  unauthenticated calls to https://api.zspace.com/v2.
provider:
  type: keycloak
  issuer: https://auth.zspace.com/auth/realms/master
  realm: master
  discovery: https://auth.zspace.com/auth/realms/master/.well-known/openid-configuration
  jwks_uri: https://auth.zspace.com/auth/realms/master/protocol/openid-connect/certs
  non_production_realm:
    issuer: https://auth.devqastage.zspace.com/auth/realms/master
    note: >-
      The live production redirect from https://api.zspace.com/v2/api/docs sends the user
      to auth.devqastage.zspace.com with client_id=tester, not to auth.zspace.com. Recorded
      as observed; both realms answer their discovery document anonymously.
schemes:
- id: openIdConnect
  type: openIdConnect
  in: header
  scheme: bearer
  openIdConnectUrl: https://auth.zspace.com/auth/realms/master/.well-known/openid-configuration
  description: >-
    OpenID Connect via Keycloak. Bearer access tokens are issued from the realm token
    endpoint and validated against the published JWKS.
- id: oauth2
  type: oauth2
  flows:
    authorizationCode:
      authorizationUrl: https://auth.zspace.com/auth/realms/master/protocol/openid-connect/auth
      tokenUrl: https://auth.zspace.com/auth/realms/master/protocol/openid-connect/token
      refreshUrl: https://auth.zspace.com/auth/realms/master/protocol/openid-connect/token
      scopes_ref: scopes/zspace-scopes.yml
    clientCredentials:
      tokenUrl: https://auth.zspace.com/auth/realms/master/protocol/openid-connect/token
    deviceCode:
      deviceAuthorizationUrl: https://auth.zspace.com/auth/realms/master/protocol/openid-connect/auth/device
    password:
      tokenUrl: https://auth.zspace.com/auth/realms/master/protocol/openid-connect/token
      note: >-
        Resource-owner password grant is advertised in grant_types_supported. Recorded as
        published, not recommended.
- id: session_cookie
  type: apiKey
  in: cookie
  description: >-
    The developer portal API itself is cookie-session based. An unauthenticated
    GET https://api.zspace.com/v2/auth/sig returns
    {"status":"auth-error","loggedin":"false","msg":"Missing cookie"} (HTTP 200),
    and GET https://api.zspace.com/v2/social/get_csrf issues a CSRF token
    ({"csrf":"..."}) for the login flow.
  observed:
  - url: https://api.zspace.com/v2/auth/sig
    status: 200
  - url: https://api.zspace.com/v2/social/get_csrf
    status: 200
endpoints:
  authorization: https://auth.zspace.com/auth/realms/master/protocol/openid-connect/auth
  token: https://auth.zspace.com/auth/realms/master/protocol/openid-connect/token
  userinfo: https://auth.zspace.com/auth/realms/master/protocol/openid-connect/userinfo
  introspection: https://auth.zspace.com/auth/realms/master/protocol/openid-connect/token/introspect
  revocation: https://auth.zspace.com/auth/realms/master/protocol/openid-connect/revoke
  end_session: https://auth.zspace.com/auth/realms/master/protocol/openid-connect/logout
  registration: https://auth.zspace.com/auth/realms/master/clients-registrations/openid-connect
  pushed_authorization_request: https://auth.zspace.com/auth/realms/master/protocol/openid-connect/ext/par/request
  device_authorization: https://auth.zspace.com/auth/realms/master/protocol/openid-connect/auth/device
  backchannel_authentication: https://auth.zspace.com/auth/realms/master/protocol/openid-connect/ext/ciba/auth
grant_types_supported:
- authorization_code
- implicit
- refresh_token
- password
- client_credentials
- urn:ietf:params:oauth:grant-type:device_code
- urn:openid:params:grant-type:ciba
token_endpoint_auth_methods_supported:
- private_key_jwt
- client_secret_basic
- client_secret_post
- tls_client_auth
- client_secret_jwt
code_challenge_methods_supported:
- plain
- S256
claims_supported:
- aud
- sub
- iss
- auth_time
- name
- given_name
- family_name
- preferred_username
- email
- acr
mutual_tls:
  supported: true
  evidence: >-
    tls_client_auth in token_endpoint_auth_methods_supported and
    tls_client_certificate_bound_access_tokens in the discovery document.
gaps:
- >-
  No public API reference documents this authentication model. The Swagger UI at
  https://api.zspace.com/v2/api/docs exists but 302s into the Keycloak authorization
  endpoint, so an integrator cannot read the contract the tokens are for.
- No security.txt, no documented API key programme, no public token-issuance instructions.

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/zspace-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 email required.

A second provider on the same verified email joins the account you already have.