---
title: "Get analysis results for a recording"
method: GET
path: "/recordings/{recording_id}/analysis"
tags: ["recordings"]
---

# Get analysis results for a recording

`GET /recordings/{recording_id}/analysis`

## Request

- Base URL: `https://api.virtuosis.ai/v1.2`
- URL: `https://api.virtuosis.ai/v1.2/recordings/{recording_id}/analysis`
- Auth: HTTP bearer

Poll for analysis results after uploading a recording. To avoid rate limiting, a polling interval of 15-30 seconds is recommended (minimum 5 seconds), with a polling timeout of five minutes.

## Path parameters

- `recording_id` string, uuid, required

## Query parameters

- `analysis` string

## Response `200`

OK

- RecordingAnalysisResponse
  - `metadata` RecordingAnalysisMetadata, required: Metadata about the recording.
    - `recording_id` string, uuid, required: The ID of the recording.
    - `account_id` string, uuid, required: The ID of the account that submitted the recording.
    - `recorded_at` string, date-time, required: ISO 8601 timestamp of when the recording began.
    - `uploaded_at` string, date-time, nullable: ISO 8601 timestamp of when the recording was uploaded.
    - `audio_file_format` string, nullable: Detected audio file format.
    - `audio_size_bytes` integer, nullable: Audio file size in bytes.
    - `audio_duration_seconds` number, double, required: Total audio duration in seconds.
    - `audio_sample_rate_hz` integer, nullable: Audio sample rate in Hz.
    - `audio_bit_rate_bps` integer, nullable: Audio bit rate in bits per second.
    - `speech_duration_seconds` number, double, nullable: Detected speech duration in seconds.
  - `analysis` RecordingAnalysis, required: Analysis results grouped by type.
    - `wellbeing` WellbeingAnalysis
      - `status` 'completed' | 'processing' | 'error' | 'not_requested', required: Status of analysis processing.
      - `predictions` WellbeingPredictions
        - `stress` StressPrediction
          - `result` 'low' | 'moderate' | 'high': Predicted stress level.
        - `anxiety` AnxietyPrediction
          - `result` 'minimal' | 'mild' | 'moderate' | 'severe': Predicted anxiety level.
        - `depression` DepressionPrediction
          - `result` 'minimal' | 'moderate' | 'severe': Predicted depression level.
    - `parkinsons` ParkinsonsAnalysis
      - `status` 'completed' | 'processing' | 'error' | 'not_requested', required: Status of analysis processing.
      - `indicators` ParkinsonsIndicators: Acoustic and speech indicators used for Parkinson's analysis. Null if analysis did not complete.
        - `volume` integer, nullable: Mean energy in decibels.
        - `monoloudness` number, double, nullable: Standard deviation of loudness across the utterance in decibels.
        - `monotony` integer, nullable: Standard deviation of the fundamental frequency in hertz.
        - `articulation` integer, nullable: Dynamic range of the second formant in hertz.
        - `speech_rate` integer, nullable: Mean number of words spoken per minute.
        - `speech_rate_stdev` integer, nullable: Standard deviation of speech rate in words-per-minute.
        - `pause_duration` integer, nullable: Mean duration of silent pauses in milliseconds.
        - `pause_duration_stdev` integer, nullable: Standard deviation of pause duration in milliseconds.
        - `voice_quality` number, double, nullable: Cepstral peak prominence in decibels.
        - `hnr` integer, nullable: Harmonics-to-noise ratio in decibels.
        - `stuttering` number, double, nullable: Word and n-gram repetitions per minute.
      - `predictions` ParkinsonsPredictions: Parkinson's risk predictions. Null if analysis did not complete.
        - `risk_score` integer, nullable: Parkinson's disease probability.
        - `risk_band` string, nullable: Parkinson's risk band derived from the risk score.
    - `alzheimers` AlzheimersAnalysis
      - `status` 'completed' | 'processing' | 'error' | 'not_requested', required: Status of analysis processing.
      - `indicators` AlzheimersIndicators: Linguistic and speech indicators used for Alzheimer's analysis. Null if analysis did not complete.
        - `ttr` number, double, nullable: Type-token ratio.
        - `brunet_index` number, double, nullable: Brunet's index.
        - `content_ratio` number, double, nullable: Ratio of content words to total words.
        - `mlu_words` number, double, nullable: Mean length of utterance in words.
        - `clause_ratio` number, double, nullable: Ratio of clauses to utterances.
        - `speech_rate` number, double, nullable: Mean number of words spoken per minute.
        - `speech_rate_stdev` number, double, nullable: Standard deviation of speech rate in words-per-minute.
        - `avg_pause_duration_ms` number, double, nullable: Mean pause duration in milliseconds.
        - `pause_filler_words_per_min` number, double, nullable: Pause filler words per minute.
        - `long_pause_ratio` number, double, nullable: Proportion of total audio duration spent in long pauses.
      - `predictions` AlzheimersPredictions: Alzheimer's classification predictions. Null if analysis did not complete.
        - `hc_probability` number, double, nullable: Probability of healthy.
        - `mci_probability` number, double, nullable: Probability of mild cognitive impairment.
        - `ad_probability` number, double, nullable: Probability of Alzheimer's disease.
        - `prediction` string, nullable: Predicted classification (hc, mci, or ad).

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `403`: Access is suspended
- `404`: Recording not found
- `500`: Internal server error

---

[API](https://skmtc.dev/virtuosis/apis/virtuosis-2.md) - [All operations](https://skmtc.dev/virtuosis/apis/virtuosis-2/llms.txt) - [OpenAPI document](https://skmtc.dev/virtuosis/apis/virtuosis-2/revisions/07890005b12e?raw)
