---
title: "Analyze text content"
method: POST
path: "/v1/read"
tags: ["text"]
---

# Analyze text content

`POST /v1/read`

Analyze text content using Deepgrams text analysis API

## Query parameters

- `callback` string
- `callback_method` 'POST' | 'PUT'
- `sentiment` boolean
- `summarize` union
  - 'v2'
  - boolean
- `tag` union
  - string
  - string[]
- `topics` boolean
- `custom_topic` union
  - string
  - string[]
- `custom_topic_mode` 'extended' | 'strict'
- `intents` boolean
- `custom_intent` union
  - string
  - string[]
- `custom_intent_mode` 'extended' | 'strict'
- `language` string

## Headers

- `Authorization` string, required

## Request body

- union
  - ReadV1RequestUrl
    - `url` string, uri, required — A URL pointing to the text source
  - ReadV1RequestText
    - `text` string, required — The plain text to analyze

## Response `200`

Successful text analysis

- ReadV1Response — The standard text response
  - `metadata` ReadV1ResponseMetadata, required
    - `metadata` ReadV1ResponseMetadataMetadata
      - `request_id` string, uuid
      - `created` string, date-time
      - `language` string
      - `summary_info` ReadV1ResponseMetadataMetadataSummaryInfo
        - `model_uuid` string, uuid
        - `input_tokens` integer
        - `output_tokens` integer
      - `sentiment_info` ReadV1ResponseMetadataMetadataSentimentInfo
        - `model_uuid` string, uuid
        - `input_tokens` integer
        - `output_tokens` integer
      - `topics_info` ReadV1ResponseMetadataMetadataTopicsInfo
        - `model_uuid` string, uuid
        - `input_tokens` integer
        - `output_tokens` integer
      - `intents_info` ReadV1ResponseMetadataMetadataIntentsInfo
        - `model_uuid` string, uuid
        - `input_tokens` integer
        - `output_tokens` integer
  - `results` ReadV1ResponseResults, required
    - `summary` ReadV1ResponseResultsSummary — Output whenever `summary=true` is used
      - `results` ReadV1ResponseResultsSummaryResults
        - `summary` ReadV1ResponseResultsSummaryResultsSummary
          - `text` string
    - `topics` SharedTopics — Output whenever `topics=true` is used
      - `results` SharedTopicsResults
        - `topics` SharedTopicsResultsTopics
          - `segments` SharedTopicsResultsTopicsSegmentsItems[]
            - `text` string
            - `start_word` number, double
            - `end_word` number, double
            - `topics` SharedTopicsResultsTopicsSegmentsItemsTopicsItems[]
              - …
    - `intents` SharedIntents — Output whenever `intents=true` is used
      - `results` SharedIntentsResults
        - `intents` SharedIntentsResultsIntents
          - `segments` SharedIntentsResultsIntentsSegmentsItems[]
            - `text` string
            - `start_word` number, double
            - `end_word` number, double
            - `intents` SharedIntentsResultsIntentsSegmentsItemsIntentsItems[]
              - …
    - `sentiments` SharedSentiments — Output whenever `sentiment=true` is used
      - `segments` SharedSentimentsSegmentsItems[]
        - `text` string
        - `start_word` number, double
        - `end_word` number, double
        - `sentiment` string
        - `sentiment_score` number, double
      - `average` SharedSentimentsAverage
        - `sentiment` string
        - `sentiment_score` number, double

## Other responses

- `400` — Invalid Request

## Changes

- **2026-08-15** `76f89c68dacf` — 2 breaking, 2 info
  - the `results/intents/results/intents/segments/items/intents/items/confidence_score` response's property type/format changed from `number`/`double` to `string`/`` for status `200`
  - the `results/topics/results/topics/segments/items/topics/items/confidence_score` response's property type/format changed from `number`/`double` to `string`/`` for status `200`
  - api tag `text` added
  - api tag `read > v1 > text` removed
- **2026-08-12** `c761ed1f371e` — 2 breaking, 2 info
  - the `results/intents/results/intents/segments/items/intents/items/confidence_score` response's property type/format changed from `string`/`` to `number`/`double` for status `200`
  - the `results/topics/results/topics/segments/items/topics/items/confidence_score` response's property type/format changed from `string`/`` to `number`/`double` for status `200`
  - api tag `read > v1 > text` added
  - api tag `text` removed
- **2026-08-06** `bd7ba5c18a6b` — 2 breaking, 2 info
  - the `results/intents/results/intents/segments/items/intents/items/confidence_score` response's property type/format changed from `number`/`double` to `string`/`` for status `200`
  - the `results/topics/results/topics/segments/items/topics/items/confidence_score` response's property type/format changed from `number`/`double` to `string`/`` for status `200`
  - api tag `text` added
  - api tag `read > v1 > text` removed

[Change history](https://skmtc.dev/deepgram/apis/rest-api/changes/v1/read/post.md)

---

[API](https://skmtc.dev/deepgram/apis/rest-api.md) · [All operations](https://skmtc.dev/deepgram/apis/rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/deepgram/rest-api/revisions/76f89c68dacf/schema)
