---
title: "Batch create AppSession"
method: POST
path: "/api/v3/app-session:batch-create"
tags: ["App Session"]
---

# Batch create AppSession

`POST /api/v3/app-session:batch-create`

## Request

- Base URL: `https://{tenant_name}.benchling.com`
- URL: `https://{tenant_name}.benchling.com/api/v3/app-session:batch-create`
- Auth: HTTP bearer

Batch create AppSession synchronously in one transaction. Maximum 25 items per request.

## Headers

- `EARLY-ACCESS` string

## Request body

- object
  - `items` CreateAppSessionInput[], required
    - `appId` string, required: API ID of the Benchling App that owns this session.
    - `messages` AppSessionMessageInput[]: Initial messages to display. If omitted, the session starts with no messages.
      - `content` string, required
      - `style` 'NONE' | 'INFO' | 'WARNING' | 'SUCCESS' | 'ERROR': Visual style for this message. Defaults to NONE if omitted.
    - `name` string, required: Human-readable name for this session.
    - `timeoutSeconds` integer, required: Maximum session duration in seconds before automatic timeout (1 to 2592000).

## Response `201`

Created

- AppSessionBatchcreateResponse201
  - `items` AppSession[], required
    - `__typename` string
    - `app` IAppInstallationRef
      - `__typename` string
      - `id` string, api_id
    - `createdAt` string, datetime
    - `id` string
    - `messages` AppSessionMessage[]: The messages currently displayed to the user, from the most recent session version.
      - `__typename` string
      - `content` string: The text body of the message, which may contain chip references like `{id:ent_abc123}`.
      - `style` 'NONE' | 'INFO' | 'WARNING' | 'SUCCESS' | 'ERROR': The visual style applied to this message.
    - `modifiedAt` string, datetime
    - `name` string
    - `status` 'RUNNING' | 'SUCCEEDED' | 'FAILED' | 'COMPLETED_WITH_WARNINGS' | 'TIMEOUT': The current lifecycle status of this session, derived from the most recent version.
    - `timeoutSeconds` integer: Maximum duration in seconds before the session times out automatically. Once the session's age exceeds this value and the session has not been finalized, its status becomes TIMEOUT.

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `404`: Not Found
- `409`: Conflict
- `429`: Too Many Requests
- `500`: Internal Server Error

---

[API](https://skmtc.dev/benchling/apis/benchling-api.md) - [All operations](https://skmtc.dev/benchling/apis/benchling-api/llms.txt) - [OpenAPI document](https://skmtc.dev/benchling/apis/benchling-api/revisions/c9f087b98b8b?raw)
