Presentation Agent
Create and drive AI presentation 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).
API key issued for your Plus organization, sent as a bearer token.
The initial instruction for the agent.
ID of an existing PowerPoint file (uploaded via the files API) to
seed the session with. Must reference a .pptx/PowerPoint file.
Target language. Defaults to auto.
autoHTTPS URL invoked when the session changes state. Must be a public HTTPS address (no localhost/private IPs).
The model to use.
Session created and started.
URL to poll for session state.
The request was malformed or missing required fields.
Missing or invalid API key.
Insufficient AI agent credits for the billing cycle.
An unexpected error occurred.
POST /r/v0/agent/sessions HTTP/1.1
Host: api.plusdocs.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 151
{
"prompt": "text",
"pptxFileId": "text",
"language": "auto",
"attachments": [
{
"fileId": "text"
}
],
"callbackUrl": "https://example.com",
"model": "claude-opus-4-8"
}{
"sessionId": "text",
"pollingUrl": "https://example.com"
}Returns the current status of an agent session. Poll this endpoint until status reaches a terminal value. When the agent finishes, pdfUrl, pptxUrl, and thumbnailUrl are populated with download URLs.
API key issued for your Plus organization, sent as a bearer token.
The current session state.
Download URL for the generated PDF (populated when finished).
Download URL for the generated PPTX (populated when finished).
Download URL for a thumbnail image (populated when finished).
The request was malformed or missing required fields.
Missing or invalid API key.
Session not found.
GET /r/v0/agent/sessions/{sessionId} HTTP/1.1
Host: api.plusdocs.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"sessionId": "text",
"status": "READY",
"pdfUrl": null,
"pptxUrl": null,
"thumbnailUrl": null,
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
}Last updated
Was this helpful?

