WidgetConversation
A Groove conversation initiated from a Groove Widget.
To fetch a specific Widget conversation by ID:
query Conversation {
node(id: "cnv_12345678") {
... on WidgetConversation {
browser
referrer
pageTitle
pageUrl
platform
referrer
}
}
})
To fetch all possible fields:
query Conversation {
node(id: "cnv_12345678") {
__typename
... on Conversation {
assigned {
at
agent {
id
name
}
team {
id
name
}
}
counts {
attachments
interactions
messages
notes
stateChanges
}
createdAt
contact {
id
email
}
deletedAt
drafts {
nodes {
id
}
}
followers {
nodes {
id
email
}
}
id
number
snoozed {
by { id }
until
}
starred
state
stateUpdatedAt
summaryMessage {
id
bodyPlainText
}
subject
systemUpdatedAt
tags {
nodes {
id
name
}
}
updatedAt
... on FacebookConversation {
facebookId
}
... on TwitterConversation {
twitterId
}
... on WidgetConversation {
browser
referrer
pageTitle
pageUrl
platform
referrer
}
}
}
})
type WidgetConversation implements Conversation, Node {
assigned: Assignment
browser: String
channel: Channel!
contact: Contact
counts: ConversationCounts!
createdAt: DateTime!
customFieldValues(
after: String
before: String
filter: CustomFieldValuesFilter
first: Int
last: Int
): CustomFieldValueConnection
deletedAt: DateTime
drafts(
after: String
before: String
first: Int
last: Int
): DraftConnection
followers(
after: String
before: String
filter: AgentFilter
first: Int
last: Int
orderBy: AgentOrder
): AgentConnection
id: ID!
lastUnansweredUserMessageAt: DateTime!
mentions: [Mention!]!
number: Int!
pageTitle: String
pageUrl: String
platform: String
referrer: String
searchSummary: SearchSummary
snoozed: Snooze
starred: Boolean!
state: ConversationState!
stateUpdatedAt: DateTime
subject: String
summaryMessage: SummaryMessage
systemUpdatedAt: DateTime!
tags(
after: String
before: String
filter: TagFilter
first: Int
last: Int
orderBy: TagOrder
): TagConnection
updatedAt: DateTime!
}
Fields
WidgetConversation.assigned ● Assignment object common
The agents and/or teams that are assigned to the conversation.
WidgetConversation.browser ● String scalar common
The browser used by the contact.
WidgetConversation.channel ● Channel! non-null interface common
The channel in which the conversation is happening.
WidgetConversation.contact ● Contact object common
The primary contact associated with the conversation.
WidgetConversation.counts ● ConversationCounts! non-null object common
The statistics about the messages and interactions in the conversation.
WidgetConversation.createdAt ● DateTime! non-null scalar common
The date and time that the object was created.
WidgetConversation.customFieldValues ● CustomFieldValueConnection object common
Lists all custom fields.
WidgetConversation.customFieldValues.after●Stringscalar commonReturns the elements in the list that come after the specified cursor.
WidgetConversation.customFieldValues.before ● String scalar common
Returns the elements in the list that come before the specified cursor.
WidgetConversation.customFieldValues.filter ● CustomFieldValuesFilter input common
Filter custom field values.
WidgetConversation.customFieldValues.first ● Int scalar common
Returns the first n elements from the list.
WidgetConversation.customFieldValues.last ● Int scalar common
Returns the last n elements from the list.
WidgetConversation.deletedAt ● DateTime scalar common
The date and time that the conversation was trashed.
WidgetConversation.drafts ● DraftConnection object common
The current user's draft messages on the conversation.
WidgetConversation.drafts.after●Stringscalar commonReturns the elements in the list that come after the specified cursor.
WidgetConversation.drafts.before ● String scalar common
Returns the elements in the list that come before the specified cursor.
WidgetConversation.drafts.first ● Int scalar common
Returns the first n elements from the list.
WidgetConversation.drafts.last ● Int scalar common
Returns the last n elements from the list.
WidgetConversation.followers ● AgentConnection object common
Lists all agents that are following the conversation.
WidgetConversation.followers.after●Stringscalar commonReturns the elements in the list that come after the specified cursor.
WidgetConversation.followers.before ● String scalar common
Returns the elements in the list that come before the specified cursor.
WidgetConversation.followers.filter ● AgentFilter input common
The fields by which to filter the results.
WidgetConversation.followers.first ● Int scalar common
Returns the first n elements from the list.
WidgetConversation.followers.last ● Int scalar common
Returns the last n elements from the list.
WidgetConversation.followers.orderBy ● AgentOrder input common
The field and direction by which to order the results.
WidgetConversation.id ● ID! non-null scalar common
WidgetConversation.lastUnansweredUserMessageAt ● DateTime! non-null scalar common
The date and time of the last unanswered user message.
WidgetConversation.mentions ● [Mention!]! non-null object common
The mentions for the conversation.
WidgetConversation.number ● Int! non-null scalar common
The ID of the conversation within the account.
WidgetConversation.pageTitle ● String scalar common
The title of the page that the Widget is embedded into.
WidgetConversation.pageUrl ● String scalar common
The URL of the page that the Widget is embedded into.
WidgetConversation.platform ● String scalar common
The operating system used by the contact.
WidgetConversation.referrer ● String scalar common
The URL of the page that the contact came from.
WidgetConversation.searchSummary ● SearchSummary object common
The comment that matched the given search keywords.
WidgetConversation.snoozed ● Snooze object common
The agent that snoozed the conversation and when it is snoozed until.
WidgetConversation.starred ● Boolean! non-null scalar common
True if the conversation is starred; false otherwise.
WidgetConversation.state ● ConversationState! non-null enum common
The state of the conversation.
WidgetConversation.stateUpdatedAt ● DateTime scalar common
The date and time that the conversation state was last updated.
WidgetConversation.subject ● String scalar common
The subject of the conversation.
WidgetConversation.summaryMessage ● SummaryMessage object common
The conversation summary, which is usually the first MessageChange in the conversation.
WidgetConversation.systemUpdatedAt ● DateTime! non-null scalar common
The date and time that the conversation was last updated.
WidgetConversation.tags ● TagConnection object common
Lists all tags.
WidgetConversation.tags.after●Stringscalar commonReturns the elements in the list that come after the specified cursor.
WidgetConversation.tags.before ● String scalar common
Returns the elements in the list that come before the specified cursor.
WidgetConversation.tags.filter ● TagFilter input common
The fields by which to filter the results.
WidgetConversation.tags.first ● Int scalar common
Returns the first n elements from the list.
WidgetConversation.tags.last ● Int scalar common
Returns the last n elements from the list.
WidgetConversation.tags.orderBy ● TagOrder input common
The field and direction by which to order the results.
WidgetConversation.updatedAt ● DateTime! non-null scalar common
The date and time that the object was last updated.
Interfaces
Conversation interface common
A Groove conversation is a thread of messages (for example emails, chats, or notes) and associated actions or events (for example 'opened', 'snoozed', and 'assigned').
To fetch Messages/Ratings/StateChanges/etc. on a conversation, query the
Events connection (on the QueryRoot) with the conversation ID.
To fetch all possible fields:
query Conversation {
node(id: "cnv_12345678") {
__typename
... on Conversation {
assigned {
at
agent {
id
name
}
team {
id
name
}
}
counts {
attachments
interactions
messages
notes
stateChanges
}
createdAt
contact {
id
email
}
deletedAt
drafts {
nodes {
id
}
}
followers {
nodes {
id
email
}
}
id
number
snoozed {
by { id }
until
}
starred
state
stateUpdatedAt
summaryMessage {
id
bodyPlainText
}
subject
systemUpdatedAt
tags {
nodes {
id
name
}
}
updatedAt
... on FacebookConversation {
facebookId
}
... on TwitterConversation {
twitterId
}
... on WidgetConversation {
browser
referrer
pageTitle
pageUrl
platform
referrer
}
}
}
}
To search conversations matching a specific keyword:
query Conversations {
conversations(filter: { keywords: "rad" }) {
edges {
node {
... on Conversation {
id
number
searchSummary {
author {
__typename
... on Agent {
email
role
}
... on Contact {
email
}
}
body
forwarded
note
}
}
}
}
}
}
Node interface common
An object with an ID.
Implemented by
CustomFieldSubjectType union