intercom-client
Version:
Official Node bindings to the Intercom API
69 lines (68 loc) • 3 kB
TypeScript
/**
* This file was auto-generated by Fern from our API Definition.
*/
import * as Intercom from "../../../index";
/**
* Conversations are how you can communicate with users in Intercom. They are created when a contact replies to an outbound message, or when one admin directly sends a message to a single contact.
*/
export interface Conversation {
/** Always conversation. */
type?: "conversation";
/** The id representing the conversation. */
id: string;
/** The title given to the conversation. */
title?: string;
/** The time the conversation was created. */
created_at: number;
/** The last time the conversation was updated. */
updated_at: number;
/** The last time a Contact responded to an Admin. In other words, the time a customer started waiting for a response. Set to null if last reply is from an Admin. */
waiting_since?: number;
/** If set this is the time in the future when this conversation will be marked as open. i.e. it will be in a snoozed state until this time. i.e. it will be in a snoozed state until this time. */
snoozed_until?: number;
/** Indicates whether a conversation is open (true) or closed (false). */
open: boolean;
/** Can be set to "open", "closed" or "snoozed". */
state: Conversation.State;
/** Indicates whether a conversation has been read. */
read: boolean;
/** If marked as priority, it will return priority or else not_priority. */
priority?: Conversation.Priority;
/** The id of the admin assigned to the conversation. If it's not assigned to an admin it will return null. */
admin_assignee_id?: number;
/** The id of the team assigned to the conversation. If it's not assigned to a team it will return null. */
team_assignee_id?: string;
tags?: Intercom.Tags;
conversation_rating?: Intercom.ConversationRating;
source: Intercom.ConversationSource;
contacts: Intercom.ConversationContacts;
teammates: Intercom.ConversationTeammates;
custom_attributes: Intercom.CustomAttributes;
first_contact_reply?: Intercom.ConversationFirstContactReply;
sla_applied?: Intercom.SlaApplied;
statistics?: Intercom.ConversationStatistics;
conversation_parts?: Intercom.ConversationParts;
linked_objects?: Intercom.LinkedObjectList;
/** Indicates whether the AI Agent participated in the conversation. */
ai_agent_participated?: boolean;
ai_agent?: Intercom.AiAgent;
}
export declare namespace Conversation {
/**
* Can be set to "open", "closed" or "snoozed".
*/
type State = "open" | "closed" | "snoozed";
const State: {
readonly Open: "open";
readonly Closed: "closed";
readonly Snoozed: "snoozed";
};
/**
* If marked as priority, it will return priority or else not_priority.
*/
type Priority = "priority" | "not_priority";
const Priority: {
readonly Priority: "priority";
readonly NotPriority: "not_priority";
};
}