---
title: "POST /api/public/apps/batch"
method: POST
path: "/api/public/apps/batch"
tags: ["Public Apps"]
---

# POST /api/public/apps/batch

`POST /api/public/apps/batch`

The batch method lets you send a series of identify, group, track, page and screen requests in a single batch, saving on outbound requests.

## Headers

- `authorization` string, required

## Request body

- object
  - `batch` union[], required
    - union
      - object
        - `messageId` string, required — Unique identifier for the message, used as an idempotency key for safe retries. Can provide a UUID.
        - `timestamp` string — ISO 8601 formatted timestamp of when the event occurred. If not provided, the current server time will be used.
        - `type` 'identify', required
        - `traits` object — Free-form dictionary of traits of the user, like email or name. Can contain arbitrary JSON values.
        - `context` object — Provides metadata about the user submitting the event and the context in which the event occurred.
        - `userId` string, required — Unique identifier for the user. Should be the id of the user in your system. Only applicable to logged in users.
      - object
        - `messageId` string, required — Unique identifier for the message, used as an idempotency key for safe retries. Can provide a UUID.
        - `timestamp` string — ISO 8601 formatted timestamp of when the event occurred. If not provided, the current server time will be used.
        - `type` 'identify', required
        - `traits` object — Free-form dictionary of traits of the user, like email or name. Can contain arbitrary JSON values.
        - `context` object — Provides metadata about the user submitting the event and the context in which the event occurred.
        - `anonymousId` string, required — Identifier for a logged out user. It can be any pseudo-unique identifier, for example a session Id or a UUID.
      - object
        - `messageId` string, required — Unique identifier for the message, used as an idempotency key for safe retries. Can provide a UUID.
        - `timestamp` string — ISO 8601 formatted timestamp of when the event occurred. If not provided, the current server time will be used.
        - `files` object[]
          - `type` 'Base64Encoded', required
          - `name` string, required
          - `mimeType` string, required
          - `data` string, required
        - `event` string, required — Name of the action that a user has performed.
        - `properties` object — Free-form dictionary of properties of the event, like revenue or product name. Can contain arbitrary JSON values.
        - `context` object — Provides metadata about the user submitting the event and the context in which the event occurred.
        - `type` 'track', required
        - `userId` string, required — Unique identifier for the user. Should be the id of the user in your system. Only applicable to logged in users.
      - object
        - `messageId` string, required — Unique identifier for the message, used as an idempotency key for safe retries. Can provide a UUID.
        - `timestamp` string — ISO 8601 formatted timestamp of when the event occurred. If not provided, the current server time will be used.
        - `files` object[]
          - `type` 'Base64Encoded', required
          - `name` string, required
          - `mimeType` string, required
          - `data` string, required
        - `event` string, required — Name of the action that a user has performed.
        - `properties` object — Free-form dictionary of properties of the event, like revenue or product name. Can contain arbitrary JSON values.
        - `context` object — Provides metadata about the user submitting the event and the context in which the event occurred.
        - `type` 'track', required
        - `anonymousId` string, required — Identifier for a logged out user. It can be any pseudo-unique identifier, for example a session Id or a UUID.
      - object
        - `messageId` string, required — Unique identifier for the message, used as an idempotency key for safe retries. Can provide a UUID.
        - `timestamp` string — ISO 8601 formatted timestamp of when the event occurred. If not provided, the current server time will be used.
        - `name` string — Name of the page visited by the user.
        - `properties` object — Free-form dictionary of properties of the page, like url and referrer. Can contain arbitrary JSON values.
        - `context` object — Provides metadata about the user submitting the event and the context in which the event occurred.
        - `type` 'page', required
        - `userId` string, required — Unique identifier for the user. Should be the id of the user in your system. Only applicable to logged in users.
      - object
        - `messageId` string, required — Unique identifier for the message, used as an idempotency key for safe retries. Can provide a UUID.
        - `timestamp` string — ISO 8601 formatted timestamp of when the event occurred. If not provided, the current server time will be used.
        - `name` string — Name of the page visited by the user.
        - `properties` object — Free-form dictionary of properties of the page, like url and referrer. Can contain arbitrary JSON values.
        - `context` object — Provides metadata about the user submitting the event and the context in which the event occurred.
        - `type` 'page', required
        - `anonymousId` string, required — Identifier for a logged out user. It can be any pseudo-unique identifier, for example a session Id or a UUID.
      - object
        - `messageId` string, required — Unique identifier for the message, used as an idempotency key for safe retries. Can provide a UUID.
        - `timestamp` string — ISO 8601 formatted timestamp of when the event occurred. If not provided, the current server time will be used.
        - `name` string — Name of the screen visited by the user.
        - `properties` object — Free-form dictionary of properties of the screen, like title.
        - `context` object — Provides metadata about the user submitting the event and the context in which the event occurred.
        - `type` 'screen', required
        - `userId` string, required — Unique identifier for the user. Should be the id of the user in your system. Only applicable to logged in users.
      - object
        - `messageId` string, required — Unique identifier for the message, used as an idempotency key for safe retries. Can provide a UUID.
        - `timestamp` string — ISO 8601 formatted timestamp of when the event occurred. If not provided, the current server time will be used.
        - `name` string — Name of the screen visited by the user.
        - `properties` object — Free-form dictionary of properties of the screen, like title.
        - `context` object — Provides metadata about the user submitting the event and the context in which the event occurred.
        - `type` 'screen', required
        - `anonymousId` string, required — Identifier for a logged out user. It can be any pseudo-unique identifier, for example a session Id or a UUID.
      - object
        - `messageId` string, required — Unique identifier for the message, used as an idempotency key for safe retries. Can provide a UUID.
        - `timestamp` string — ISO 8601 formatted timestamp of when the event occurred. If not provided, the current server time will be used.
        - `groupId` string, required
        - `assigned` boolean
        - `traits` object — Traits of the group.
        - `context` object — Provides metadata about the user submitting the event and the context in which the event occurred.
        - `type` 'group', required
        - `userId` string, required — Unique identifier for the user. Should be the id of the user in your system. Only applicable to logged in users.
      - object
        - `messageId` string, required — Unique identifier for the message, used as an idempotency key for safe retries. Can provide a UUID.
        - `timestamp` string — ISO 8601 formatted timestamp of when the event occurred. If not provided, the current server time will be used.
        - `groupId` string, required
        - `assigned` boolean
        - `traits` object — Traits of the group.
        - `context` object — Provides metadata about the user submitting the event and the context in which the event occurred.
        - `type` 'group', required
        - `anonymousId` string, required — Identifier for a logged out user. It can be any pseudo-unique identifier, for example a session Id or a UUID.
  - `context` object — Provides metadata about the user submitting the event and the context in which the event occurred.

## Response `204`

An empty String

- string — An empty String

## Other responses

- `401` — Default Response

---

[API](https://skmtc.net/dittofeed/apis/dittofeed-api.md) · [All operations](https://skmtc.net/dittofeed/apis/dittofeed-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/dittofeed/dittofeed-api/versions/13cf71747bf1/schema)
