canonical: https://jentic.com/apis/leexi.ai/leexi

# Leexi API

This page describes a curated, agent-optimized Jentic specification covering 11 Leexi operations, kept validated and agent-ready. Leexi also publishes its own OpenAPI 3.1 document from its public API host, which covers a wider surface including the call notes resource; the Jentic variant is a deliberate curated subset, not a substitute for it. The Leexi API exposes the conversation intelligence platform: agents can list users and teams, list and create call and meeting records, fetch a specific call, upload an external recording via a presigned URL, and manage meeting events that schedule the Leexi assistant to join a meeting. The surface is focused on retrieving call data and orchestrating the meeting bot rather than transcribing arbitrary audio.

## For AI agents

List Leexi users, teams, calls, and meetings; upload recordings via presigned URLs; and schedule the meeting assistant to join scheduled events.

## Scope

Does not handle live audio streaming, real-time transcription, or speaker enrolment - use for retrieving calls, ingesting recordings, and scheduling the meeting assistant only.

## Capabilities

- List users and teams to map Leexi accounts to internal employee records
- List calls and meetings filtered by user, team, or date for analytics roll-ups
- Retrieve a specific call by UUID to surface its transcript and metadata downstream
- Create a call or meeting record so external recordings can be ingested into Leexi
- Generate presigned upload URLs to push recording files to Leexi storage directly
- Schedule meeting events and launch the Leexi bot into a meeting at the right time

## Use cases

### Sales Call Analytics Sync

Push Leexi calls into a sales analytics warehouse. The agent calls /calls on a schedule, fetches `/calls/{uuid}` for new entries, and writes participant and metadata fields into the warehouse. Combined with the CRM call log, this gives revenue ops a single view of both meeting outcomes and recording-derived signals.

Example prompt: GET /calls filtered by created date > last sync, then GET `/calls/{uuid}` for each new entry and load metadata into the warehouse.

### External Recording Ingestion

Bring recordings from a non-Leexi source into the platform for transcription. The agent posts to /calls to create the call shell, then POST `/calls/presign_recording_url` to get an upload URL, uploads the file, and Leexi processes it. Useful when teams have legacy recordings on another platform that they want analysed inside Leexi.

Example prompt: POST /calls to create the record, POST `/calls/presign_recording_url`, PUT the file to the returned URL, and verify ingestion via GET `/calls/{uuid}.`

### Meeting Bot Scheduling

Put the Leexi assistant onto every scheduled customer meeting. The agent listens for new calendar events, posts a /meeting_events record with the meeting URL, then calls `/meeting_events/{uuid}/launch_bot` at start time. Removes the need for reps to add the bot manually.

Example prompt: On new calendar event, POST /meeting_events with the meeting URL, then POST `/meeting_events/{uuid}/launch_bot` when the meeting starts.

### AI Agent Conversation Coach via Jentic

An AI coaching agent uses Jentic to pull recent calls per rep, summarises talk-time and questions asked, and delivers a coaching note. Jentic isolates the basic-auth credential and discovers the right call-retrieval operation, so the coaching agent never has to know the API surface up front.

Example prompt: Through Jentic, search 'list leexi calls', execute GET /calls filtered by userId, and summarise the last 10 calls into a coaching note.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/users` | List workspace users |
| GET | `/calls` | List calls and meetings |
| POST | `/calls` | Create a call or meeting record |
| GET | `/calls/{uuid}` | Retrieve a specific call |
| POST | `/calls/presign_recording_url` | Get a presigned upload URL for a recording |
| POST | `/meeting_events` | Create a meeting event |
| POST | `/meeting_events/{uuid}/launch_bot` | Launch the Leexi bot into a meeting |

## Key resources

- **Users** — List Leexi workspace users
- **Teams** — List teams used to group users for filtering
- **Calls** — List, retrieve, and create call and meeting records
- **Recording Uploads** — Presigned URL generation for direct recording uploads
- **Meeting Events** — Scheduled meeting records and the launch-bot action

## Why Jentic

- **Setup:** Wiring the Leexi API by hand means Base64-encoding its id and secret pair for basic auth, targeting the public-api.leexi.ai host, and presigning recording uploads yourself. Through Jentic you install once, import the Leexi API from the API Directory, store the id and secret once, and your agent calls it.
- **Permission scoping:** You choose which Leexi operations the agent may call, so you can limit it to the ones it needs, such as listing calls and retrieving a call by id. Allowing read and ingestion operations lets the agent fetch calls without being able to launch the meeting bot unless you add that operation.
- **Credential handling:** Your Leexi id and secret pair is stored once, encrypted, by your own Jentic One instance and applied to the Authorization header at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'list Leexi calls' or 'launch the meeting bot', and Jentic returns the matching Leexi operation with its input schema so the agent calls the right endpoint without scanning the public API docs.

## Related APIs

- **Gong API** — Gong is a comparable revenue-intelligence platform with calls, transcripts, and analytics endpoints.
- **Fireflies API** — Fireflies provides AI meeting notes and a similar meeting-bot model.
- **Calendly API** — Calendly schedules the meetings that Leexi then joins and records.

## FAQ

### Which OpenAPI specification does this Leexi API page describe?

A curated, agent-optimized Jentic specification covering 11 Leexi operations. Leexi also publishes its own OpenAPI 3.1.0 document at https://public-api.leexi.ai/v1/openapi.json, served live from the same public API host as the endpoints themselves, and it describes 15 operations including a call notes resource this page does not cover. The Jentic variant is validated against the live API and kept agent-ready. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Leexi API use?

The Leexi API uses HTTP basic authentication with the Base64-encoded API Key ID and Key Secret as the basic credential. Through Jentic, the credentials live encrypted in the credential vault and are applied to the `Authorization` header only at execution time.

### Can I upload an external recording to Leexi for transcription?

Yes. POST /calls creates the call record, POST `/calls/presign_recording_url` returns a presigned upload URL, you PUT the audio file to that URL, and Leexi processes it. Verify the result via GET `/calls/{uuid}.`

### What are the rate limits for the Leexi API?

Rate limits are not declared in the OpenAPI spec. Treat /calls list and lookup endpoints as suitable for incremental polling, and prefer scheduled meeting events over poll-and-launch loops to schedule the bot.

### How do I launch the Leexi bot into a meeting through Jentic?

Run `pip install jentic`, search 'launch leexi meeting bot', and execute POST `/meeting_events/{uuid}/launch_bot` for the meeting event you previously created via POST /meeting_events. Jentic returns the launch confirmation.

### Does the Leexi API expose call transcripts directly?

GET `/calls/{uuid}` returns the call record with associated metadata. The exact transcript shape depends on the Leexi processing pipeline - check the response payload for the transcript field on processed calls before relying on it in production flows.

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

Yes. Jentic One runs self-hosted on your own infrastructure, so your rules decide which Leexi operations and credentials the agent may use. You can allow only the read operations it needs, such as GET /calls to list calls and GET `/calls/{uuid}` to retrieve a specific call, along with ingestion operations like POST /calls and POST `/calls/presign_recording_url.` The agent cannot schedule or launch the meeting bot through POST /meeting_events or POST `/meeting_events/{uuid}/launch_bot` unless you add those operations to its allowed set.
