Snowplow Authentication API

Credentials API for obtaining JWT access tokens from API key credentials.

OpenAPI Specification

snowplow-authentication-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Snowplow Console Authentication API
  description: The Snowplow Console API provides programmatic management of the Snowplow behavioral data platform. Covers data structures (JSON schemas), data products (tracking plans), event specifications, and credentials management. All endpoints are scoped to an organization and require JWT bearer authentication obtained via the Credentials API.
  version: '1.0'
  contact:
    name: Snowplow Support
    url: https://snowplow.io/support
  termsOfService: https://snowplow.io/terms-of-service
servers:
- url: https://console.snowplowanalytics.com/api/msc/v1
  description: Snowplow Console API
security:
- bearerAuth: []
tags:
- name: Authentication
  description: Credentials API for obtaining JWT access tokens from API key credentials.
paths:
  /organizations/{organizationId}/credentials/v3/token:
    post:
      operationId: getAccessToken
      summary: Get Access Token
      description: Exchange API key credentials for a JWT access token. The returned token is used to authenticate all other Console API requests. Requires both X-API-Key-ID and X-API-Key headers.
      tags:
      - Authentication
      security: []
      parameters:
      - $ref: '#/components/parameters/organizationId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: JWT access token returned successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenResponse'
        '401':
          description: Invalid API key credentials
components:
  schemas:
    TokenResponse:
      type: object
      properties:
        accessToken:
          type: string
          description: JWT access token for authenticating Console API requests
        expiresAt:
          type: string
          format: date-time
          description: Token expiration timestamp
  parameters:
    organizationId:
      name: organizationId
      in: path
      required: true
      description: The Snowplow organization UUID
      schema:
        type: string
        format: uuid
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: JWT token obtained from the Credentials API (/credentials/v3/token)
externalDocs:
  description: Snowplow Console API Documentation (Swagger UI)
  url: https://console.snowplowanalytics.com/api/msc/v1/docs/