# POST /speech/asr **POST /speech/asr** ## Performs synchronous speech recognition *** This resource receives audio data in different formats and transcribes the audio using state-of-the-art deep neural networks. It performs synchronous speech recognition and the result will be availble after all audio has been sent and processed. This endpoint is designed for transcription of short audio files upto 1 minute. *** Using *config* object you can can specify audio configs such as *audioEncoding* and *sampleRateHertz*. We will support different languages so you can choose the *languageCode*. Using *asrModel* and *languageModel* in config you can use customized models. Refer to *asrLongRunning* and *WebSocket API* for longer audio transcriptions. ## Servers ## Authentication methods - Bearer auth ## Parameters ### Body: (object) ## Audio *data* along with the customized *config* is posted to this service for speech recognition. - **config** (object) Provides information to the recognizer that specifies how to process the request. - **audio** (object) Contains audio data in the encoding specified in the RecognitionConfig. A base64-encoded string. *For asr endpoint only binary data is accepted.* Property | Description ------------ | ------------- data | The audio data bytes encoded as specified in RecognitionConfig. A base64-encoded string. ## Responses ### 403 Client does not have access rights to the content so server is rejecting to give proper response. #### Body: (object) - **status** (string) HTTP response status code. - **detail** (string) Message explaining the issue. - **title** (string) Error message title. - **type** (string) Error type. ### 201 OK. Transcription Generated. #### Body: (object) - **transcriptionId** (string(uuid)) A UUID string specifying a unique pair of audio and recognitionResult. It can be used to retrieve this recognitionResult using transcription endpoint. asrLongRunning recognitionResult will only be available using transcription endpoint and this transcriptionId. - **duration** (number(double)) File duration in seconds. - **inferenceTime** (number(double)) Total inference time in seconds. - **status** (string) Status of the recognition process. *USE THE RECOGNITION RESULT ONLY WHEN STATUS IS DONE*. - **results** (array[object]) Sequential list of transcription results corresponding to sequential portions of audio. May contain one or more recognition hypotheses (up to the maximum specified in maxAlternatives). These alternatives are ordered in terms of accuracy, with the top (first) alternative being the most probable, as ranked by the recognizer. ### 400 This response means that server could not understand the request due to invalid syntax. #### Body: (object) - **status** (string) HTTP response status code. - **detail** (string) Message explaining the issue. - **title** (string) Error message title. - **type** (string) Error type. ### 401 Authentication is needed to get requested response. This is similar to 403, but in this case, authentication is possible. #### Body: (object) - **status** (string) HTTP response status code. - **detail** (string) Message explaining the issue. - **title** (string) Error message title. - **type** (string) Error type. ### 405 The request method is known by the server but has been disabled and cannot be used. #### Body: (object) - **status** (string) HTTP response status code. - **detail** (string) Message explaining the issue. - **title** (string) Error message title. - **type** (string) Error type. ### 415 The media format of the requested data is not supported by the server, so the server is rejecting the request. #### Body: (object) - **status** (string) HTTP response status code. - **detail** (string) Message explaining the issue. - **title** (string) Error message title. - **type** (string) Error type. ### 429 The user has sent too many requests in a given amount of time ("rate limiting"). #### Body: (object) - **status** (string) HTTP response status code. - **detail** (string) Message explaining the issue. - **title** (string) Error message title. - **type** (string) Error type. ### 500 The server has encountered a situation it doesn't know how to handle. #### Body: (object) - **status** (string) HTTP response status code. - **detail** (string) Message explaining the issue. - **title** (string) Error message title. - **type** (string) Error type. [Powered by Bump.sh](https://bump.sh)