Bắt đầu/Introduction

API v1 — Developer reference

Base URL: https://note-api.blaze.vn/v1
Auth: Authorization: Bearer sk_… or X-API-Key: sk_…

/v1 is one host and one key, but two ways of working. Pick the one that matches what you are building — mixing them in your head is how a “just translate this sentence” integration accidentally creates meetings and storage.

1. Platform API — you manage meetings

You own meetings as first-class resources: create one, ingest audio or stream live, read/edit the transcript, organise folders, speakers, recordings, webhooks. AI here runs on a meeting you already stored (POST /v1/meetings/{id}/summary, /reports, /chat, …).

Use this when your product is “our app has meetings, like Blaze Note.”

2. AI API — you send text, nothing is stored as a meeting

Stateless primitives. Request body in, result out. No session, no folder, no webhook.

CallDoes
POST /v1/translateTranslate a string
POST /v1/summarizeSummarise a string
POST /v1/refineClean a raw STT string
POST /v1/completeGeneric LLM completion
POST /v1/ttsText → speech
GET /v1/tts/voicesList voices
WS /v1/realtimeLive transcribe & translate — open the socket with the API key, no REST first

Use this when your product already has its own documents and only needs the model. Same API key works for both; scopes can lock a key to ai:* only.

Shared: GET /v1/health (no auth), GET /v1, GET /v1/me.

Unless noted, bodies are JSON. Audio upload is multipart/form-data. Only GET /v1/health is unauthenticated.