Snowplow website screenshot

Snowplow

Snowplow is a behavioral data platform that enables organizations to collect, process, and model granular event-level data from web, mobile, and server-side sources, providing a data pipeline for analytics and AI use cases. The platform uses a schema-first approach with self-describing JSON events validated against the Iglu schema registry. The Snowplow Console API provides programmatic governance of data structures (schemas), data products (tracking plans), and event specifications.

2 APIs 0 Features
Analytics PlatformBehavioral DataData CollectionData EngineeringData PipelineEvent TrackingOpen Source

APIs

Snowplow Console API

The Snowplow Console API provides programmatic management of the Snowplow behavioral data platform. Covers data structures (JSON schemas for event validation), data products (tr...

Snowplow Tracker SDKs

Snowplow provides tracker SDKs for all major platforms including JavaScript (web), iOS, Android, Python, Java, Go, Ruby, .NET, PHP, and Rust. Trackers generate self-describing e...

Collections

Pricing Plans

Snowplow Plans Pricing

3 plans

PLANS

Rate Limits

Snowplow Rate Limits

5 limits

RATE LIMITS

FinOps

Semantic Vocabularies

Snowplow Context

6 classes · 30 properties

JSON-LD

API Governance Rules

Snowplow API Rules

8 rules · 2 errors 4 warnings 2 info

SPECTRAL

JSON Structure

Snowplow Pipeline Structure

0 properties

JSON STRUCTURE

Example Payloads

Resources

🔗
LinkedIn
LinkedIn
🔗
Website
Website
🔗
Documentation
Documentation
📰
Blog
Blog
💰
Pricing
Pricing
👥
GitHub
GitHub
🔗
Login
Login
📝
Signup
Signup
💬
Support
Support
🚀
GettingStarted
GettingStarted
🔗
Community
Community
🔗
DataStructuresAPI
DataStructuresAPI
🔗
TrackingPlansAPI
TrackingPlansAPI
🔗
CredentialsAPI
CredentialsAPI
🔗
LlmsText
LlmsText

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Snowplow Console API
  version: '1.0'
request:
  auth:
    type: bearer
    token: '{{bearerToken}}'
items:
- info:
    name: Authentication
    type: folder
  items:
  - info:
      name: Get Access Token
      type: http
    http:
      method: POST
      url: https://console.snowplowanalytics.com/api/msc/v1/organizations/:organizationId/credentials/v3/token
      params:
      - name: organizationId
        value: ''
        type: path
        description: The Snowplow organization UUID
      body:
        type: json
        data: '{}'
    docs: 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.
- info:
    name: Data Structures
    type: folder
  items:
  - info:
      name: List Data Structures
      type: http
    http:
      method: GET
      url: https://console.snowplowanalytics.com/api/msc/v1/organizations/:organizationId/data-structures/v1
      params:
      - name: organizationId
        value: ''
        type: path
        description: The Snowplow organization UUID
      - name: vendor
        value: ''
        type: query
        description: Filter by schema vendor namespace
      - name: name
        value: ''
        type: query
        description: Filter by schema name
    docs: Retrieve a list of all data structures (JSON schemas) in the organization. Supports optional filtering by vendor
      and schema name.
  - info:
      name: Get Data Structure
      type: http
    http:
      method: GET
      url: https://console.snowplowanalytics.com/api/msc/v1/organizations/:organizationId/data-structures/v1/:dataStructureHash
      params:
      - name: organizationId
        value: ''
        type: path
        description: The Snowplow organization UUID
      - name: dataStructureHash
        value: ''
        type: path
        description: The SHA-256 hash identifier of the data structure
    docs: Retrieve a specific data structure by its SHA-256 hash identifier, including all versions and metadata.
  - info:
      name: Get Data Structure Version
      type: http
    http:
      method: GET
      url: https://console.snowplowanalytics.com/api/msc/v1/organizations/:organizationId/data-structures/v1/:dataStructureHash/versions/:versionNumber
      params:
      - name: organizationId
        value: ''
        type: path
        description: The Snowplow organization UUID
      - name: dataStructureHash
        value: ''
        type: path
        description: The SHA-256 hash identifier of the data structure
      - name: versionNumber
        value: ''
        type: path
        description: The version number (e.g., 1-0-0)
    docs: Fetch a specific version of a data structure including the full JSON schema for that version number.
  - info:
      name: Validate Data Structure
      type: http
    http:
      method: POST
      url: https://console.snowplowanalytics.com/api/msc/v1/organizations/:organizationId/data-structures/v1/validation-requests
      params:
      - name: organizationId
        value: ''
        type: path
        description: The Snowplow organization UUID
      body:
        type: json
        data: '{}'
    docs: Validate that a schema is in proper JSON format and complies with warehouse (Redshift, Snowflake, BigQuery, Databricks)
      requirements before deployment.
  - info:
      name: Get Data Structure Deployments
      type: http
    http:
      method: GET
      url: https://console.snowplowanalytics.com/api/msc/v1/organizations/:organizationId/data-structures/v1/:dataStructureHash/deployments
      params:
      - name: organizationId
        value: ''
        type: path
        description: The Snowplow organization UUID
      - name: dataStructureHash
        value: ''
        type: path
        description: The SHA-256 hash identifier of the data structure
    docs: View the deployment history for a data structure across VALIDATED, DEV, and PROD environments.
  - info:
      name: Deploy Data Structure
      type: http
    http:
      method: POST
      url: https://console.snowplowanalytics.com/api/msc/v1/organizations/:organizationId/data-structures/v1/deployment-requests
      params:
      - name: organizationId
        value: ''
        type: path
        description: The Snowplow organization UUID
      body:
        type: json
        data: '{}'
    docs: Deploy a data structure to a registry environment. Environments progress from VALIDATED → DEV → PROD. Each deployment
      makes the schema available to Snowplow pipelines in that environment.
  - info:
      name: Update Data Structure Metadata
      type: http
    http:
      method: PUT
      url: https://console.snowplowanalytics.com/api/msc/v1/organizations/:organizationId/data-structures/v1/:dataStructureHash/meta
      params:
      - name: organizationId
        value: ''
        type: path
        description: The Snowplow organization UUID
      - name: dataStructureHash
        value: ''
        type: path
        description: The SHA-256 hash identifier of the data structure
      body:
        type: json
        data: '{}'
    docs: Update the metadata and customData properties for a data structure, such as description, owner, and custom fields.
- info:
    name: Data Products
    type: folder
  items:
  - info:
      name: List Data Products
      type: http
    http:
      method: GET
      url: https://console.snowplowanalytics.com/api/msc/v1/organizations/:organizationId/data-products/v2
      params:
      - name: organizationId
        value: ''
        type: path
        description: The Snowplow organization UUID
    docs: Retrieve a comprehensive list of all data products (tracking plans) in the organization, including their associated
      event specifications.
  - info:
      name: Create Data Product
      type: http
    http:
      method: POST
      url: https://console.snowplowanalytics.com/api/msc/v1/organizations/:organizationId/data-products/v2
      params:
      - name: organizationId
        value: ''
        type: path
        description: The Snowplow organization UUID
      body:
        type: json
        data: '{}'
    docs: Create a new data product (tracking plan) with a name and optional description and domain metadata.
  - info:
      name: Get Data Product
      type: http
    http:
      method: GET
      url: https://console.snowplowanalytics.com/api/msc/v1/organizations/:organizationId/data-products/v2/:dataProductId
      params:
      - name: organizationId
        value: ''
        type: path
        description: The Snowplow organization UUID
      - name: dataProductId
        value: ''
        type: path
        description: The unique identifier of the data product
    docs: Retrieve details for a specific data product including all associated event specifications.
  - info:
      name: Update Data Product
      type: http
    http:
      method: POST
      url: https://console.snowplowanalytics.com/api/msc/v1/organizations/:organizationId/data-products/v2/:dataProductId
      params:
      - name: organizationId
        value: ''
        type: path
        description: The Snowplow organization UUID
      - name: dataProductId
        value: ''
        type: path
        description: The unique identifier of the data product
      body:
        type: json
        data: '{}'
    docs: Update an existing data product. Requires a status field in the request body.
  - info:
      name: Get Data Product History
      type: http
    http:
      method: GET
      url: https://console.snowplowanalytics.com/api/msc/v1/organizations/:organizationId/data-products/v2/:dataProductId/history
      params:
      - name: organizationId
        value: ''
        type: path
        description: The Snowplow organization UUID
      - name: dataProductId
        value: ''
        type: path
        description: The unique identifier of the data product
    docs: Fetch the change log for a data product with filtering options by date range and change type.
bundled: true