Speechmatics Projects API
The Projects API from Speechmatics — 2 operation(s) for projects.
The Projects API from Speechmatics — 2 operation(s) for projects.
openapi: 3.0.3
info:
title: Speechmatics Batch Transcription API Keys Projects API
version: 2.0.0
description: The Speechmatics Automatic Speech Recognition REST API is used to submit ASR jobs and receive the results. The supported job type is transcription of audio files. Supports 55+ languages, speaker diarization, translation, summarization, sentiment analysis, topic detection, and custom vocabulary.
contact:
email: support@speechmatics.com
x-providerName: speechmatics
x-serviceName: batch-transcription-api
servers:
- url: https://asr.api.speechmatics.com/v2
description: Speechmatics Batch ASR API (EU)
- url: https://eu1.asr.api.speechmatics.com/v2
description: Speechmatics Batch ASR API (EU1)
- url: https://usa.asr.api.speechmatics.com/v2
description: Speechmatics Batch ASR API (USA)
security:
- bearerAuth: []
tags:
- name: Projects
paths:
/projects:
get:
summary: Get all projects
operationId: listProjects
tags:
- Projects
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectsResponse'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'410':
description: Gone
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
post:
summary: Create a new project
operationId: createProject
tags:
- Projects
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateProjectRequest'
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/Project'
'410':
description: Gone
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/projects/{project_id}:
parameters:
- name: project_id
in: path
required: true
schema:
type: integer
description: The project ID.
get:
summary: Get a project by ID
operationId: getProject
tags:
- Projects
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Project'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Project was not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'410':
description: Project Gone
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
put:
summary: Update a project
operationId: updateProject
tags:
- Projects
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateProjectRequest'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Project'
'404':
description: Not Found
delete:
summary: Delete a project
operationId: deleteProject
tags:
- Projects
responses:
'204':
description: Project deleted.
'403':
description: Forbidden (outstanding payments)
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Project was not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'410':
description: Gone
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
components:
schemas:
CreateProjectRequest:
type: object
required:
- name
properties:
contract_id:
type: integer
description: Optional contract ID for the project.
name:
type: string
description: The name of the project.
description:
type: string
description: A description of the project and its intended use.
Project:
type: object
required:
- project_id
properties:
project_id:
type: integer
is_default:
type: boolean
nullable: true
is_active:
type: boolean
nullable: true
name:
type: string
description:
type: string
created_at:
type: string
format: date-time
deleted_at:
type: string
format: date-time
ProjectsResponse:
type: array
items:
$ref: '#/components/schemas/Project'
ErrorResponse:
type: object
required:
- code
- error
properties:
code:
type: integer
description: The HTTP status code.
error:
type: string
description: The error message.
detail:
type: string
description: Additional error details.
UpdateProjectRequest:
type: object
required:
- name
properties:
name:
type: string
description: The new name for the project.
securitySchemes:
bearerAuth:
type: apiKey
in: header
name: Authorization
description: 'Bearer token authentication. Use the format: Bearer $API_KEY_OR_JWT'