openapi: 3.0.3 info: title: Sonix AI Analysis API description: The Sonix API lets you programmatically upload audio and video media for automated transcription, retrieve the resulting transcripts, export subtitles and captions (SRT, VTT, TXT, JSON, DOCX, PDF), translate transcripts into other languages, and run AI analysis (summaries, chapters, sentiment, entities). Sonix transcribes in 54+ languages and translates into 55+ languages. The API is available to Sonix subscribers; trial accounts can request an API key from Sonix support. All requests are authorized with a Bearer API key. This description was modeled by API Evangelist from Sonix's public API documentation at https://sonix.ai/docs/api; request and response schemas are honestly modeled where the public docs do not enumerate every field. version: '1.0' contact: name: Sonix url: https://sonix.ai x-modeled-by: API Evangelist x-source: https://sonix.ai/docs/api servers: - url: https://api.sonix.ai/v1 description: Sonix API v1 security: - bearerAuth: [] tags: - name: AI Analysis description: Generate summaries, chapters, sentiment, and entity analysis from transcripts. paths: /media/{id}/summarizations: parameters: - $ref: '#/components/parameters/MediaId' post: operationId: createSummarization tags: - AI Analysis summary: Create AI analysis description: Runs AI analysis over a transcript to produce a summary, chapters, sentiment analysis, or entity extraction. requestBody: required: true content: application/json: schema: type: object properties: type: type: string enum: - summary - chapters - sentiment - entities responses: '200': description: The created summarization job. content: application/json: schema: $ref: '#/components/schemas/Job' '401': $ref: '#/components/responses/Unauthorized' /summarizations/{id}: parameters: - $ref: '#/components/parameters/JobId' get: operationId: getSummarization tags: - AI Analysis summary: Retrieve AI analysis result description: Retrieves the result of an AI analysis (summarization) job. responses: '200': description: The summarization result. content: application/json: schema: $ref: '#/components/schemas/Job' '401': $ref: '#/components/responses/Unauthorized' components: schemas: Job: type: object properties: id: type: string status: type: string url: type: string description: Download URL for the job output when available. Error: type: object properties: error: type: string message: type: string responses: Unauthorized: description: The API key is missing or invalid. content: application/json: schema: $ref: '#/components/schemas/Error' parameters: JobId: name: id in: path required: true schema: type: string description: The unique identifier of the job. MediaId: name: id in: path required: true schema: type: string description: The unique identifier of the media file. securitySchemes: bearerAuth: type: http scheme: bearer description: 'Sonix API key passed as `Authorization: Bearer `. Subscribers find their key at https://my.sonix.ai/api; trial accounts request one from Sonix support.'