---
title: "Term"
description: "Term"
url: "https://www.contentstack.com/docs/developers/sdks/content-delivery-sdk/typescript/reference/term"
product: "Contentstack"
doc_type: "guide"
audience:
  - developers
  - admins
version: "current"
last_updated: "2026-09-21"
---

# Term

## Term

Terms are the fundamental building blocks used to create hierarchical structures and to classify and categorize information systematically.

Name

Type

Description

taxonomyUid

string

UID of the taxonomy

termUid

string

UID of the term

**Note**: Term has no public constructor. Get an instance through stack.taxonomy(taxonomyUid).term(termUid). Calling term() without a UID returns a TermQuery instance instead, for listing multiple terms.

## fetch

The fetch method retrieves the details of a specific published term.

```
Validationlocale is an optional positional argument, not a chained setter. It must be passed directly to fetch(locale). There is no client-side validation of the locale code. An invalid or unpublished locale is rejected by the API. See Delivery API Errors.
BehaviorMaps to a single GET request to /taxonomies/&#123;taxonomy_uid&#125;/terms/&#123;term_uid&#125;. The response is unwrapped from response.term. If that key is absent, the raw response is returned as-is.
Exampleimport contentstack, &#123;BaseTerm&#125; from '@contentstack/delivery-sdk'

interface BlogTerms extends BaseTerm &#123;
  taxonomy_uid: string
  uid: string
&#125;

const stack = contentstack.stack(&#123; apiKey: "apiKey", deliveryToken: "deliveryToken", environment: "environment" &#125;)

// Master locale
const result = await stack
    .taxonomy(taxonomy_uid)
    .term(term_uid)
    .fetch<BlogTerms>()

// Localized
const localized = await stack
    .taxonomy(taxonomy_uid)
    .term(term_uid)
    .fetch<BlogTerms>('mr-in')
```

Locale code (for example, mr-in), passed positionally. Omit to retrieve the master locale.

## locales

The locales method fetches all published, localized versions of a single term.

```
ValidationThis method takes no parameters. There is no client-side validation. An invalid or nonexistent term UID (set earlier through taxonomy(uid).term(termUid)) is rejected by the API. See Delivery API Errors.
BehaviorMaps to a single GET request to /taxonomies/&#123;taxonomy_uid&#125;/terms/&#123;term_uid&#125;/locales. The response is unwrapped from response.locales. If that key is absent, the raw response is returned as-is.
Exampleconst result = await stack
    .taxonomy(taxonomy_uid)
    .term(term_uid)
    .locales()
```

## ancestors

The ancestors method fetches all ancestors of a single published term, up to the root.

```
ValidationThis method takes no parameters. There is no client-side validation. An invalid or nonexistent term UID (set earlier through taxonomy(uid).term(termUid)) is rejected by the API. See Delivery API Errors.
BehaviorMaps to a single GET request to /taxonomies/&#123;taxonomy_uid&#125;/terms/&#123;term_uid&#125;/ancestors. The response is unwrapped from response.ancestors. If that key is absent, the raw response is returned as-is.
Exampleconst result = await stack
    .taxonomy(taxonomy_uid)
    .term(term_uid)
    .ancestors()
```

## descendants

The descendants method fetches all descendants of a single published term.

```
ValidationThis method takes no parameters. There is no client-side validation. An invalid or nonexistent term UID (set earlier through taxonomy(uid).term(termUid)) is rejected by the API. See Delivery API Errors.
BehaviorMaps to a single GET request to /taxonomies/&#123;taxonomy_uid&#125;/terms/&#123;term_uid&#125;/descendants. The response is unwrapped from response.descendants. If that key is absent, the raw response is returned as-is.
Exampleconst result = await stack
    .taxonomy(taxonomy_uid)
    .term(term_uid)
    .descendants()
```

## Term | TypeScript Delivery SDK | Contentstack

Term represents a single published taxonomy term in the TypeScript Delivery SDK, with methods to fetch the term, its locales, ancestors, and descendants.