Tealium Collect API

The Collect API from Tealium — 6 operation(s) for collect.

Operations 6

GET /collect/event Send single event (GET) #
POST /collect/event Send single event (POST) #
POST /collect/bulk-event Send bulk events (up to 10) #
POST /collect/regional/event Send single event to regional endpoint #
POST /collect/regional/bulk-event Send bulk events to regional endpoint #
POST /collect/integration/event/accounts/{account}/profiles/{profile}/datasources/{datasourceId} Send event via webhook/integration datasource #

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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 API
curl "https://apis.io/api/v1/apis/tealium-collect-api"
All apis
curl "https://apis.io/api/v1/apis?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.

OpenAPI Specification

tealium-collect-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Tealium HTTP Collect API
  description: Sends authenticated events from any application via HTTP requests into the Tealium Customer Data Hub. Supports single-event and bulk-event endpoints (up to 10 events per request) with regional routing. Rate limit is 100 events per second; exceeding this returns HTTP 429. Authenticates via JWT bearer token obtained by exchanging a username and API key.
  version: '3.0'
  contact:
    name: Tealium Support
    url: https://docs.tealium.com/api/v3/http-api/about/
servers:
- url: https://{host}/v3
  description: Region-specific host returned by authentication API
  variables:
    host:
      default: platform.tealiumapis.com
      description: Region-specific host from auth response (e.g., us-east-1-platform.tealiumapis.com)
security:
- BearerAuth: []
tags:
- name: Collect
paths:
  /collect/event:
    get:
      operationId: collectEventGet
      summary: Send single event (GET)
      description: Sends a single event via HTTP GET. Returns a 1x1 transparent GIF image. Useful for pixel-based tracking scenarios.
      parameters:
      - name: tealium_account
        in: query
        required: true
        schema:
          type: string
        description: Tealium account name
      - name: tealium_profile
        in: query
        required: true
        schema:
          type: string
        description: Tealium profile name
      - name: tealium_event
        in: query
        required: true
        schema:
          type: string
        description: Event type identifier
      - name: tealium_visitor_id
        in: query
        required: false
        schema:
          type: string
        description: Visitor identifier (GUID or formatted known-visitor ID)
      - name: tealium_datasource
        in: query
        required: false
        schema:
          type: string
        description: Data source key
      responses:
        '200':
          description: Event accepted; returns 1x1 transparent GIF
          content:
            image/gif:
              schema:
                type: string
                format: binary
        '400':
          description: Bad request — missing required parameters
        '401':
          description: Unauthorized — invalid or expired bearer token
        '429':
          description: Too many requests — rate limit exceeded (100 events/second)
      tags:
      - Collect
    post:
      operationId: collectEventPost
      summary: Send single event (POST)
      description: Sends a single event via HTTP POST with a JSON body. Returns an empty JSON response with content-length 0.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EventPayload'
            example:
              tealium_account: my-account
              tealium_profile: main
              tealium_event: page_view
              tealium_datasource: abc123
              page_type: '123'
              page_name: testName
      responses:
        '200':
          description: Event accepted
        '400':
          description: Bad request — missing required fields, invalid JSON keys, or empty body
        '401':
          description: Unauthorized — invalid or expired bearer token
        '429':
          description: Too many requests — rate limit exceeded
      tags:
      - Collect
  /collect/bulk-event:
    post:
      operationId: collectBulkEvent
      summary: Send bulk events (up to 10)
      description: Sends up to 10 events in a single POST request. The shared object provides common fields applied to all events; individual event objects can override or extend them.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkEventPayload'
            example:
              shared:
                tealium_account: my-account
                tealium_profile: main
                tealium_environment: prod
                tealium_datasource: abc123
                tealium_visitor_id: abc123_071222_1
              events:
              - page_name: home
                tealium_event: page_view
              - page_name: checkout
                tealium_event: page_view
      responses:
        '200':
          description: Bulk events accepted
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Too many requests — rate limit exceeded
      tags:
      - Collect
  /collect/regional/event:
    post:
      operationId: collectRegionalEvent
      summary: Send single event to regional endpoint
      description: Sends a single event to a region-specific endpoint. Use the regional host returned from the authentication API.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EventPayload'
      responses:
        '200':
          description: Event accepted
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Too many requests
      tags:
      - Collect
  /collect/regional/bulk-event:
    post:
      operationId: collectRegionalBulkEvent
      summary: Send bulk events to regional endpoint
      description: Sends up to 10 events to a region-specific endpoint.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkEventPayload'
      responses:
        '200':
          description: Bulk events accepted
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Too many requests
      tags:
      - Collect
  /collect/integration/event/accounts/{account}/profiles/{profile}/datasources/{datasourceId}:
    post:
      operationId: collectIntegrationEvent
      summary: Send event via webhook/integration datasource
      description: Sends a single event via a dedicated datasource integration endpoint. Returns 204 No Content on success. Suitable for webhook and connector-based integrations.
      parameters:
      - name: account
        in: path
        required: true
        schema:
          type: string
        description: Tealium account name
      - name: profile
        in: path
        required: true
        schema:
          type: string
        description: Tealium profile name
      - name: datasourceId
        in: path
        required: true
        schema:
          type: string
        description: Data source key for the integration
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IntegrationEventPayload'
            example:
              tealium_event: page_view
              tealium_datasource: abc123
              page_type: '123'
              page_name: homepage
      responses:
        '204':
          description: Event accepted — no content returned
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '429':
          description: Too many requests
      tags:
      - Collect
components:
  schemas:
    IntegrationEventPayload:
      type: object
      required:
      - tealium_event
      properties:
        tealium_event:
          type: string
          description: Event type identifier
        tealium_datasource:
          type: string
          description: Data source key
      additionalProperties:
        type: string
        description: Custom event attributes
    BulkEventPayload:
      type: object
      required:
      - shared
      - events
      properties:
        shared:
          type: object
          description: Common fields applied to all events in this batch
          properties:
            tealium_account:
              type: string
            tealium_profile:
              type: string
            tealium_environment:
              type: string
              enum:
              - dev
              - qa
              - prod
            tealium_datasource:
              type: string
            tealium_visitor_id:
              type: string
          additionalProperties:
            type: string
        events:
          type: array
          description: Array of event objects (max 10 per request)
          maxItems: 10
          items:
            type: object
            required:
            - tealium_event
            properties:
              tealium_event:
                type: string
            additionalProperties:
              type: string
    EventPayload:
      type: object
      required:
      - tealium_account
      - tealium_profile
      - tealium_event
      properties:
        tealium_account:
          type: string
          description: Tealium account name
        tealium_profile:
          type: string
          description: Tealium profile name
        tealium_event:
          type: string
          description: Event type identifier
        tealium_visitor_id:
          type: string
          description: Visitor identifier (GUID or formatted known-visitor ID)
        tealium_datasource:
          type: string
          description: Data source key
        tealium_environment:
          type: string
          enum:
          - dev
          - qa
          - prod
          description: Deployment environment
      additionalProperties:
        type: string
        description: Custom event attributes as additional key-value pairs
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: JWT bearer token obtained from the Authentication API (/v3/auth/accounts/{account}/profiles/{profile}). Tokens are valid for 30 minutes. Do not generate a new token for every call — reuse until expiration.