For developers

API, webhooks and MCP

Your meetings, transcriptions, and tasks, in your apps. Or directly in Claude and ChatGPT.

Get started

Create a key in the web app › Settings › API. The key looks like zk_ followed by 32 characters and is shown only once. Send it in the Authorization header:

curl https://www.zicelo.com.vtmx.ro/api/v1/me \
  -H "Authorization: Bearer zk_..."

Base URL: https://www.zicelo.com.vtmx.ro/api/v1. All responses are JSON, with {"ok": true, ...} or {"ok": false, "error": {"cod", "mesaj"}}. Data is UTF-8, times are Romania time.

Limits

PlanRequests per day
Free500
Pro5.000
Business20.000
Enterprise50.000

Meetings

GET/me

Your account, plan, and current month usage.

GET/sedinte

List of meetings, newest first. Parameters: pagina, pe_pagina (max 100), q (in title), de_la, pana_la (YYYY-MM-DD).

GET/sedinte/{id}

A complete meeting: notes (summary, key points, decisions, actions, questions), conversation analysis, transcript lines with speaker and timestamp, tasks.

POST/sedinte

Add a meeting from your own system (e.g. a call transcription). Send either linii or text. If notite is missing, Zicelo generates the summary.

{
  "title": "Client call Popescu",
  "start": "2026-11-03 10:00:00",
  "language": "ro",
  "participants": ["ana@firma.ro"],
  "lines": [
    {"t0": 0, "t1": 6.5, "speaker": "Ana", "text": "Hello, I’m calling about the offer."}
  ]
} 
DELETE/sedinte/{id}

Delete the meeting (including transcription and audio file).

Tasks

GET/sarcini

Your tasks. Filters: gata=0|1, sedinta=ID.

POST/sarcini

Add a task.

{ "text": "Send the revised offer", "who": "Mihai", "due": "2026-11-07", "meeting": 123 } 
PATCH/sarcini/{id}

Edit a task: gata, text, cine, termen.

{ "gata": true }

Search

GET/cautare?q=reducere

Search all your meeting transcripts and return the found phrase, meeting, and timestamp (in seconds).

Webhooks

Zicelo sends a POST JSON to your address every time meeting notes are ready. You configure it from the app (Integrations › Webhook) or via API – useful for Zapier, Make, or n8n.

GET/webhooks

Your webhooks.

POST/webhooks

Subscribe an https address. ce: what it should contain – rezumat, sarcini, transcript.

{ "url": "https://hooks.zapier.com/...", "secret": "un-secret", "ce": ["rezumat", "sarcini"] }
DELETE/webhooks/{id}

Unsubscribe.

Headers sent: X-Zicelo-Event (sedinta.gata, sarcina, test) and, if you set a secret, X-Zicelo-Signature: sha256=<HMAC-SHA256 al corpului>. Body:

{
  "eveniment": "sedinta.gata",
  "trimis": "2026-11-03T10:42:00+02:00",
  "sedinta": {
    "id": 123, "titlu": "...", "inceput": "...", "durata": 1840,
    "participanti": ["..."],
    "notite": { "rezumat": "...", "puncte": [...], "decizii": [...], "actiuni": [...], "intrebari": [...] },
    "sarcini": [{ "id": 1, "text": "...", "cine": "...", "termen": "..." }],
    "url": "https://zicelo.ro/app/#/sedinta/123"
  }
}

Signature verification, in PHP:

$ok = hash_equals('sha256=' . hash_hmac('sha256', file_get_contents('php://input'), $secret),
                  $_SERVER['HTTP_X_ZICELO_SIGNATURE'] ?? '');

Errors

HTTPCodeWhat it means
400json, text, urlMissing or invalid data
401cheieKey missing, invalid, or revoked
403pachet, plafonFeature not in plan or quota reached
404negasit, rutaNot found
429plafonYou exceeded daily requests
500 / 503server, bazaWe have a problem – please try again

MCP: your meetings in Claude and ChatGPT

Zicelo runs an MCP (Model Context Protocol) server. Your AI assistant searches meetings, reads transcripts and notes, sees tasks, and asks questions—with your consent.

  1. In Claude: Settings › Connectors › Add custom connector. In ChatGPT: Settings › Connectors (developer mode) › Create.
  2. Server address: https://www.zicelo.com.vtmx.ro/mcp
  3. Log in with your Zicelo account and approve access. You can revoke it anytime in the web app.

Available tools (read-only): cauta_sedinte, sedinta, transcriere, sarcini, intreaba (uses 1 AI credit), dictionar.

SCIM 2.0 (Enterprise)

Okta, Microsoft Entra ID or Google Workspace can automatically create and deactivate team accounts. The admin generates the SCIM token in the app (Team › Security). Address: https://www.zicelo.com.vtmx.ro/scim/v2, auth Bearer. Resources: /Users (GET, POST, PUT, PATCH, DELETE, filter userName eq), /ServiceProviderConfig, /ResourceTypes, /Schemas. Deactivating a user removes them from the team and closes their sessions.