Interface TopicResponse<CustomFields>

interface TopicResponse {
    app: string;
    createdAt: string;
    customFields?: CustomFields;
    id: string;
    isPublic: boolean;
    lastMessage?: null | MessageResponse<unknown>;
    lastMessageAt?: null | string;
    lastMessageId?: null | string;
    name: string;
    ownerIds: string[];
    ownerType: "organization" | "user";
    owners?: (UserResponse<unknown> | OrganizationResponse<unknown>)[];
    typeId: string;
    unreadCount?: null | number;
    updatedAt: string;
}

Type Parameters

  • CustomFields = unknown

Properties

app: string

APP id used for topic (useful for distinguishing purpose of topic)

createdAt: string

ISO datetime when the topic was created

customFields?: CustomFields

Custom fields for the topic

id: string

Topic ID

isPublic: boolean

Whether the topic is public. This may not be used depending upon application

lastMessage?: null | MessageResponse<unknown>

The latest message made on the topic. This is expanded by default.

lastMessageAt?: null | string

ISO datetime when the last message was made on the topic

lastMessageId?: null | string

ID of the latest message made on the topic

name: string

Name of the topic

ownerIds: string[]

Owner IDs for the topic

ownerType: "organization" | "user"

Owner type for the topic. Used to configure data type for ownerId

owners?: (UserResponse<unknown> | OrganizationResponse<unknown>)[]

Expanded owners for the topic when expand is given organization or user

typeId: string

Type ID for the topic. This is an arbitrary string

unreadCount?: null | number

Unread message count on the topic. This can be for the user or the organization depending upon the value of readStatusForOrg for this endpoint

updatedAt: string

ISO datetime for when the message was last updated

Generated using TypeDoc