Queries

account#

Type: Account

Returns account related information.

account: Account

agentPreferences#

Type: AgentPreferenceConnection

DEPRECATED Please use agent.preferences.

Lists all agent preferences.

agentPreferences(
after: String
before: String
first: Int = 0
last: Int = 0
filter: AgentPreferencesFilterInput
): AgentPreferenceConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (AgentPreferencesFilterInput) The fields by which to filter the results.

agents#

Type: AgentConnection

Lists all agents in the organization.

agents(
after: String
before: String
first: Int = 0
last: Int = 0
filter: AgentFilter = "[object Object]"
orderBy: AgentOrder = "[object Object]"
): AgentConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (AgentFilter) The fields by which to filter the results.
orderBy (AgentOrder) The field and direction by which to order the results.

aiConversationSuggestions#

Type: AiSuggestionConnection

No description

aiConversationSuggestions(
after: String
before: String
first: Int = 0
last: Int = 0
filter: SuggestionFilterInput!
): AiSuggestionConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (SuggestionFilterInput!) The fields by which to filter the results.

articles#

Type: ArticleConnection

Lists all Knowledge Base articles.

articles(
after: String
before: String
first: Int = 0
last: Int = 0
filter: ArticleFilter = "[object Object]"
orderBy: ArticleOrder = "[object Object]"
): ArticleConnection!

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (ArticleFilter) The fields by which to filter the results.
orderBy (ArticleOrder) The field and direction by which to order the results.

attachments#

Type: ConversationAttachmentConnection

No description

attachments(
after: String
before: String
first: Int = 0
last: Int = 0
filter: AttachmentsFilterInput
): ConversationAttachmentConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (AttachmentsFilterInput) The fields by which to filter the results.

billing#

Type: BillingType

Returns billing related information.

billing: BillingType

cannedReplies#

Type: CannedReplyConnection

Lists all canned replies.

cannedReplies(
after: String
before: String
first: Int = 0
last: Int = 0
filter: CannedReplyFilter = "[object Object]"
orderBy: CannedReplyOrder = "[object Object]"
): CannedReplyConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (CannedReplyFilter) The fields by which to filter the results.
orderBy (CannedReplyOrder) The field and direction by which to order the results.

cannedReplyCategories#

Type: CannedReplyCategoryConnection

Lists all canned reply categories.

cannedReplyCategories(
after: String
before: String
first: Int = 0
last: Int = 0
orderBy: CategoryOrder = "[object Object]"
): CannedReplyCategoryConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
orderBy (CategoryOrder) The field and direction by which to order the results.

channels#

Type: ChannelConnection

Lists all channels.

channels(
after: String
before: String
first: Int = 0
last: Int = 0
filter: ChannelFilter = "[object Object]"
orderBy: ChannelOrder = "[object Object]"
): ChannelConnection!

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (ChannelFilter) The fields by which to filter the results.
orderBy (ChannelOrder) The field and direction by which to order the results.

companies#

Type: CompanyConnection

Lists all companies.

companies(
after: String
before: String
first: Int = 0
last: Int = 0
filter: CompanyFilter
orderBy: CompanyOrder = "[object Object]"
): CompanyConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (CompanyFilter) The fields by which to filter the results.
orderBy (CompanyOrder) The field and direction by which to order the results.

contacts#

Type: ContactConnection

Lists all contacts.

contacts(
after: String
before: String
first: Int = 0
last: Int = 0
filter: ContactFilter = "[object Object]"
orderBy: ContactOrder = "[object Object]"
): ContactConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (ContactFilter) The fields by which to filter the results.
orderBy (ContactOrder) The field and direction by which to order the results.

conversation#

Type: Conversation

Finds a conversation by number.

conversation(
number: Int!
): Conversation

Conversation

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
}
}
}
}
}
}

Arguments#

NameDescription
number (Int!) The conversation number.

conversationPreferences#

Type: ConversationPreferences

Conversation preferences

conversationPreferences: ConversationPreferences!

conversations#

Type: ConversationConnection

Lists all conversations.

conversations(
after: String
before: String
first: Int = 0
last: Int = 0
filter: ConversationFilter = "[object Object]"
orderBy: ConversationOrder
): ConversationConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (ConversationFilter) The fields by which to filter the results.
orderBy (ConversationOrder) The field and direction by which to order the results.

customFieldCategories#

Type: CustomFieldCategoryConnection

Lists all custom field categories.

customFieldCategories(
after: String
before: String
first: Int = 0
last: Int = 0
filter: CustomFieldCategoryFilter
): CustomFieldCategoryConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (CustomFieldCategoryFilter) The fields by which to filter the results.

customFields#

Type: CustomFieldConnection

Lists all custom fields.

customFields(
after: String
before: String
first: Int = 0
last: Int = 0
filter: CustomFieldFilter
): CustomFieldConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (CustomFieldFilter) The fields by which to filter the results.

customProfile#

Type: JSON

Fetches the custom profile for a contact

customProfile(
contactId: ID!
hardRefresh: Boolean
channelId: ID = 0
): JSON

Arguments#

NameDescription
contactId (ID!) The ID of the contact.
hardRefresh (Boolean) Whether the custom profile should be refreshed.
channelId (ID) The ID of the channel.

customerRatingSettings#

Type: CustomerRatingSettingConnection

No description

customerRatingSettings(
after: String
before: String
first: Int = 0
last: Int = 0
): CustomerRatingSettingConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.

drafts#

Type: DraftConnection

Lists drafts associated to requesting user

drafts(
after: String
before: String
first: Int = 0
last: Int = 0
filter: DraftFilter = "[object Object]"
orderBy: DraftOrder = "[object Object]"
): DraftConnection!

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (DraftFilter) The fields by which to filter the results.
orderBy (DraftOrder) The field and direction by which to order the results.

emailMarketingIntegrations#

Type: EmailMarketingIntegrationConnection

The installed email marketing integrations.

emailMarketingIntegrations(
after: String
before: String
first: Int = 0
last: Int = 0
): EmailMarketingIntegrationConnection!

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.

emailMarketingSubscriptions#

Type: EmailMarketingSubscriptionConnection

The email marketing

emailMarketingSubscriptions(
after: String
before: String
first: Int = 0
last: Int = 0
integrationId: ID!
contactId: ID!
): EmailMarketingSubscriptionConnection!

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
integrationId (ID!) The ID of the email marketing integration.
contactId (ID!) The ID of the contact.

ephemeralJobResult#

Type: EphemeralJobResult

Find an ephemeral job result by id

ephemeralJobResult(
id: ID!
): EphemeralJobResult

eventGroups#

Type: EventGroupTypeConnection

No description

eventGroups(
after: String
before: String
first: Int = 0
last: Int = 0
filter: EventGroupsFilterInput!
): EventGroupTypeConnection!

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (EventGroupsFilterInput!) The fields by which to filter the results.

events#

Type: EventConnection

Lists the events for a given conversation.

events(
after: String
before: String
first: Int = 0
last: Int = 0
filter: EventsFilterInput!
): EventConnection!

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (EventsFilterInput!) The fields by which to filter the results.

excludedDomains#

Type: ExcludedDomainConnection

Lists all excluded domains.

excludedDomains(
after: String
before: String
first: Int = 0
last: Int = 0
): ExcludedDomainConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.

existsForAnyAccount#

Type: Boolean

Checks if there is already existing OauthCredential with provided shop domain for any Groove account.

existsForAnyAccount(
provider: String!
shopDomain: String!
): Boolean!

Arguments#

NameDescription
provider (String!) The provider to check for existing integrations for.
shopDomain (String!) The shop domain.

featureTemplateCategories#

Type: String

Lists all feature templates categories.

featureTemplateCategories: [String!]!

featureTemplates#

Type: FeatureTemplates

Lists feature templates.

featureTemplates: FeatureTemplates!

folders#

Type: FolderConnection

Lists all folders that are accessible to the authenticated agent. Each folder can be associated with one or more mailboxes.

folders(
after: String
before: String
first: Int = 0
last: Int = 0
filter: FolderFilter = "[object Object]"
orderBy: FolderOrder = "[object Object]"
): FolderConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (FolderFilter) The fields by which to filter the results.
orderBy (FolderOrder) The field and direction by which to order the results.

import2Imports#

Type: ImportConnection

Lists all imports.

import2Imports(
after: String
before: String
first: Int = 0
last: Int = 0
): ImportConnection!

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.

import2Tools#

Type: ToolConnection

Lists all apps provided by Import2 partner.

import2Tools(
after: String
before: String
first: Int = 0
last: Int = 0
): ToolConnection!

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.

integrations#

Type: IntegrationUnionConnection

Connected integrations.

integrations(
after: String
before: String
first: Int = 0
last: Int = 0
filter: IntegrationsFilter
): IntegrationUnionConnection!

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (IntegrationsFilter) Filter integrations.

knowledgeBases#

Type: KnowledgeBaseConnection

Lists all Knowledge Bases.

knowledgeBases(
after: String
before: String
first: Int = 0
last: Int = 0
): KnowledgeBaseConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.

me#

Type: Agent

Gets the authenticated agent.

me: Agent!

Agent

An agent is a user on Groove that is part of an organization.

To find all active agents, along with the teams they belong to, ordered by name:

query Agents {
agents {
edges {
node {
account {
id
subdomain
}
avatarUrl
createdAt
email
id
name
role
state
subdomain
preferences {
edges {
node {
key
value
}
}
}
teams {
edges {
node {
id
name
}
}
pageInfo {
hasNextPage
}
}
oauthCredentials {
edges {
node {
uid
provider
accessToken
refreshToken
expiresAt
createdAt
updatedAt
}
}
}
username
updatedAt
twoFactorAuthCode {
uri
code
}
}
}
}
}

To query for invited agents:

query Agents {
agents(filter: { state: INVITED }) {
edges {
node {
id
name
}
}
}
}

To reverse order the search:

query Agents {
agents(orderBy: { field: NAME, direction: DESC }) {
edges {
node {
id
name
}
}
}
}

To fetch agents ordered by the most times you assigned them to a conversation:

query Agents {
agents(orderBy: { field: ASSIGNMENT_COUNT, direction: DESC }) {
nodes {
id
name
}
}
}

To fetch a single agent:

query Node {
node(id: $agentId) {
... on Agent {
id
name
}
}
}

node#

Type: Node

Fetches an object given its ID.

node(
id: ID!
): Node

Arguments#

NameDescription
id (ID!) ID of the object.

nodes#

Type: Node

Fetches a list of objects given a list of IDs.

nodes(
ids: [ID!]!
): [Node]!

Arguments#

NameDescription
ids ([ID!]!) IDs of the objects.

ping#

Type: String

Performs a health check for the Groove GraphQL API.

ping: String!

pushTokens#

Type: PushTokenConnection

All push tokens for the current user.

pushTokens(
after: String
before: String
first: Int = 0
last: Int = 0
): PushTokenConnection!

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.

rooms#

Type: RoomConnection

Lists all Live Chat rooms.

rooms(
after: String
before: String
first: Int = 0
last: Int = 0
filter: RoomFilter = "[object Object]"
orderBy: RoomOrder = "[object Object]"
): RoomConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (RoomFilter) The fields by which to filter the results.
orderBy (RoomOrder) The field and direction by which to order the results.

roomsCounts#

Type: RoomsCountsResult

Lists all Live Chat room counts.

roomsCounts(
folderIds: [ID!] = []
channelId: ID = 0
channelType: RoomChannelTypeEnum
): RoomsCountsResult

Arguments#

NameDescription
folderIds ([ID!]) The IDs of the folders to get a chat rooms count for.
channelId (ID) The ID of the channel to filter the chat rooms counts by.
channelType (RoomChannelTypeEnum) The channel type that the request needs to be filtered by.

rules#

Type: RuleConnection

Lists all rules in the organization.

rules(
after: String
before: String
first: Int = 0
last: Int = 0
filter: RuleFilter = "[object Object]"
orderBy: RuleOrder = "[object Object]"
): RuleConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (RuleFilter) The fields by which to filter the results.
orderBy (RuleOrder) The field and direction by which to order the results.

starredCannedReplies#

Type: StarredCannedReplyConnection

No description

starredCannedReplies(
after: String
before: String
first: Int = 0
last: Int = 0
): StarredCannedReplyConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.

tags#

Type: TagConnection

Lists all tags.

tags(
after: String
before: String
first: Int = 0
last: Int = 0
filter: TagFilter
orderBy: TagOrder
): TagConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (TagFilter) The fields by which to filter the results.
orderBy (TagOrder) The field and direction by which to order the results.

teams#

Type: TeamConnection

Lists all teams in the organization.

teams(
after: String
before: String
first: Int = 0
last: Int = 0
filter: TeamFilter = "[object Object]"
orderBy: TeamOrder = "[object Object]"
): TeamConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (TeamFilter) The fields by which to filter the results.
orderBy (TeamOrder) The field and direction by which to order the results.

themes#

Type: ThemeConnection

Lists all Knowledge Base themes.

themes(
after: String
before: String
first: Int = 0
last: Int = 0
): ThemeConnection!

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.

widgets#

Type: NewWidgetConnection

Lists all widgets in the organization.

widgets(
after: String
before: String
first: Int = 0
last: Int = 0
filter: WidgetFilter
): NewWidgetConnection

Arguments#

NameDescription
after (String) Returns the elements in the list that come after the specified cursor.
before (String) Returns the elements in the list that come before the specified cursor.
first (Int) Returns the first n elements from the list.
last (Int) Returns the last n elements from the list.
filter (WidgetFilter) Filter widgets.