segment · Schema

BatchCall

A batch call sends multiple events in a single request.

Properties

Name Type Description
batch array An array of identify, track, page, screen, group, or alias call objects. Maximum 2500 events per batch. Each event must be less than 32 KB.
context object
integrations object
View JSON Schema on GitHub

JSON Schema

segment-batchcall-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/BatchCall",
  "title": "BatchCall",
  "type": "object",
  "required": [
    "batch"
  ],
  "description": "A batch call sends multiple events in a single request.",
  "properties": {
    "batch": {
      "type": "array",
      "description": "An array of identify, track, page, screen, group, or alias call objects. Maximum 2500 events per batch. Each event must be less than 32 KB.",
      "maxItems": 2500,
      "items": {
        "type": "object",
        "required": [
          "type"
        ],
        "properties": {
          "type": {
            "type": "string",
            "description": "The type of call.",
            "enum": [
              "identify",
              "track",
              "page",
              "screen",
              "group",
              "alias"
            ]
          },
          "userId": {
            "type": "string",
            "description": "Unique identifier for the user."
          },
          "anonymousId": {
            "type": "string",
            "description": "A pseudo-unique substitute for a user ID."
          },
          "event": {
            "type": "string",
            "description": "Event name, required for track calls."
          },
          "properties": {
            "type": "object",
            "description": "Event or page/screen properties.",
            "additionalProperties": true
          },
          "traits": {
            "type": "object",
            "description": "User or group traits.",
            "additionalProperties": true
          },
          "groupId": {
            "type": "string",
            "description": "Group ID, required for group calls."
          },
          "previousId": {
            "type": "string",
            "description": "Previous ID, required for alias calls."
          },
          "name": {
            "type": "string",
            "description": "Page or screen name."
          },
          "context": {
            "$ref": "#/components/schemas/Context"
          },
          "integrations": {
            "$ref": "#/components/schemas/Integrations"
          },
          "timestamp": {
            "type": "string",
            "format": "date-time",
            "description": "ISO 8601 date string."
          },
          "messageId": {
            "type": "string",
            "description": "Unique identifier for the message."
          }
        }
      }
    },
    "context": {
      "$ref": "#/components/schemas/Context"
    },
    "integrations": {
      "$ref": "#/components/schemas/Integrations"
    }
  }
}