Skip to main content
POST
Create Job

Overview

Create a new batch transcription job. The job is created in CREATED status with your audio accepted — it does not start transcription yet. Call Start Job next. Authenticated private bucket access is not supported. The Try it playground uses the public URL (application/json) body below. For file upload, use the multipart cURL examples.

Authentication

Request Body

Public URL (application/json) — Try it

URLs are validated at Start Job, not at create.

Multipart upload (multipart/form-data)

Use cURL / your client — not the Try it panel. Send config as a form field with Content-Type: application/json (see cURL -F '...;type=application/json').

Example cURL

Direct upload (live-verified)

Public URL

Diarization (2 speakers)

Response

Success — multipart upload (201)

Save job_id. Always start with:
(even if the message mentions /v1/jobs/...)

Success — public URL create (201)

Error responses

401 Missing API key
400 Unsupported language
string
Unique job identifier. Required for Start / Status / Files / Cancel.
string
Always CREATED on success.
integer
Number of files accepted for multipart/ZIP uploads. May be null for public-URL creates.

Webhook samples

If you pass callback_url, Gnani sends a POST to your URL when the job finishes. Full payload examples (including transcripts[] / full_transcript): Webhook samples on Batch STT Introduction Events: job.completed · job.partial_failure · job.failed · job.cancelled

Use Cases

  • Uploading one or many call recordings for offline transcription
  • Sending a ZIP of customer audio for batch processing
  • Pointing to public HTTPS / S3 presigned URLs without re-uploading files
Next: Start Job

Authorizations

X-API-Key-ID
string
header
required

Your Gnani Prisma v2.5 API key

Body

application/json
config
object
required
source
object
required
callback_url
string<uri>

Optional HTTPS webhook URL for terminal job results

Response

Job created

job_id
string<uuid>
status
string
Example:

"CREATED"

created_at
string<date-time>
message
string
total_files_accepted
integer | null