Creating Notes via the Public API
If you record and transcribe meetings elsewhere, you can hand a finished transcript to Tenzo via thePOST /api/v1/meeting-copilot-note endpoint and have it build a Meeting Copilot note — optionally running the same post-meeting pipeline the in-app bot uses when a meeting ends. The full request/response contract lives under the Meeting Copilot tag in the Tenzo Public API reference.
Authenticate with a Bearer API key (it starts with tenzo_pk_) — see API & Webhook Configuration to generate one. The note template, job, and candidate you reference are all scoped to the organization the key belongs to.
To prevent duplicate notes when retrying requests (e.g. after network timeouts), include an Idempotency-Key: <unique-id> header (up to 256 characters). Successful responses are cached for 24 hours; subsequent requests with the same key return the cached note response immediately without creating duplicates.
Meeting Copilot must be enabled for your organization before this endpoint will accept requests. If it isn’t, every call returns
403 Meeting notes are not enabled for this organization, even with a valid API key — contact your Tenzo representative to have it turned on.Request Body
Relationship between run_post_meeting_actions and ats_writes
run_post_meeting_actionsgates the entire post-meeting pipeline (summary generation, structured note questions, emails, webhooks, ATS writes, and Tenzo screen creation). When set tofalse, none of the background processing executes.ats_writesis a fine-grained sub-toggle within that pipeline. Whenrun_post_meeting_actions: true,ats_writesdetermines whether the pipeline performs write-backs to your ATS (creating/updating a job or writing candidate fields). Ifrun_post_meeting_actions: false,ats_writeshas no effect because the pipeline is bypassed entirely.- Without an ATS, automatic Tenzo screen creation follows the note template’s Create Tenzo screen setting. This endpoint does not offer a per-note override for that setting;
ats_writes: falsedoes not disable it.
Only
note_template_id and job_id return 404 when they don’t exist in your org. candidate_email is best-effort: a non-matching email never fails the request, it just leaves the note unlinked.Transcript line
Each entry intranscript describes one spoken line:
Transcript size limits — a request exceeding any of these is rejected with
422: at most 5000 lines, 20,000 characters per line, and 800,000 UTF-8 bytes of transcript text in total.
Response
The response returns immediately after the note is created; the summary and structured sections are produced by the background pipeline and read separately viaGET /api/v1/meeting-copilot-note.
Errors
Example
Create an interview note from a transcript, link it to a candidate and job, and schedule the full post-meeting pipeline:GET /api/v1/meeting-copilot-note?tenzo_id=note_5f8c21 once processing completes.