---
title: "Get Text Details"
method: GET
path: "/v2/texts/{text_id}"
tags: ["Text Emotion API"]
---

# Get Text Details

`GET /v2/texts/{text_id}`

## Request

- Base URL: `https://api.imentiv.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.imentiv.ai/v2/texts/{text_id}`
- Auth: one of:
  - API key in header `X-API-Key`
  - HTTP bearer
  - OAuth 2
    - Authorization code: `https://api.imentiv.ai/oauth/authorize`
    - Token URL: `https://api.imentiv.ai/oauth/token` scopes: `media.read`

Retrieve all details for a specific text directly from the database.

Returns a complete standardized response with all possible fields.
Fields that don't exist in the database are returned as null.

**Access Control:**
- Authenticated users can access their own texts
- Admins can access all texts
- Sample texts and shared texts are publicly accessible

## Path parameters

- `text_id` string, required: The unique ID of the text.

## Response `200`

Successful Response

- TextDetailResponseV2: Complete V2 response model for text details with all possible fields. Returns null for fields that don't exist in the database. Fields are ordered alphabetically.
  - `bulk_upload_id` string, nullable: Bulk upload batch ID
  - `created_at` string, nullable: Creation timestamp
  - `updated_at` string, nullable: ISO-8601 UTC timestamp of the last change to this text. Compare it for inequality with the value you hold to tell whether your copy is stale; it carries no ordering guarantee. It covers this text's own fields only, not data derived from other records such as frames or analytics.
  - `csv_analysis_url` string, nullable: CSV analysis file URL
  - `csv_status` string, nullable: CSV generation status
  - `document_type` string, nullable: Document type: standalone, transcript
  - `id` string, nullable: Unique text identifier
  - `is_user` boolean, nullable: Whether user submitted text
  - `media_source` string, nullable: Cloud platform source: dropbox, google_drive, aws_s3, public_url
  - `media_source_url` string, nullable: Original cloud storage URL
  - `model_id` string, nullable: Model used for processing
  - `url` string, nullable: GCS bucket URL of uploaded extracted text
  - `parent_id` string, nullable: Parent audio/video ID if transcript
  - `predefined_qa` object[], nullable: Predefined Q&A about the text
  - `psychologist_review` string, nullable: Psychologist review content
  - `psychologist_review_status` string, nullable: Psychologist review status
  - `sentences` object[], nullable: Sentences with emotions
  - `share_status` boolean, nullable: Whether text is shared
  - `status` string, nullable: Processing status
  - `summary` union: Text summary or summary object
    - string
    - object
  - `tags` union[], nullable: Generalized media tags (demographic, survey, label, system). Discriminated union over value_type — see /v2/tag-keys for dimension metadata.
    - union
      - StringTag
        - `id` string, required
        - `key` string, required
        - `source` string, required
        - `created_at` string, date-time, required
        - `created_by` string, nullable
        - `value_type` 'string', required
        - `value_text` string, required
      - EnumTag
        - `id` string, required
        - `key` string, required
        - `source` string, required
        - `created_at` string, date-time, required
        - `created_by` string, nullable
        - `value_type` 'enum', required
        - `value_text` string, required
      - IntegerTag
        - `id` string, required
        - `key` string, required
        - `source` string, required
        - `created_at` string, date-time, required
        - `created_by` string, nullable
        - `value_type` 'integer', required
        - `value_int` integer, required
      - BoolTag
        - `id` string, required
        - `key` string, required
        - `source` string, required
        - `created_at` string, date-time, required
        - `created_by` string, nullable
        - `value_type` 'boolean', required
        - `value_bool` boolean, required
      - DateTag
        - `id` string, required
        - `key` string, required
        - `source` string, required
        - `created_at` string, date-time, required
        - `created_by` string, nullable
        - `value_type` 'date', required
        - `value_date` string, date-time, required
      - GeoTag
        - `id` string, required
        - `key` string, required
        - `source` string, required
        - `created_at` string, date-time, required
        - `created_by` string, nullable
        - `value_type` 'location_admin', required
        - `value_geo` GeoValue, required: Administrative-level location. lat/lng intentionally omitted in v1.
          - `country` string, nullable
          - `state` string, nullable
          - `city` string, nullable
      - SetTag
        - `id` string, required
        - `key` string, required
        - `source` string, required
        - `created_at` string, date-time, required
        - `created_by` string, nullable
        - `value_type` 'set', required
        - `value_text` string, required
      - NoneTag
        - `id` string, required
        - `key` string, required
        - `source` string, required
        - `created_at` string, date-time, required
        - `created_by` string, nullable
        - `value_type` 'none', required
  - `tags_map` object, nullable: Tags map with general and sample flags
  - `text` string, nullable: The actual text content (may contain HTML)
  - `text_emotions` object, nullable: Overall text emotions
  - `title` string, nullable: Text title
  - `ui_request` boolean, nullable: Whether request came from UI
  - `user_id` string, nullable: The user who created the item (the same value as `created_by`).
  - `created_by` string, nullable: The user who created the item. Never changes, including when the item is moved to a workspace.
  - `owner` MediaOwnerOut: Who owns a media item. Never carries an email address.
    - `kind` 'user' | 'workspace', required: `user`: an item owned by one person, its creator. `workspace`: an item owned by a team workspace, which its members can read. This says who owns the item only; a share link or other access to it is separate.
    - `id` string, required: The owner's id: the user's id, or the workspace's id.
    - `name` string, nullable: The workspace's name, or the creator's display name. Absent when it is not known.
  - `word_count` integer, nullable: Word count
  - `youtube_url` string, nullable: YouTube URL if applicable

## Other responses

- `422`: Validation Error

## Changes

- **2026-10-31** `bd825cd86e8c`: 1 info
  - added the optional property `updated_at` to the response with the `200` status
- **2026-10-07** `45bdd041d683`: 2 info
  - added the optional property `created_by` to the response with the `200` status
  - added the optional property `owner` to the response with the `200` status
- **2026-09-22** `536bf48bb9fb`: 3 info
  - the endpoint scheme security `ApiKeyAuth` was added to the API
  - the endpoint scheme security `BearerAuth` was added to the API
  - the endpoint scheme security `OAuth2Delegated` was added to the API
- **2026-09-08** `b10651168511`: 1 info
  - added the optional property `tags` to the response with the `200` status
- **2026-08-20** `74ceee4a5c98`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/imentiv/apis/welcome-to-imentiv-ai/changes/v2/texts/:text_id/get.md)

---

[API](https://skmtc.dev/imentiv/apis/welcome-to-imentiv-ai.md) - [All operations](https://skmtc.dev/imentiv/apis/welcome-to-imentiv-ai/llms.txt) - [OpenAPI document](https://skmtc.dev/imentiv/apis/welcome-to-imentiv-ai/revisions/bc15cec7e794?raw)
