Adobe Analytics Events API

Upload and validate batched event data files

Operations 2

POST /events Adobe Analytics Upload a Batch Events File #
POST /events/validate Adobe Analytics Validate a Batch Events File #

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/adobe-analytics-events-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

adobe-analytics-events-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Adobe Analytics Bulk Data Insertion Events API
  description: The Bulk Data Insertion API (BDIA) lets you upload server-side call data in batches of gzip-compressed CSV files. Each file contains one event per row and must conform to the BDIA file format specification. This API is the recommended successor to the single-event Data Insertion API for high-volume server-side data collection.
  version: '1.0'
  contact:
    name: Adobe Analytics Support
    url: https://developer.adobe.com/analytics-apis/docs/2.0/support/
  termsOfService: https://www.adobe.com/legal/terms.html
  x-last-validated: '2026-04-18'
servers:
- url: https://analytics-collection.adobe.io/aa/collect/v1
  description: Production (auto-routed)
- url: https://analytics-collection-us.adobe.io/aa/collect/v1
  description: US region
- url: https://analytics-collection-eu.adobe.io/aa/collect/v1
  description: EU region
security:
- bearerAuth: []
  apiKey: []
tags:
- name: Events
  description: Upload and validate batched event data files
paths:
  /events:
    post:
      operationId: uploadEvents
      summary: Adobe Analytics Upload a Batch Events File
      description: Uploads a gzip-compressed CSV file containing batched Analytics event data. Each row in the CSV represents one Analytics hit. The file must include required columns (timestamp, marketingCloudVisitorID or customerID, and reportSuiteID) and may include any additional Analytics variables. The visitor group ID header (x-adobe-vgid) is required and must match the visitor group used for all files in a sequence to ensure correct visitor stitching.
      tags:
      - Events
      parameters:
      - $ref: '#/components/parameters/visitorGroupId'
      - name: x-adobe-idempotency-key
        in: header
        description: Optional unique identifier for the upload for deduplication. Duplicate uploads with the same key are rejected.
        schema:
          type: string
        example: example_value
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              required:
              - file
              properties:
                file:
                  type: string
                  format: binary
                  description: Gzip-compressed CSV file containing event data
            examples:
              UploadeventsRequestExample:
                summary: Default uploadEvents request
                x-microcks-default: true
                value:
                  file: example_value
      responses:
        '200':
          description: File uploaded and queued for processing
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UploadResponse'
              examples:
                Uploadevents200Example:
                  summary: Default uploadEvents 200 response
                  x-microcks-default: true
                  value:
                    uploadTrackingCode: example_value
                    fileSize: 10
                    receivedTime: '2026-01-15T10:30:00Z'
        '400':
          description: Invalid file format or missing required headers
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Uploadevents400Example:
                  summary: Default uploadEvents 400 response
                  x-microcks-default: true
                  value:
                    errorCode: example_value
                    errorDescription: example_value
        '401':
          description: Unauthorized - invalid or missing credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Uploadevents401Example:
                  summary: Default uploadEvents 401 response
                  x-microcks-default: true
                  value:
                    errorCode: example_value
                    errorDescription: example_value
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Uploadevents429Example:
                  summary: Default uploadEvents 429 response
                  x-microcks-default: true
                  value:
                    errorCode: example_value
                    errorDescription: example_value
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /events/validate:
    post:
      operationId: validateEvents
      summary: Adobe Analytics Validate a Batch Events File
      description: Synchronously validates a gzip-compressed CSV events file without ingesting the data. Returns an immediate response indicating whether the file passes format validation, along with detailed error messages for any rows that fail validation. Use this endpoint to test files before uploading to the events endpoint.
      tags:
      - Events
      parameters:
      - $ref: '#/components/parameters/visitorGroupId'
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              required:
              - file
              properties:
                file:
                  type: string
                  format: binary
                  description: Gzip-compressed CSV file to validate
            examples:
              ValidateeventsRequestExample:
                summary: Default validateEvents request
                x-microcks-default: true
                value:
                  file: example_value
      responses:
        '200':
          description: Validation result
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationResponse'
              examples:
                Validateevents200Example:
                  summary: Default validateEvents 200 response
                  x-microcks-default: true
                  value:
                    success: true
                    message: example_value
                    errors:
                    - row: 10
                      column: example_value
                      message: example_value
        '400':
          description: File could not be read or is malformed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Validateevents400Example:
                  summary: Default validateEvents 400 response
                  x-microcks-default: true
                  value:
                    errorCode: example_value
                    errorDescription: example_value
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Validateevents401Example:
                  summary: Default validateEvents 401 response
                  x-microcks-default: true
                  value:
                    errorCode: example_value
                    errorDescription: example_value
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    ErrorResponse:
      type: object
      description: Error response from the API
      properties:
        errorCode:
          type: string
          description: Machine-readable error code
          example: example_value
        errorDescription:
          type: string
          description: Human-readable error message
          example: example_value
    ValidationResponse:
      type: object
      description: Result of a file validation request
      properties:
        success:
          type: boolean
          description: Whether the file passed all validation checks
          example: true
        message:
          type: string
          description: Summary validation message
          example: example_value
        errors:
          type: array
          description: List of validation errors found in the file
          items:
            $ref: '#/components/schemas/ValidationError'
          example: []
    UploadResponse:
      type: object
      description: Response after a successful file upload
      properties:
        uploadTrackingCode:
          type: string
          description: Unique tracking code for this upload
          example: example_value
        fileSize:
          type: integer
          description: Size of the uploaded file in bytes
          example: 10
        receivedTime:
          type: string
          format: date-time
          description: Timestamp when the file was received
          example: '2026-01-15T10:30:00Z'
    ValidationError:
      type: object
      description: A single validation error from file validation
      properties:
        row:
          type: integer
          description: Row number where the error occurred (1-indexed)
          example: 10
        column:
          type: string
          description: Column name where the error occurred
          example: example_value
        message:
          type: string
          description: Description of the validation error
          example: example_value
  parameters:
    visitorGroupId:
      name: x-adobe-vgid
      in: header
      required: true
      description: The visitor group ID. All files for the same visitors must share the same visitor group ID to ensure correct visitor stitching.
      schema:
        type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: OAuth 2.0 access token from Adobe IMS
    apiKey:
      type: apiKey
      in: header
      name: x-api-key
      description: Adobe Developer Console API key
externalDocs:
  description: Adobe Analytics Bulk Data Insertion API Documentation
  url: https://developer.adobe.com/analytics-apis/docs/2.0/guides/endpoints/bulk-data-insertion/