---
title: "Create and start an AI agent session"
method: POST
path: "/r/v0/agent/sessions"
tags: ["Presentation Agent"]
---

# Create and start an AI agent session

`POST /r/v0/agent/sessions`

Creates a new agent session, posts the initial prompt, and starts the
agent. Returns a polling URL to track progress.

Optionally seeds the session with an existing PowerPoint file
(`pptxFileId`) and/or file attachments (`attachments[].fileId`). File
IDs must reference files owned by the caller's organization (e.g.
uploaded via `PUT /r/v0/files/upload`).

## Request body

- CreateAgentSessionRequest
  - `prompt` string, required — The initial instruction for the agent.
  - `pptxFileId` string — ID of an existing PowerPoint file (uploaded via the files API) to seed the session with. Must reference a `.pptx`/PowerPoint file.
  - `language` string — Target language. Defaults to `auto`.
  - `attachments` object[] — Files to attach to the initial message.
    - `fileId` string, required
  - `callbackUrl` string, uri — HTTPS URL invoked when the session changes state. Must be a public HTTPS address (no localhost/private IPs).
  - `model` 'claude-opus-4-8' | 'claude-opus-4-7' | 'claude-opus-4-6' | 'claude-sonnet-4-6' | 'claude-haiku-4-5' | 'gpt-5.4' | 'gpt-5.4-nano' | 'gpt-5.4-mini' | 'gpt-5.5' — The model to use.

## Response `201`

Session created and started.

- CreateAgentSessionResponse
  - `sessionId` string, required
  - `pollingUrl` string, uri, required — URL to poll for session state.

## Other responses

- `400` — The request was malformed or missing required fields.
- `401` — Missing or invalid API key.
- `402` — Insufficient AI agent credits for the billing cycle.
- `500` — An unexpected error occurred.

---

[API](https://skmtc.net/plusai/apis/plusai-rest-api.md) · [All operations](https://skmtc.net/plusai/apis/plusai-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/plusai/plusai-rest-api/revisions/edf00deb3363/schema)
