canonical: https://jentic.com/apis/engine.diarupt.ai/diarupt

# Engine Diarupt Diarupt Engine API

Jentic publishes the only available OpenAPI specification for Diarupt Engine API, keeping it validated and agent-ready. Diarupt provides a conversational AI engine for video-style interactions, exposing endpoints to create and terminate conversation sessions, list active sessions, and pull catalogues of available faces and AI profiles. Product teams use it to embed branded AI characters into their apps without running their own avatar pipeline. The 6-endpoint surface keeps integration shallow while covering the full session lifecycle.

## For AI agents

Create and terminate conversational AI sessions in Diarupt and list available faces and AI profiles for the session.

## Scope

Does not handle text-only chat, model fine-tuning, or video recording - use for managing Diarupt conversational AI session lifecycle and listing available faces and profiles only.

## Capabilities

- Start a new conversation session against a chosen face and profile
- Terminate an active session cleanly when the interaction ends
- Look up the status of a single session by ID
- List all active or recent sessions for monitoring and audit
- Inspect available faces and AI profiles before creating a session

## Use cases

### Embedded Conversational AI Session

When a user opens the in-app AI assistant, the agent calls POST /create-session to start a Diarupt session bound to a chosen face and profile. The session ID is returned to the front-end so the conversational widget can render. Closing the widget triggers POST `/terminate-session/{session_id}` to release server resources.

Example prompt: Create a session with face_id 'aria' and profile_id 'support-bot' and return the new session_id

### Session Inventory and Cleanup

Periodically list active sessions via GET /sessions and terminate any that have idled past a threshold. This avoids dangling sessions accumulating against the account quota and keeps cost predictable.

Example prompt: List all sessions and terminate any whose last activity is more than 30 minutes ago

### Catalog Lookup Before Session Creation

Use GET /faces and GET /profiles to surface the available avatars and AI configurations to the user before they start a session. This lets product teams expose Diarupt's options dynamically rather than hard-coding face IDs into the front-end.

Example prompt: Return the list of available faces and profiles so the UI can present them to the user

### Agent-Driven Conversational Onboarding

An AI orchestrator searches Jentic for 'create a conversational ai session', loads the Diarupt POST /create-session schema, and starts a session for the user inside an onboarding flow. The same agent terminates the session on flow completion. Wiring the avatar into a broader agent workflow becomes one or two intent searches rather than custom Diarupt SDK code.

Example prompt: On user request 'start the AI onboarding', create a Diarupt session with the default profile and store the session_id in the user's record

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/create-session` | Create a conversation session |
| POST | `/terminate-session/{session_id}` | Terminate a session |
| GET | `/session/{session_id}` | Get a session by ID |
| GET | `/sessions` | List all sessions |
| GET | `/faces` | List available faces |
| GET | `/profiles` | List AI profiles |

## Key resources

- **Sessions** — Create, terminate, and inspect conversation sessions
- **Faces** — Available avatar faces for sessions
- **Profiles** — Preconfigured AI profiles attached to sessions

## Why Jentic

- **Setup:** Wiring the Diarupt Engine API by hand means setting up its X-API-KEY header, formatting session lifecycle and listing calls, and handling your own errors against https://engine.diarupt.ai. Through Jentic you install once, import the Diarupt Engine API from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** The Diarupt Engine API puts the session id in the URL path (`/session/{session_id}` and `/terminate-session/{session_id}`), so a rule can pin your agent to one session: it can read that session and nothing else. You choose the operations it may call, so ones like creating or terminating a session are not included unless you add them.
- **Credential handling:** Your Diarupt API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'start a conversational AI session' or 'list available faces', and Jentic returns the matching Diarupt operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Encord AI Data Platform API** — Encord prepares the labeled training data behind models like Diarupt; Diarupt serves the live conversational session.
- **Engage.so API** — Engage.so can track when users start or end Diarupt sessions as lifecycle events.
- **EnforcedFlow API** — EnforcedFlow can route AI session transcripts into human review when oversight is required.

## FAQ

### Why is there no official OpenAPI spec for Diarupt Engine API?

Diarupt does not publish a public OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Diarupt Engine API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Diarupt Engine API use?

The API uses an API key via the `apiKeyAuth` scheme. Through Jentic, the key is stored encrypted in the vault and supplied to requests at execution time so the raw value never enters the agent's prompt.

### Can I create a conversational AI session via the API?

Yes. POST /create-session starts a session bound to a chosen face and profile and returns a session_id. The front-end uses that ID to wire up the conversational widget.

### How do I list available faces and profiles?

GET /faces returns all available avatar faces and GET /profiles returns the preconfigured AI profiles. Most apps surface these to users so they can pick a persona before starting a session.

### What are the rate limits for the Diarupt Engine API?

The OpenAPI spec does not declare rate limits. Diarupt enforces per-account session quotas in production; back off on HTTP 429 responses and confirm exact limits with their support team.

### How do I create a session through Jentic?

Run `pip install jentic`, search 'create a diarupt conversation session', and Jentic returns POST /create-session with its input schema. The agent supplies the face and profile IDs and executes against base URL https://engine.diarupt.ai.

### Can I limit what my agent is allowed to do with the Diarupt Engine API?

Yes. Because you run Jentic One yourself, your own rules decide which Diarupt operations and credentials the agent may use, so you can allow read-only calls like GET `/session/{session_id}`, GET /sessions, GET /faces, and GET /profiles while withholding POST /create-session and POST `/terminate-session/{session_id}.` Since the session id sits in the URL path for `/session/{session_id}` and `/terminate-session/{session_id}`, you can pin the agent to a single session and let it read that one and nothing else. Your Diarupt API key is stored encrypted by your own instance and injected only when an allowed call runs, so it never reaches the agent's prompt.
