Skip to main content
Home›Platform›Perceive8 API

Perceive8 API

Real-time audio intelligence, one API key away.

Upload recordings for analysis, stream live audio over WebSocket for transcription and alerts as they happen, and query every transcript — from JavaScript, Python, or your AI assistant. Keys are pk_live_…, created in your workspace settings and stored only as bcrypt hashes.

Capabilities

What you can do with the API

The same engine that powers the dashboard — every conversation, score, and alert — available programmatically.

Analyze recordings

Upload audio files and get back transcripts, speaker attribution, and playbook-scored analysis.

Stream live audio

Open a WebSocket to /v1/stream and receive partial and final transcripts — plus alert events — as the conversation happens.

Query every transcript

Ask natural-language questions across your analyses and get answers with the transcript excerpts behind them.

Playbooks & reports

List built-in playbooks, create custom ones, and generate structured reports for any analysis.

Speaker profiles

Enroll named speakers and identify them across conversations.

MCP server

Connect Claude, Cursor, Windsurf, and ChatGPT to your meeting intelligence over the Model Context Protocol.

Quick start

Up and running in minutes

Install the SDK, drop in your API key, and stream or upload your first audio.

TypeScript — stream & upload
import { Perceive8Client } from "perceive8";

const client = new Perceive8Client({ apiKey: "pk_live_..." });

// Upload audio for analysis
const analysis = await client.analyses.upload(file, "meeting.mp3");

// Or stream live audio over WebSocket
const stream = client.streaming.connect({
  language: "en",
  sampleRate: 16000,
  playbookIds: ["playbook-id"],
});

stream.on("transcript_final", (data) => {
  console.log("Final:", data.text);
});

stream.on("alert_triggered", (data) => {
  console.log("Alert:", data.message);
});

// Send audio chunks
stream.send(audioChunk);
Python — upload
from perceive8 import Perceive8Client

client = Perceive8Client(api_key="pk_live_...")

with open("meeting.mp3", "rb") as f:
    analysis = client.analyses.upload(f, "meeting.mp3")
SDKs & tools

Pick your language — or your AI assistant

JavaScript / TypeScript

npm install perceive8

Full TypeScript types, automatic pagination with async iterators, file upload with progress tracking, and retries with exponential backoff.

Python

pip install perceive8

Synchronous and asynchronous clients, full type hints with Pydantic models, and WebSocket streaming for live transcription.

MCP Server

npx -y @perceive8/mcp

A stdio bridge to the hosted Perceive8 MCP server — 26 scoped tools for analyses, transcripts, reports, alerts, and Aria.

Build on every conversation.

Create a free account, mint a pk_live_… key, and make your first call in minutes.