> ## Documentation Index
> Fetch the complete documentation index at: https://learn.nexudus.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List Discussion Threads

> Returns discussion board threads filtered by group, inbox, query, and tag.

# List Discussion Threads

Returns a list of discussion board threads for the community feature. Supports filtering by group, inbox type, keyword search, and tag.

## Authentication

Requires a valid customer bearer token.

## Query Parameters

<ParamField query="groupId" type="number" required>
  Filter threads to a specific discussion group.
</ParamField>

<ParamField query="inbox" type="string">
  Inbox filter (e.g. `null` for all, or specific inbox type).
</ParamField>

<ParamField query="query" type="string">
  Keyword search filter.
</ParamField>

<ParamField query="tag" type="string">
  Filter by tag name.
</ParamField>

<ParamField query="_shape" type="string">
  Comma-separated list of field paths to include in the response. When provided, only the
  specified fields are returned — useful for reducing payload size. Supports nested paths
  using dot notation. Example: `_shape=Records.Subject,Records.LastMessageUtc,Records.MessageCount`.
</ParamField>

## Response

Returns a paginated list of thread summary objects.

### Thread Summary Fields

#### Identity

| Field            | Type     | Description                              |
| ---------------- | -------- | ---------------------------------------- |
| `Id`             | `number` | Unique numeric identifier for the thread |
| `UniqueId`       | `string` | Globally unique identifier               |
| `ThreadUniqueId` | `string` | Thread-specific unique identifier        |

#### Content

| Field     | Type       | Description                   |
| --------- | ---------- | ----------------------------- |
| `Subject` | `string`   | Thread subject / title        |
| `Message` | `string`   | Original post content         |
| `Tags`    | `string[]` | Array of tag strings          |
| `Private` | `boolean`  | Whether the thread is private |

#### Author

| Field           | Type     | Description                        |
| --------------- | -------- | ---------------------------------- |
| `UserId`        | `number` | Author user identifier             |
| `CoworkerId`    | `number` | Author coworker identifier         |
| `FullName`      | `string` | Author full name                   |
| `ShortFullName` | `string` | Abbreviated name (first + initial) |

#### Group & Location

| Field                | Type     | Description                   |
| -------------------- | -------- | ----------------------------- |
| `GroupId`            | `number` | Discussion group identifier   |
| `GroupName`          | `string` | Discussion group display name |
| `BusinessId`         | `number` | Location identifier           |
| `BusinessName`       | `string` | Location display name         |
| `BusinessWebAddress` | `string` | Location subdomain identifier |

#### Activity

| Field                     | Type             | Description                      |
| ------------------------- | ---------------- | -------------------------------- |
| `MessageCount`            | `number`         | Total number of replies          |
| `LikeCount`               | `number`         | Total number of likes            |
| `LastMessage`             | `string \| null` | Last reply date (business-local) |
| `LastMessageUtc`          | `string \| null` | Last reply date (UTC)            |
| `LastMessageText`         | `string`         | Last reply message text          |
| `LastMessageUserFullName` | `string`         | Name of last reply author        |
| `LastMessageCoworkerId`   | `number \| null` | Coworker id of last reply author |
| `LastMessageId`           | `number \| null` | Id of the last reply message     |

#### Participation

| Field          | Type       | Description                         |
| -------------- | ---------- | ----------------------------------- |
| `Participants` | `string[]` | Array of participant identifiers    |
| `FullNames`    | `string[]` | Array of participant full names     |
| `Likes`        | `string[]` | Array of users who liked the thread |
| `FileIDs`      | `string[]` | Array of attached file identifiers  |
| `FileNames`    | `string[]` | Array of attached file names        |

#### User State

| Field            | Type      | Description                          |
| ---------------- | --------- | ------------------------------------ |
| `MutedForUser`   | `boolean` | Whether muted by the current user    |
| `FollowedByUser` | `boolean` | Whether followed by the current user |
| `LikedByUser`    | `boolean` | Whether liked by the current user    |

#### Timestamps

| Field          | Type             | Description                             |
| -------------- | ---------------- | --------------------------------------- |
| `PostedOn`     | `string`         | Date posted (business-local time)       |
| `PostedOnUtc`  | `string`         | Date posted (UTC)                       |
| `CreatedOn`    | `string`         | Date created (business-local time)      |
| `UpdatedOn`    | `string \| null` | Date last updated (business-local time) |
| `CreatedOnUtc` | `string`         | Date created (UTC)                      |
| `UpdatedOnUtc` | `string \| null` | Date last updated (UTC)                 |

## Examples

### Fetch threads in a group

```http theme={null}
GET /api/public/community/board/threads?groupId=1&inbox=&query=&tag=
Authorization: Bearer {token}
```

## TypeScript Integration

```typescript theme={null}
import endpoints from '@/api/endpoints'

const response = await httpClient.get(endpoints.community.board.list(1))
```
