Foqal Agent Apis

Welcome to the Foqal Agent GraphQL API documentation. We are happy you are looking for ways to expand your Foqal Agent experience. However, keep in mind, we build a bunch of integrations already. So before building something new, consult with your CSM as there might already be a way to do it.

Contact

love@foqal.io

API Endpoints
https://support.foqal.io/api/graph
Headers
# Your API token from the dashboard. Must be included in all API calls.
Authorization: Bearer <YOUR_TOKEN_HERE>
# Your application domain. This will identify which application you are referring to.
Origin: https://[your-domain].foqal.app
Version

1.0.0

Authentication

You will need to add an authorization header and origin header for every api request you make.

The origin will always be the URL of your Foqal Agent instance. For example, if your support portal is at acme.foqal.app, you should set your origin header to acme.foqal.app.

Your Authorization header is a Bearer token. To create a authentication token, go to your settings -> users and create a new token.

Queries

approval

Response

Returns an ApprovalRequest

Arguments
Name Description
approvalId - ApprovalRequestUrn!

Example

Query
query approval($approvalId: ApprovalRequestUrn!) {
  approval(approvalId: $approvalId) {
    id
    status
    createdDate
    approvedById
    approvedBy {
      ...UserFragment
    }
    approvedDate
    requesterId
    requester {
      ...UserFragment
    }
    title
    text
    approvedNotes
    rejectedNotes
    form {
      ...ApprovalFormFragment
    }
    formAnswers {
      ...ApprovalFormAnswersFragment
    }
    recipients {
      ...ApprovalRequestRecipientFragment
    }
  }
}
Variables
{"approvalId": ApprovalRequestUrn}
Response
{
  "data": {
    "approval": {
      "id": ApprovalRequestUrn,
      "status": "OPEN",
      "createdDate": DateTimeISO,
      "approvedById": Urn,
      "approvedBy": User,
      "approvedDate": DateTimeISO,
      "requesterId": Urn,
      "requester": User,
      "title": "abc123",
      "text": "xyz789",
      "approvedNotes": "abc123",
      "rejectedNotes": "xyz789",
      "form": ApprovalForm,
      "formAnswers": ApprovalFormAnswers,
      "recipients": [ApprovalRequestRecipient]
    }
  }
}

approvals

Response

Returns [ApprovalRequest!]

Example

Query
query approvals {
  approvals {
    id
    status
    createdDate
    approvedById
    approvedBy {
      ...UserFragment
    }
    approvedDate
    requesterId
    requester {
      ...UserFragment
    }
    title
    text
    approvedNotes
    rejectedNotes
    form {
      ...ApprovalFormFragment
    }
    formAnswers {
      ...ApprovalFormAnswersFragment
    }
    recipients {
      ...ApprovalRequestRecipientFragment
    }
  }
}
Response
{
  "data": {
    "approvals": [
      {
        "id": ApprovalRequestUrn,
        "status": "OPEN",
        "createdDate": DateTimeISO,
        "approvedById": Urn,
        "approvedBy": User,
        "approvedDate": DateTimeISO,
        "requesterId": Urn,
        "requester": User,
        "title": "abc123",
        "text": "xyz789",
        "approvedNotes": "abc123",
        "rejectedNotes": "xyz789",
        "form": ApprovalForm,
        "formAnswers": ApprovalFormAnswers,
        "recipients": [ApprovalRequestRecipient]
      }
    ]
  }
}

article

Description

Returns one article for the given id.

Response

Returns an Article

Arguments
Name Description
versionId - ArticleVersionUrn
id - ArticleUrn!

Example

Query
query article(
  $versionId: ArticleVersionUrn,
  $id: ArticleUrn!
) {
  article(
    versionId: $versionId,
    id: $id
  ) {
    id
    type
    versionId
    isEditableVersion
    tags {
      ...ArticleTagFragment
    }
    title
    iconUrl
    body {
      ...RichBodyFragment
    }
    creatorId
    creator {
      ...UserFragment
    }
    portalId
    portal {
      ...PortalFragment
    }
    createdDate
    modifiedDate
    publishedDate
    publishedById
    publishedBy {
      ...UserFragment
    }
    previewText
    url
    sections {
      ...ArticleSectionFragment
    }
    draftCreatorId
    draftCreator {
      ...UserFragment
    }
    draftModifiedDate
    permissions {
      ...PermissionAssignmentFragment
    }
    currentUserPermission
    relatedArticles {
      ...ArticlePreviewFragment
    }
    feedback {
      ...ArticleFeedbackFragment
    }
    proposal {
      ...ArticleProposalFragment
    }
  }
}
Variables
{
  "versionId": ArticleVersionUrn,
  "id": ArticleUrn
}
Response
{
  "data": {
    "article": {
      "id": ArticleUrn,
      "type": "ARTICLE",
      "versionId": ArticleVersionUrn,
      "isEditableVersion": false,
      "tags": [ArticleTag],
      "title": "xyz789",
      "iconUrl": "xyz789",
      "body": RichBody,
      "creatorId": Urn,
      "creator": User,
      "portalId": PortalUrn,
      "portal": Portal,
      "createdDate": DateTimeISO,
      "modifiedDate": DateTimeISO,
      "publishedDate": DateTimeISO,
      "publishedById": Urn,
      "publishedBy": User,
      "previewText": "abc123",
      "url": "abc123",
      "sections": [ArticleSection],
      "draftCreatorId": Urn,
      "draftCreator": User,
      "draftModifiedDate": DateTimeISO,
      "permissions": [PermissionAssignment],
      "currentUserPermission": "EXECUTE",
      "relatedArticles": [ArticlePreview],
      "feedback": ArticleFeedback,
      "proposal": ArticleProposal
    }
  }
}

articleTags

Response

Returns [ArticleTag!]!

Example

Query
query articleTags {
  articleTags {
    childIds
    title
    description
    iconUrl
    indexPageId
    id
  }
}
Response
{
  "data": {
    "articleTags": [
      {
        "childIds": [ArticleTagUrn],
        "title": "abc123",
        "description": "abc123",
        "iconUrl": "abc123",
        "indexPageId": ArticleUrn,
        "id": ArticleTagUrn
      }
    ]
  }
}

articleVersions

Description

Returns one article for the given id.

Response

Returns [ArticleVersion!]

Arguments
Name Description
id - ArticleUrn!

Example

Query
query articleVersions($id: ArticleUrn!) {
  articleVersions(id: $id) {
    id
    createdDate
    creatorId
    creator {
      ...UserFragment
    }
    publishedDate
    publishedById
    publishedBy {
      ...UserFragment
    }
    isProposed
    isLatestPublished
  }
}
Variables
{"id": ArticleUrn}
Response
{
  "data": {
    "articleVersions": [
      {
        "id": ArticleVersionUrn,
        "createdDate": DateTimeISO,
        "creatorId": Urn,
        "creator": User,
        "publishedDate": DateTimeISO,
        "publishedById": Urn,
        "publishedBy": User,
        "isProposed": true,
        "isLatestPublished": false
      }
    ]
  }
}

articles

Response

Returns an ArticleResults!

Arguments
Name Description
options - ArticleSearchOptions Options controlling how to search for articles.
tagId - ArticleTagUrn Get only the articles for a single tag
query - String The query to look for a specific article or answer.
limit - Float The default number of items to return.
nextPageToken - String The token for the next page.

Example

Query
query articles(
  $options: ArticleSearchOptions,
  $tagId: ArticleTagUrn,
  $query: String,
  $limit: Float,
  $nextPageToken: String
) {
  articles(
    options: $options,
    tagId: $tagId,
    query: $query,
    limit: $limit,
    nextPageToken: $nextPageToken
  ) {
    count
    nextPageToken
    results {
      ...ArticleFragment
    }
  }
}
Variables
{
  "options": ArticleSearchOptions,
  "tagId": ArticleTagUrn,
  "query": "xyz789",
  "limit": 987.65,
  "nextPageToken": "xyz789"
}
Response
{
  "data": {
    "articles": {
      "count": 123,
      "nextPageToken": "abc123",
      "results": [Article]
    }
  }
}

artificialIntelligenceAgents

Description

Tried to get an answer from an AI Query

Example

Query
query artificialIntelligenceAgents {
  artificialIntelligenceAgents {
    name
    type
    isDefault
    availableRequestTypeIds
    availableTools {
      ...ArtificialIntelligenceAgentToolFragment
    }
    additionalPrompt
    articleTags
    permissions {
      ...PermissionAssignmentFragment
    }
    id
    currentUserPermissions
  }
}
Response
{
  "data": {
    "artificialIntelligenceAgents": [
      {
        "name": "abc123",
        "type": "FIND_ANSWER",
        "isDefault": true,
        "availableRequestTypeIds": [FormUrn],
        "availableTools": [
          ArtificialIntelligenceAgentTool
        ],
        "additionalPrompt": "abc123",
        "articleTags": [ArticleTagUrn],
        "permissions": [PermissionAssignment],
        "id": ArtificialIntelligenceAgentUrn,
        "currentUserPermissions": ["EXECUTE"]
      }
    ]
  }
}

artificialIntelligenceAnswer

Description

Tried to get an answer from an AI Query

Arguments
Name Description
search - ArtificialIntelligenceAnswerInput The question being asked.

Example

Query
query artificialIntelligenceAnswer($search: ArtificialIntelligenceAnswerInput) {
  artificialIntelligenceAnswer(search: $search) {
    articles {
      ...ArtificialIntelligenceAnswerArticleFragment
    }
    answer {
      ...ArtificialIntelligenceAnswerFragment
    }
  }
}
Variables
{"search": ArtificialIntelligenceAnswerInput}
Response
{
  "data": {
    "artificialIntelligenceAnswer": {
      "articles": [ArtificialIntelligenceAnswerArticle],
      "answer": ArtificialIntelligenceAnswer
    }
  }
}

artificialIntelligencePrompt

Description

Runs a prompt and returns the result

Response

Returns an ArtificialIntelligencePrompt

Arguments
Name Description
options - ArtificialIntelligencePromptInput!

Example

Query
query artificialIntelligencePrompt($options: ArtificialIntelligencePromptInput!) {
  artificialIntelligencePrompt(options: $options) {
    response
  }
}
Variables
{"options": ArtificialIntelligencePromptInput}
Response
{
  "data": {
    "artificialIntelligencePrompt": {
      "response": "abc123"
    }
  }
}

artificialIntelligenceSettings

Description

Creates an AI Summary of the conversation

Response

Returns an ArtificialIntelligenceSettings

Example

Query
query artificialIntelligenceSettings {
  artificialIntelligenceSettings {
    isEnabled
    llmProviderId
    tonePrompt
    features {
      ...ArtificialIntelligenceSettingsFeaturesFragment
    }
    articleProposals {
      ...ArtificialIntelligenceArticleProposalSettingsFragment
    }
    llmProvider {
      ...IntegrationFragment
    }
  }
}
Response
{
  "data": {
    "artificialIntelligenceSettings": {
      "isEnabled": false,
      "llmProviderId": IntegrationUrn,
      "tonePrompt": "xyz789",
      "features": ArtificialIntelligenceSettingsFeatures,
      "articleProposals": ArtificialIntelligenceArticleProposalSettings,
      "llmProvider": Integration
    }
  }
}

auditLogs

Response

Returns [AuditLogEntry!]!

Arguments
Name Description
filters - AuditLogEntryFilters!

Example

Query
query auditLogs($filters: AuditLogEntryFilters!) {
  auditLogs(filters: $filters) {
    id
    timestamp
    workspace {
      ...WorkspaceFragment
    }
    actor {
      ...UserFragment
    }
    actorId
    severity
    message
    ipAddress
    attributes
    differences {
      ...AuditLogEntryDifferenceFragment
    }
  }
}
Variables
{"filters": AuditLogEntryFilters}
Response
{
  "data": {
    "auditLogs": [
      {
        "id": AuditLogEntryUrn,
        "timestamp": DateTimeISO,
        "workspace": Workspace,
        "actor": User,
        "actorId": Urn,
        "severity": "TRACE",
        "message": "abc123",
        "ipAddress": "xyz789",
        "attributes": Map,
        "differences": [AuditLogEntryDifference]
      }
    ]
  }
}

billing

Description

Returns billing profile information.

Response

Returns a PortalBillingProfile

Example

Query
query billing {
  billing {
    redirectUrl
    sessionId
    pricingTableId
    currentUserEmail
    publishableKey
    defaultQuantity
    tiers {
      ...PortalBillingTierFragment
    }
    subscriptions {
      ...PortalBillingSubscriptionFragment
    }
  }
}
Response
{
  "data": {
    "billing": {
      "redirectUrl": "xyz789",
      "sessionId": "abc123",
      "pricingTableId": "xyz789",
      "currentUserEmail": "abc123",
      "publishableKey": "abc123",
      "defaultQuantity": 123.45,
      "tiers": [PortalBillingTier],
      "subscriptions": [PortalBillingSubscription]
    }
  }
}

billingPayments

Description

Returns billing payment information for a subscription.

Response

Returns a PortalBillingPayments

Example

Query
query billingPayments {
  billingPayments {
    payments {
      ...PortalBillingPaymentFragment
    }
  }
}
Response
{
  "data": {
    "billingPayments": {
      "payments": [PortalBillingPayment]
    }
  }
}

bots

Description

Returns a list of bots part of this workspace.

Response

Returns [Bot!]

Arguments
Name Description
id - Urn

Example

Query
query bots($id: Urn) {
  bots(id: $id) {
    id
    name
    avatarUrl
    type
  }
}
Variables
{"id": Urn}
Response
{
  "data": {
    "bots": [
      {
        "id": UserUrn,
        "name": "abc123",
        "avatarUrl": "abc123",
        "type": "SLACK"
      }
    ]
  }
}

channelInvite

Description

Gets a shared channel invite.

Response

Returns a ChannelInvite

Arguments
Name Description
id - ChannelInviteUrn!

Example

Query
query channelInvite($id: ChannelInviteUrn!) {
  channelInvite(id: $id) {
    name
    channelNameTemplate
    introductionTemplate
    id
    settings {
      ...ChatSettingsFragment
    }
    description
  }
}
Variables
{"id": ChannelInviteUrn}
Response
{
  "data": {
    "channelInvite": {
      "name": "abc123",
      "channelNameTemplate": "xyz789",
      "introductionTemplate": "abc123",
      "id": ChannelInviteUrn,
      "settings": ChatSettings,
      "description": "abc123"
    }
  }
}

channelInvites

Description

Gets a list of shared channel invites for the current company

Response

Returns [ChannelInvite!]

Example

Query
query channelInvites {
  channelInvites {
    name
    channelNameTemplate
    introductionTemplate
    id
    settings {
      ...ChatSettingsFragment
    }
    description
  }
}
Response
{
  "data": {
    "channelInvites": [
      {
        "name": "xyz789",
        "channelNameTemplate": "xyz789",
        "introductionTemplate": "xyz789",
        "id": ChannelInviteUrn,
        "settings": ChatSettings,
        "description": "abc123"
      }
    ]
  }
}

chat

Description

Returns the given chat.

Response

Returns a Chat

Arguments
Name Description
id - String!

Example

Query
query chat($id: String!) {
  chat(id: $id) {
    id
    ticketNumber
    subject
    lastMessage
    holdNotes
    status
    priority
    creatorId
    creator {
      ...UserFragment
    }
    assigneeId
    assignee {
      ...UserFragment
    }
    isAssignedToCurrentUser
    canCurrentUserEdit
    isCurrentUserParticipating
    hasUnreadByCurrentUser
    hasUnrespondedByCurrentUser
    currentUserLastReadDate
    currentUserLastResponseDate
    lastAgentResponseDate
    stateId
    state {
      ...TicketStateFragment
    }
    source {
      ...ChatSourceFragment
    }
    createdDate
    modifiedDate
    finishedDate
    assignedDate
    lastUserMessageDate
    ticketId
    ticket {
      ...TicketFragment
    }
    sort {
      ...ChatSortFragment
    }
    searchContext {
      ...ChatSearchResultContextFragment
    }
  }
}
Variables
{"id": "abc123"}
Response
{
  "data": {
    "chat": {
      "id": Urn,
      "ticketNumber": 123.45,
      "subject": "abc123",
      "lastMessage": "abc123",
      "holdNotes": "abc123",
      "status": "CONNECTED",
      "priority": "CRITICAL",
      "creatorId": Urn,
      "creator": User,
      "assigneeId": Urn,
      "assignee": User,
      "isAssignedToCurrentUser": true,
      "canCurrentUserEdit": false,
      "isCurrentUserParticipating": false,
      "hasUnreadByCurrentUser": true,
      "hasUnrespondedByCurrentUser": true,
      "currentUserLastReadDate": DateTimeISO,
      "currentUserLastResponseDate": DateTimeISO,
      "lastAgentResponseDate": DateTimeISO,
      "stateId": TicketStateUrn,
      "state": TicketState,
      "source": ChatSource,
      "createdDate": DateTimeISO,
      "modifiedDate": DateTimeISO,
      "finishedDate": DateTimeISO,
      "assignedDate": DateTimeISO,
      "lastUserMessageDate": DateTimeISO,
      "ticketId": TicketUrn,
      "ticket": Ticket,
      "sort": ChatSort,
      "searchContext": ChatSearchResultContext
    }
  }
}

chatSettings

Description

Returns chat settings for one channel.

Response

Returns a ChatSettings

Arguments
Name Description
id - Urn!

Example

Query
query chatSettings($id: Urn!) {
  chatSettings(id: $id) {
    identities
    identitiesType
    welcomeMessage {
      ...DisplayTextFragment
    }
    formIds
    slaTierId
    permissions {
      ...PermissionAssignmentFragment
    }
    canChangePermissions
    id
    type
    options {
      ...ChatSettingsOptionsFragment
    }
    currentUserPermissions
  }
}
Variables
{"id": Urn}
Response
{
  "data": {
    "chatSettings": {
      "identities": [Urn],
      "identitiesType": "INHERIT",
      "welcomeMessage": DisplayText,
      "formIds": [FormUrn],
      "slaTierId": RoutingPolicyUrn,
      "permissions": [PermissionAssignment],
      "canChangePermissions": false,
      "id": Urn,
      "type": "INBOUND_SUPPORT_EMAIL",
      "options": ChatSettingsOptions,
      "currentUserPermissions": ["EXECUTE"]
    }
  }
}

chatSettingsMany

Description

Returns chat settings for many channels.

Response

Returns [ChatSettings!]

Arguments
Name Description
filters - ChatSettingsManyFilters
filter - ChatSettingsFilter

Example

Query
query chatSettingsMany(
  $filters: ChatSettingsManyFilters,
  $filter: ChatSettingsFilter
) {
  chatSettingsMany(
    filters: $filters,
    filter: $filter
  ) {
    identities
    identitiesType
    welcomeMessage {
      ...DisplayTextFragment
    }
    formIds
    slaTierId
    permissions {
      ...PermissionAssignmentFragment
    }
    canChangePermissions
    id
    type
    options {
      ...ChatSettingsOptionsFragment
    }
    currentUserPermissions
  }
}
Variables
{"filters": ChatSettingsManyFilters, "filter": "ALL"}
Response
{
  "data": {
    "chatSettingsMany": [
      {
        "identities": [Urn],
        "identitiesType": "INHERIT",
        "welcomeMessage": DisplayText,
        "formIds": [FormUrn],
        "slaTierId": RoutingPolicyUrn,
        "permissions": [PermissionAssignment],
        "canChangePermissions": false,
        "id": Urn,
        "type": "INBOUND_SUPPORT_EMAIL",
        "options": ChatSettingsOptions,
        "currentUserPermissions": ["EXECUTE"]
      }
    ]
  }
}

chats

Description

Returns active chats for this instance..

Response

Returns a ChatResults

Arguments
Name Description
limit - Float The number of items to return. If not specified, the default is 100. The number of items might be more than this limit. Default = 100
nextPageToken - String The token to get the next set of search results. Only valid if search filters are present.
dashboardId - DashboardUrn The dashboard being displayed
sortBy - SearchSortBy How to sort the results. Default = RELEVANCE
dashboardFilters - DashboardSettingsFiltersInput Search filters 2.0
filters - SearchFiltersInput Search filters
query - String Search query
filter - TicketView Specifies how to filter the chats. Only users with correct permissions will be able to view all tickets

Example

Query
query chats(
  $limit: Float,
  $nextPageToken: String,
  $dashboardId: DashboardUrn,
  $sortBy: SearchSortBy,
  $dashboardFilters: DashboardSettingsFiltersInput,
  $filters: SearchFiltersInput,
  $query: String,
  $filter: TicketView
) {
  chats(
    limit: $limit,
    nextPageToken: $nextPageToken,
    dashboardId: $dashboardId,
    sortBy: $sortBy,
    dashboardFilters: $dashboardFilters,
    filters: $filters,
    query: $query,
    filter: $filter
  ) {
    chats {
      ...ChatFragment
    }
    nextPageToken
  }
}
Variables
{
  "limit": 100,
  "nextPageToken": "xyz789",
  "dashboardId": DashboardUrn,
  "sortBy": "RELEVANCE",
  "dashboardFilters": DashboardSettingsFiltersInput,
  "filters": SearchFiltersInput,
  "query": "abc123",
  "filter": "CREATED_TICKETS"
}
Response
{
  "data": {
    "chats": {
      "chats": [Chat],
      "nextPageToken": "xyz789"
    }
  }
}

companies

Description

Returns the organizations matching a query or a subset of organizations if a query is not provided.

Response

Returns a CompanyResults!

Arguments
Name Description
ids - [CompanyUrn!]
nextPageToken - String The token for the next page.
start - Float Default = 0
limit - Float Default = 50
query - String

Example

Query
query companies(
  $ids: [CompanyUrn!],
  $nextPageToken: String,
  $start: Float,
  $limit: Float,
  $query: String
) {
  companies(
    ids: $ids,
    nextPageToken: $nextPageToken,
    start: $start,
    limit: $limit,
    query: $query
  ) {
    count
    nextPageToken
    results {
      ...CompanyFragment
    }
  }
}
Variables
{
  "ids": [CompanyUrn],
  "nextPageToken": "abc123",
  "start": 0,
  "limit": 50,
  "query": "abc123"
}
Response
{
  "data": {
    "companies": {
      "count": 123,
      "nextPageToken": "xyz789",
      "results": [Company]
    }
  }
}

company

Description

Gets a company by id.

Response

Returns a CompanyResults!

Arguments
Name Description
id - CompanyUrn!

Example

Query
query company($id: CompanyUrn!) {
  company(id: $id) {
    count
    nextPageToken
    results {
      ...CompanyFragment
    }
  }
}
Variables
{"id": CompanyUrn}
Response
{
  "data": {
    "company": {
      "count": 987,
      "nextPageToken": "xyz789",
      "results": [Company]
    }
  }
}

composedMessage

Description

Gets the set of sent messages.

Response

Returns a ComposedMessage

Arguments
Name Description
id - ComposedMessageUrn!

Example

Query
query composedMessage($id: ComposedMessageUrn!) {
  composedMessage(id: $id) {
    scheduledDate
    body {
      ...RichBodyFragment
    }
    permissions {
      ...PermissionAssignmentFragment
    }
    senderId
    id
    status
    createdDate
    sentDate
    attachments {
      ...TicketMessageAttachmentFragment
    }
    creatorId
    creator {
      ...UserFragment
    }
    currentUserPermissions
    sender {
      ...UserFragment
    }
    recipients {
      ...ComposedMessageRecipientFragment
    }
  }
}
Variables
{"id": ComposedMessageUrn}
Response
{
  "data": {
    "composedMessage": {
      "scheduledDate": DateTimeISO,
      "body": RichBody,
      "permissions": [PermissionAssignment],
      "senderId": UserUrn,
      "id": ComposedMessageUrn,
      "status": "SENT",
      "createdDate": DateTimeISO,
      "sentDate": DateTimeISO,
      "attachments": [TicketMessageAttachment],
      "creatorId": UserUrn,
      "creator": User,
      "currentUserPermissions": ["EXECUTE"],
      "sender": User,
      "recipients": [ComposedMessageRecipient]
    }
  }
}

composedMessages

Description

Gets the set of sent messages.

Response

Returns a ComposedMessages

Example

Query
query composedMessages {
  composedMessages {
    results {
      ...ComposedMessageFragment
    }
  }
}
Response
{
  "data": {
    "composedMessages": {"results": [ComposedMessage]}
  }
}

conversationSource

Description

Gets a conversation source.

Response

Returns a ConversationSource

Arguments
Name Description
id - Urn!

Example

Query
query conversationSource($id: Urn!) {
  conversationSource(id: $id) {
    id
    sourceIdentity
    url
    label
    type
    currentUserPermissions
  }
}
Variables
{"id": Urn}
Response
{
  "data": {
    "conversationSource": {
      "id": Urn,
      "sourceIdentity": Urn,
      "url": "abc123",
      "label": "abc123",
      "type": "SLACK_CHANNEL",
      "currentUserPermissions": ["EXECUTE"]
    }
  }
}

conversationSourceUsers

Description

Gets a list of conversation sources.

Response

Returns [User!]

Arguments
Name Description
chatId - Urn
conversationSourceId - Urn!

Example

Query
query conversationSourceUsers(
  $chatId: Urn,
  $conversationSourceId: Urn!
) {
  conversationSourceUsers(
    chatId: $chatId,
    conversationSourceId: $conversationSourceId
  ) {
    id
    aliasIds
    name
    firstName
    lastName
    emailAddresses
    avatarUrl
    isVerified
    isCurrentlyLoggedInUser
    group
    userGroups {
      ...UserGroupFragment
    }
    role
    loginType
    organizationId
    organization {
      ...CompanyFragment
    }
    handles {
      ...UserHandleFragment
    }
  }
}
Variables
{
  "chatId": Urn,
  "conversationSourceId": Urn
}
Response
{
  "data": {
    "conversationSourceUsers": [
      {
        "id": Urn,
        "aliasIds": [Urn],
        "name": "xyz789",
        "firstName": "xyz789",
        "lastName": "xyz789",
        "emailAddresses": ["xyz789"],
        "avatarUrl": "xyz789",
        "isVerified": true,
        "isCurrentlyLoggedInUser": true,
        "group": "xyz789",
        "userGroups": [UserGroup],
        "role": "AGENT",
        "loginType": "NONE",
        "organizationId": CompanyUrn,
        "organization": Company,
        "handles": [UserHandle]
      }
    ]
  }
}

conversationSources

Description

Gets a list of conversation sources.

Response

Returns [ConversationSource!]

Arguments
Name Description
sourceTypes - [ConversationSourceType!]
shouldIncludeEmail - Boolean
shouldIncludeTags - Boolean
query - String

Example

Query
query conversationSources(
  $sourceTypes: [ConversationSourceType!],
  $shouldIncludeEmail: Boolean,
  $shouldIncludeTags: Boolean,
  $query: String
) {
  conversationSources(
    sourceTypes: $sourceTypes,
    shouldIncludeEmail: $shouldIncludeEmail,
    shouldIncludeTags: $shouldIncludeTags,
    query: $query
  ) {
    id
    sourceIdentity
    url
    label
    type
    currentUserPermissions
  }
}
Variables
{
  "sourceTypes": ["SLACK_CHANNEL"],
  "shouldIncludeEmail": false,
  "shouldIncludeTags": true,
  "query": "xyz789"
}
Response
{
  "data": {
    "conversationSources": [
      {
        "id": Urn,
        "sourceIdentity": Urn,
        "url": "abc123",
        "label": "xyz789",
        "type": "SLACK_CHANNEL",
        "currentUserPermissions": ["EXECUTE"]
      }
    ]
  }
}

dashboard

Description

Returns the given ticket message.

Response

Returns a Dashboard

Arguments
Name Description
id - TicketStateUrn

Example

Query
query dashboard($id: TicketStateUrn) {
  dashboard(id: $id) {
    name
    settings {
      ...DashboardSettingsFragment
    }
    permissions {
      ...PermissionAssignmentFragment
    }
    id
    ticketStates {
      ...DashboardTicketStateFragment
    }
  }
}
Variables
{"id": TicketStateUrn}
Response
{
  "data": {
    "dashboard": {
      "name": "xyz789",
      "settings": DashboardSettings,
      "permissions": [PermissionAssignment],
      "id": DashboardUrn,
      "ticketStates": [DashboardTicketState]
    }
  }
}

dashboards

Description

Returns the list of dashboards available to the user.

Response

Returns [Dashboard!]

Example

Query
query dashboards {
  dashboards {
    name
    settings {
      ...DashboardSettingsFragment
    }
    permissions {
      ...PermissionAssignmentFragment
    }
    id
    ticketStates {
      ...DashboardTicketStateFragment
    }
  }
}
Response
{
  "data": {
    "dashboards": [
      {
        "name": "xyz789",
        "settings": DashboardSettings,
        "permissions": [PermissionAssignment],
        "id": DashboardUrn,
        "ticketStates": [DashboardTicketState]
      }
    ]
  }
}

defaultQueue

Description

Gets the default queue

Response

Returns a Queue

Example

Query
query defaultQueue {
  defaultQueue {
    name
    description
    channelTags
    userAssignmentType
    integrationIds
    emailAliasIds
    permissions {
      ...PermissionAssignmentFragment
    }
    id
    members {
      ...QueueMemberFragment
    }
    isDefault
    currentUserPermissions
  }
}
Response
{
  "data": {
    "defaultQueue": {
      "name": "xyz789",
      "description": "xyz789",
      "channelTags": ["xyz789"],
      "userAssignmentType": "NONE",
      "integrationIds": [IntegrationUrn],
      "emailAliasIds": [ChannelEmailUrn],
      "permissions": [PermissionAssignment],
      "id": QueueUrn,
      "members": [QueueMember],
      "isDefault": false,
      "currentUserPermissions": ["EXECUTE"]
    }
  }
}

externalFormFields

Description

Returns available external form fields

Response

Returns [FormField!]

Arguments
Name Description
id - FormExternalUrn! The id of the external

Example

Query
query externalFormFields($id: FormExternalUrn!) {
  externalFormFields(id: $id) {
    id
    name
    placeholder
    isSystemField
    isRequired
    defaultValue {
      ...FieldTypedValueFragment
    }
    description
    type
    visibility
    options {
      ...FormFieldOptionFragment
    }
    optionsSettings {
      ...FormFieldOptionSettingsFragment
    }
    levels
    userGroupIds
    asyncObjectType
    isTemplate
    permissions {
      ...PermissionAssignmentFragment
    }
    currentUserPermissions
  }
}
Variables
{"id": FormExternalUrn}
Response
{
  "data": {
    "externalFormFields": [
      {
        "id": Urn,
        "name": "abc123",
        "placeholder": "xyz789",
        "isSystemField": true,
        "isRequired": false,
        "defaultValue": FieldTypedValue,
        "description": "abc123",
        "type": "TEXT",
        "visibility": "REUSABLE",
        "options": [FormFieldOption],
        "optionsSettings": FormFieldOptionSettings,
        "levels": ["abc123"],
        "userGroupIds": [UserGroupUrn],
        "asyncObjectType": "USER",
        "isTemplate": false,
        "permissions": [PermissionAssignment],
        "currentUserPermissions": ["EXECUTE"]
      }
    ]
  }
}

externalForms

Description

Returns available external forms

Response

Returns [ExternalForm!]

Arguments
Name Description
value - FormExternalUrn The selected value
id - Urn The parent id

Example

Query
query externalForms(
  $value: FormExternalUrn,
  $id: Urn
) {
  externalForms(
    value: $value,
    id: $id
  ) {
    id
    name
    hasChildren
    isSelected
  }
}
Variables
{
  "value": FormExternalUrn,
  "id": Urn
}
Response
{
  "data": {
    "externalForms": [
      {
        "id": Urn,
        "name": "abc123",
        "hasChildren": false,
        "isSelected": false
      }
    ]
  }
}

featureFlags

Description

Returns a list of active feature flags

Response

Returns a FeatureFlags

Example

Query
query featureFlags {
  featureFlags {
    active
  }
}
Response
{
  "data": {
    "featureFlags": {"active": ["abc123"]}
  }
}

form

Description

Returns the requested form.

Response

Returns a Form

Arguments
Name Description
id - FormUrn!

Example

Query
query form($id: FormUrn!) {
  form(id: $id) {
    name
    type
    description
    isCreatePrivate
    deflection {
      ...FormDeflectionSettingsFragment
    }
    externalFormId
    userGroupIds
    actionSettings {
      ...ActionSettingsFragment
    }
    tags
    jobFunctions
    iconUrl
    shouldCreateOnOnboarding
    permissions {
      ...PermissionAssignmentFragment
    }
    id
    fields {
      ...FormFieldDescriptorFragment
    }
    workflowId
    hasAutomation
    workflow {
      ...WorkflowFragment
    }
    exampleInput {
      ...FormWebhookExampleFragment
    }
    modifiedDate
    createdDate
    userGroups {
      ...WorkflowFragment
    }
    currentUserPermissions
  }
}
Variables
{"id": FormUrn}
Response
{
  "data": {
    "form": {
      "name": "xyz789",
      "type": "DEFAULT",
      "description": "xyz789",
      "isCreatePrivate": true,
      "deflection": FormDeflectionSettings,
      "externalFormId": FormExternalUrn,
      "userGroupIds": [UserGroupUrn],
      "actionSettings": ActionSettings,
      "tags": ["abc123"],
      "jobFunctions": ["CUSTOMER_SUPPORT"],
      "iconUrl": "xyz789",
      "shouldCreateOnOnboarding": false,
      "permissions": [PermissionAssignment],
      "id": FormUrn,
      "fields": [FormFieldDescriptor],
      "workflowId": WorkflowUrn,
      "hasAutomation": true,
      "workflow": Workflow,
      "exampleInput": FormWebhookExample,
      "modifiedDate": DateTimeISO,
      "createdDate": DateTimeISO,
      "userGroups": Workflow,
      "currentUserPermissions": ["EXECUTE"]
    }
  }
}

formField

Description

Returns the given form field.

Response

Returns a FormField

Arguments
Name Description
id - FormFieldUrn!

Example

Query
query formField($id: FormFieldUrn!) {
  formField(id: $id) {
    id
    name
    placeholder
    isSystemField
    isRequired
    defaultValue {
      ...FieldTypedValueFragment
    }
    description
    type
    visibility
    options {
      ...FormFieldOptionFragment
    }
    optionsSettings {
      ...FormFieldOptionSettingsFragment
    }
    levels
    userGroupIds
    asyncObjectType
    isTemplate
    permissions {
      ...PermissionAssignmentFragment
    }
    currentUserPermissions
  }
}
Variables
{"id": FormFieldUrn}
Response
{
  "data": {
    "formField": {
      "id": Urn,
      "name": "xyz789",
      "placeholder": "abc123",
      "isSystemField": false,
      "isRequired": false,
      "defaultValue": FieldTypedValue,
      "description": "xyz789",
      "type": "TEXT",
      "visibility": "REUSABLE",
      "options": [FormFieldOption],
      "optionsSettings": FormFieldOptionSettings,
      "levels": ["abc123"],
      "userGroupIds": [UserGroupUrn],
      "asyncObjectType": "USER",
      "isTemplate": true,
      "permissions": [PermissionAssignment],
      "currentUserPermissions": ["EXECUTE"]
    }
  }
}

formFields

Response

Returns [FormField!]!

Arguments
Name Description
shouldIncludeTemplateFields - Boolean Should only include template fields
shouldIncludePrivate - Boolean Should private fields be visible.
shouldIncludeReportFields - Boolean Should include report fields.
shouldIncludeSystemFields - Boolean Should include system fields.
ids - [FormUrn!] Which form fields to return.

Example

Query
query formFields(
  $shouldIncludeTemplateFields: Boolean,
  $shouldIncludePrivate: Boolean,
  $shouldIncludeReportFields: Boolean,
  $shouldIncludeSystemFields: Boolean,
  $ids: [FormUrn!]
) {
  formFields(
    shouldIncludeTemplateFields: $shouldIncludeTemplateFields,
    shouldIncludePrivate: $shouldIncludePrivate,
    shouldIncludeReportFields: $shouldIncludeReportFields,
    shouldIncludeSystemFields: $shouldIncludeSystemFields,
    ids: $ids
  ) {
    id
    name
    placeholder
    isSystemField
    isRequired
    defaultValue {
      ...FieldTypedValueFragment
    }
    description
    type
    visibility
    options {
      ...FormFieldOptionFragment
    }
    optionsSettings {
      ...FormFieldOptionSettingsFragment
    }
    levels
    userGroupIds
    asyncObjectType
    isTemplate
    permissions {
      ...PermissionAssignmentFragment
    }
    currentUserPermissions
  }
}
Variables
{
  "shouldIncludeTemplateFields": false,
  "shouldIncludePrivate": false,
  "shouldIncludeReportFields": true,
  "shouldIncludeSystemFields": false,
  "ids": [FormUrn]
}
Response
{
  "data": {
    "formFields": [
      {
        "id": Urn,
        "name": "abc123",
        "placeholder": "abc123",
        "isSystemField": false,
        "isRequired": true,
        "defaultValue": FieldTypedValue,
        "description": "abc123",
        "type": "TEXT",
        "visibility": "REUSABLE",
        "options": [FormFieldOption],
        "optionsSettings": FormFieldOptionSettings,
        "levels": ["abc123"],
        "userGroupIds": [UserGroupUrn],
        "asyncObjectType": "USER",
        "isTemplate": false,
        "permissions": [PermissionAssignment],
        "currentUserPermissions": ["EXECUTE"]
      }
    ]
  }
}

forms

Response

Returns [Form!]!

Arguments
Name Description
permission - PermissionAction The type of action being executed
type - FormType Form type
ids - [FormUrn!] If entered, will only return the schema for the given forms.

Example

Query
query forms(
  $permission: PermissionAction,
  $type: FormType,
  $ids: [FormUrn!]
) {
  forms(
    permission: $permission,
    type: $type,
    ids: $ids
  ) {
    name
    type
    description
    isCreatePrivate
    deflection {
      ...FormDeflectionSettingsFragment
    }
    externalFormId
    userGroupIds
    actionSettings {
      ...ActionSettingsFragment
    }
    tags
    jobFunctions
    iconUrl
    shouldCreateOnOnboarding
    permissions {
      ...PermissionAssignmentFragment
    }
    id
    fields {
      ...FormFieldDescriptorFragment
    }
    workflowId
    hasAutomation
    workflow {
      ...WorkflowFragment
    }
    exampleInput {
      ...FormWebhookExampleFragment
    }
    modifiedDate
    createdDate
    userGroups {
      ...WorkflowFragment
    }
    currentUserPermissions
  }
}
Variables
{
  "permission": "EXECUTE",
  "type": "DEFAULT",
  "ids": [FormUrn]
}
Response
{
  "data": {
    "forms": [
      {
        "name": "xyz789",
        "type": "DEFAULT",
        "description": "abc123",
        "isCreatePrivate": true,
        "deflection": FormDeflectionSettings,
        "externalFormId": FormExternalUrn,
        "userGroupIds": [UserGroupUrn],
        "actionSettings": ActionSettings,
        "tags": ["xyz789"],
        "jobFunctions": ["CUSTOMER_SUPPORT"],
        "iconUrl": "abc123",
        "shouldCreateOnOnboarding": false,
        "permissions": [PermissionAssignment],
        "id": FormUrn,
        "fields": [FormFieldDescriptor],
        "workflowId": WorkflowUrn,
        "hasAutomation": true,
        "workflow": Workflow,
        "exampleInput": FormWebhookExample,
        "modifiedDate": DateTimeISO,
        "createdDate": DateTimeISO,
        "userGroups": Workflow,
        "currentUserPermissions": ["EXECUTE"]
      }
    ]
  }
}

getAllEvents

Description

Helper method to expose the portal events..

Response

Returns a PortalEvent!

Example

Query
query getAllEvents {
  getAllEvents {
    ... on PortalMessageEvent {
      ...PortalMessageEventFragment
    }
    ... on PortalNoteAddedEvent {
      ...PortalNoteAddedEventFragment
    }
    ... on PortalReactionEvent {
      ...PortalReactionEventFragment
    }
    ... on PortalRegisterEvent {
      ...PortalRegisterEventFragment
    }
    ... on PortalChatResyncEvent {
      ...PortalChatResyncEventFragment
    }
    ... on PortalUserEvent {
      ...PortalUserEventFragment
    }
    ... on PingEvent {
      ...PingEventFragment
    }
    ... on PongEvent {
      ...PongEventFragment
    }
    ... on PortalSuccessEvent {
      ...PortalSuccessEventFragment
    }
    ... on PortalChatEvent {
      ...PortalChatEventFragment
    }
    ... on PortalParticipantEvent {
      ...PortalParticipantEventFragment
    }
    ... on PortalParticipantActionEvent {
      ...PortalParticipantActionEventFragment
    }
    ... on PortalSnoozeEvent {
      ...PortalSnoozeEventFragment
    }
    ... on PortalHoldEvent {
      ...PortalHoldEventFragment
    }
    ... on PortalTicketChanged {
      ...PortalTicketChangedFragment
    }
    ... on PortalTaskUpdatedEvent {
      ...PortalTaskUpdatedEventFragment
    }
  }
}
Response
{"data": {"getAllEvents": PortalMessageEvent}}

getHubData

Description

Gets a new Hub token.

Response

Returns a HubData

Arguments
Name Description
token - String!

Example

Query
query getHubData($token: String!) {
  getHubData(token: $token) {
    name
    isSameAsSource
  }
}
Variables
{"token": "xyz789"}
Response
{
  "data": {
    "getHubData": {
      "name": "xyz789",
      "isSameAsSource": false
    }
  }
}

getHubSpokeStatus

Description

Gets the current state of Hub and Spoke on this workspace.

Response

Returns a HubSpokeStatus

Example

Query
query getHubSpokeStatus {
  getHubSpokeStatus {
    forwardingTo {
      ...HubSpokeStatusForwardFragment
    }
    forwardedFrom {
      ...HubSpokeStatusForwardFragment
    }
  }
}
Response
{
  "data": {
    "getHubSpokeStatus": {
      "forwardingTo": HubSpokeStatusForward,
      "forwardedFrom": [HubSpokeStatusForward]
    }
  }
}

getParticipants

Description

Gets all the participants on a chat

Response

Returns [User!]

Arguments
Name Description
chatId - Urn!

Example

Query
query getParticipants($chatId: Urn!) {
  getParticipants(chatId: $chatId) {
    id
    aliasIds
    name
    firstName
    lastName
    emailAddresses
    avatarUrl
    isVerified
    isCurrentlyLoggedInUser
    group
    userGroups {
      ...UserGroupFragment
    }
    role
    loginType
    organizationId
    organization {
      ...CompanyFragment
    }
    handles {
      ...UserHandleFragment
    }
  }
}
Variables
{"chatId": Urn}
Response
{
  "data": {
    "getParticipants": [
      {
        "id": Urn,
        "aliasIds": [Urn],
        "name": "xyz789",
        "firstName": "xyz789",
        "lastName": "xyz789",
        "emailAddresses": ["xyz789"],
        "avatarUrl": "abc123",
        "isVerified": true,
        "isCurrentlyLoggedInUser": true,
        "group": "xyz789",
        "userGroups": [UserGroup],
        "role": "AGENT",
        "loginType": "NONE",
        "organizationId": CompanyUrn,
        "organization": Company,
        "handles": [UserHandle]
      }
    ]
  }
}

guestUsersByCompany

Description

Returns the users that match a specific company and organization

Response

Returns a UserResults

Arguments
Name Description
nextPageToken - String The token for the next page.
organizationId - CompanyUrn
start - Float Default = 0
limit - Float Default = 50
query - String

Example

Query
query guestUsersByCompany(
  $nextPageToken: String,
  $organizationId: CompanyUrn,
  $start: Float,
  $limit: Float,
  $query: String
) {
  guestUsersByCompany(
    nextPageToken: $nextPageToken,
    organizationId: $organizationId,
    start: $start,
    limit: $limit,
    query: $query
  ) {
    count
    nextPageToken
    results {
      ...UserFragment
    }
  }
}
Variables
{
  "nextPageToken": "xyz789",
  "organizationId": CompanyUrn,
  "start": 0,
  "limit": 50,
  "query": "xyz789"
}
Response
{
  "data": {
    "guestUsersByCompany": {
      "count": 123,
      "nextPageToken": "abc123",
      "results": [User]
    }
  }
}

holidayCountries

Description

Gets the list of holiday countries.

Response

Returns [HolidayCountry!]

Example

Query
query holidayCountries {
  holidayCountries {
    name
    id
  }
}
Response
{
  "data": {
    "holidayCountries": [
      {
        "name": "xyz789",
        "id": "xyz789"
      }
    ]
  }
}

hubSpokeToken

Description

Gets a new Hub token.

Response

Returns a HubSpokeToken

Example

Query
query hubSpokeToken {
  hubSpokeToken {
    token
  }
}
Response
{
  "data": {
    "hubSpokeToken": {"token": "xyz789"}
  }
}

integrationUserData

Description

Gets the user integration.

Response

Returns [IntegrationData!]

Arguments
Name Description
id - Urn!

Example

Query
query integrationUserData($id: Urn!) {
  integrationUserData(id: $id) {
    id
    sourceIdentity
    url
    isDefault
    label
    iconUrl
    type
    groups {
      ...IntegrationDataValueGroupFragment
    }
  }
}
Variables
{"id": Urn}
Response
{
  "data": {
    "integrationUserData": [
      {
        "id": Urn,
        "sourceIdentity": Urn,
        "url": "xyz789",
        "isDefault": true,
        "label": "xyz789",
        "iconUrl": "abc123",
        "type": "SLACK",
        "groups": [IntegrationDataValueGroup]
      }
    ]
  }
}

integrations

Description

Gets the integrations.

Response

Returns [Integration!]

Arguments
Name Description
chatId - Urn

Example

Query
query integrations($chatId: Urn) {
  integrations(chatId: $chatId) {
    id
    label
    createdDate
    connectionUrl
    type
    actions
    settings {
      ...FieldTypedValueFragment
    }
    jobs {
      ...IntegrationJobRunFragment
    }
    actionPermissions {
      ...IntegrationActionGroupPermissionFragment
    }
    permissions {
      ...PermissionAssignmentFragment
    }
    currentUserPermissions
  }
}
Variables
{"chatId": Urn}
Response
{
  "data": {
    "integrations": [
      {
        "id": IntegrationUrn,
        "label": "xyz789",
        "createdDate": DateTimeISO,
        "connectionUrl": "abc123",
        "type": "SLACK",
        "actions": ["CREATE_TICKET"],
        "settings": [FieldTypedValue],
        "jobs": [IntegrationJobRun],
        "actionPermissions": [
          IntegrationActionGroupPermission
        ],
        "permissions": [PermissionAssignment],
        "currentUserPermissions": ["EXECUTE"]
      }
    ]
  }
}

loginWithIdentityProvider

Description

Creates a URL to login using an identity.

Response

Returns an IdentityProviderOptions!

Arguments
Name Description
provider - IdentityProviderInput!

Example

Query
query loginWithIdentityProvider($provider: IdentityProviderInput!) {
  loginWithIdentityProvider(provider: $provider) {
    url
  }
}
Variables
{"provider": IdentityProviderInput}
Response
{
  "data": {
    "loginWithIdentityProvider": {
      "url": "xyz789"
    }
  }
}

mcpServers

Description

MCP Server configuration

Response

Returns [MCPServer!]!

Example

Query
query mcpServers {
  mcpServers {
    name
    permissions
    availableActionsIds
    availableTools {
      ...ArtificialIntelligenceAgentToolFragment
    }
    id
  }
}
Response
{
  "data": {
    "mcpServers": [
      {
        "name": "abc123",
        "permissions": ["SUPER_ADMIN"],
        "availableActionsIds": [FormUrn],
        "availableTools": [
          ArtificialIntelligenceAgentTool
        ],
        "id": MCPServerUrn
      }
    ]
  }
}

metricsDashboard

Description

Returns the metrics dashboard.

Response

Returns a MetricsDashboard

Arguments
Name Description
id - MetricsDashboardUrn

Example

Query
query metricsDashboard($id: MetricsDashboardUrn) {
  metricsDashboard(id: $id) {
    name
    settings {
      ...MetricsDashboardSettingsFragment
    }
    permissions {
      ...PermissionAssignmentFragment
    }
    id
    installationId
    creatorId
    creator {
      ...UserFragment
    }
    currentUserPermissionAction
  }
}
Variables
{"id": MetricsDashboardUrn}
Response
{
  "data": {
    "metricsDashboard": {
      "name": "xyz789",
      "settings": MetricsDashboardSettings,
      "permissions": [PermissionAssignment],
      "id": MetricsDashboardUrn,
      "installationId": AppInstallUrn,
      "creatorId": Urn,
      "creator": User,
      "currentUserPermissionAction": "EXECUTE"
    }
  }
}

metricsDashboardData

Description

Returns the metrics data for the specified fields and filters.

Response

Returns a MetricsDashboardDataResult

Arguments
Name Description
input - MetricsDataInput!

Example

Query
query metricsDashboardData($input: MetricsDataInput!) {
  metricsDashboardData(input: $input) {
    data {
      ...MetricsDashboardDataFragment
    }
  }
}
Variables
{"input": MetricsDataInput}
Response
{
  "data": {
    "metricsDashboardData": {"data": MetricsDashboardData}
  }
}

metricsDashboardFields

Description

Returns the fields available to a users dashboard.

Example

Query
query metricsDashboardFields {
  metricsDashboardFields {
    columns {
      ...MetricsDashboardDataColumnWithSourceFragment
    }
  }
}
Response
{
  "data": {
    "metricsDashboardFields": {
      "columns": [MetricsDashboardDataColumnWithSource]
    }
  }
}

metricsDashboardGraphTemplates

Description

Returns a list of templates you can copy to create a graph.

Example

Query
query metricsDashboardGraphTemplates {
  metricsDashboardGraphTemplates {
    id
    type
    dataSource
    title
    locationX
    locationY
    width
    height
    dimensions {
      ...MetricsDashboardGraphDimensionFragment
    }
    metrics {
      ...MetricsDashboardGraphMetricFragment
    }
    filters {
      ...MetricsDashboardGraphFilterGroupFragment
    }
    sort {
      ...MetricsDashboardGraphSortFragment
    }
    description
    categories
  }
}
Response
{
  "data": {
    "metricsDashboardGraphTemplates": [
      {
        "id": MetricsDashboardGraphUrn,
        "type": "TABLE",
        "dataSource": "TICKETS",
        "title": "xyz789",
        "locationX": 123.45,
        "locationY": 987.65,
        "width": 123.45,
        "height": 123.45,
        "dimensions": [MetricsDashboardGraphDimension],
        "metrics": [MetricsDashboardGraphMetric],
        "filters": MetricsDashboardGraphFilterGroup,
        "sort": [MetricsDashboardGraphSort],
        "description": "xyz789",
        "categories": ["abc123"]
      }
    ]
  }
}

metricsDashboardWithData

Description

Returns the metrics dashboard with the data.

Response

Returns a MetricsDashboardWithData

Arguments
Name Description
input - MetricsInput!

Example

Query
query metricsDashboardWithData($input: MetricsInput!) {
  metricsDashboardWithData(input: $input) {
    dashboard {
      ...MetricsDashboardFragment
    }
    data {
      ...MetricsDashboardDataFragment
    }
  }
}
Variables
{"input": MetricsInput}
Response
{
  "data": {
    "metricsDashboardWithData": {
      "dashboard": MetricsDashboard,
      "data": [MetricsDashboardData]
    }
  }
}

metricsDashboards

Description

Returns the metrics dashboard.

Response

Returns [MetricsDashboard!]

Example

Query
query metricsDashboards {
  metricsDashboards {
    name
    settings {
      ...MetricsDashboardSettingsFragment
    }
    permissions {
      ...PermissionAssignmentFragment
    }
    id
    installationId
    creatorId
    creator {
      ...UserFragment
    }
    currentUserPermissionAction
  }
}
Response
{
  "data": {
    "metricsDashboards": [
      {
        "name": "abc123",
        "settings": MetricsDashboardSettings,
        "permissions": [PermissionAssignment],
        "id": MetricsDashboardUrn,
        "installationId": AppInstallUrn,
        "creatorId": Urn,
        "creator": User,
        "currentUserPermissionAction": "EXECUTE"
      }
    ]
  }
}

onboardingProfile

Description

Gets the current onboarding profile

Response

Returns an OnboardingProfile

Example

Query
query onboardingProfile {
  onboardingProfile {
    jobFunction
    channelMode
    isEmojiEnabled
    shouldCreateDemoChannel
    isChannelMenuEnabled
    installedWorkflowServiceId
    isSelectedFoqalTicketing
    lastStep
    applicationIconUrl
    applicationName
    homeStepsCompleted
    stepsCompleted
    artificialIntelligenceWorkflowServiceId
    isExternalSupport
  }
}
Response
{
  "data": {
    "onboardingProfile": {
      "jobFunction": "CUSTOMER_SUPPORT",
      "channelMode": "THREADED",
      "isEmojiEnabled": false,
      "shouldCreateDemoChannel": true,
      "isChannelMenuEnabled": false,
      "installedWorkflowServiceId": WorkflowServiceUrn,
      "isSelectedFoqalTicketing": true,
      "lastStep": "PICK_ROLE",
      "applicationIconUrl": "abc123",
      "applicationName": "xyz789",
      "homeStepsCompleted": ["xyz789"],
      "stepsCompleted": ["xyz789"],
      "artificialIntelligenceWorkflowServiceId": WorkflowServiceUrn,
      "isExternalSupport": false
    }
  }
}

portal

Description

Returns one portal for the given id.

Response

Returns a Portal

Arguments
Name Description
settings - PortalRequestSettings Portal request settings
id - PortalUrn Id of the portal item to fetch

Example

Query
query portal(
  $settings: PortalRequestSettings,
  $id: PortalUrn
) {
  portal(
    settings: $settings,
    id: $id
  ) {
    id
    installationId
    title
    welcomeMessage
    chatToken
    permissions
    publicPermissions
    guestPermissions
    isSharedChannelGuest
    guestAnswerProviderId
    publicAnswerProviderId
    publicFormIds
    guestFormIds
    domains
    portalIndexProvider
    indexArticleId
    isAIEnabled
    billing {
      ...PortalBillingFragment
    }
    entitlementIds
    banner {
      ...PortalBannerFragment
    }
    singleSignOn {
      ...PortalSingleSignOnFragment
    }
    userProvisioning {
      ...PortalUserProvisioningFragment
    }
    signIn {
      ...PortalSigninSettingsFragment
    }
    aiFeatures {
      ...ArtificialIntelligenceSettingsFeaturesFragment
    }
    navigation {
      ...PortalSettingsNavigationFragment
    }
    unsafeDomain {
      ...PortalSettingsUnsafeDomainFragment
    }
  }
}
Variables
{
  "settings": PortalRequestSettings,
  "id": PortalUrn
}
Response
{
  "data": {
    "portal": {
      "id": PortalUrn,
      "installationId": AppInstallUrn,
      "title": "xyz789",
      "welcomeMessage": "abc123",
      "chatToken": "xyz789",
      "permissions": ["SUPER_ADMIN"],
      "publicPermissions": ["SUPER_ADMIN"],
      "guestPermissions": ["SUPER_ADMIN"],
      "isSharedChannelGuest": false,
      "guestAnswerProviderId": Urn,
      "publicAnswerProviderId": Urn,
      "publicFormIds": [FormUrn],
      "guestFormIds": [FormUrn],
      "domains": ["xyz789"],
      "portalIndexProvider": "OPEN_AI",
      "indexArticleId": ArticleUrn,
      "isAIEnabled": false,
      "billing": PortalBilling,
      "entitlementIds": [PlanEntitlementUrn],
      "banner": PortalBanner,
      "singleSignOn": PortalSingleSignOn,
      "userProvisioning": PortalUserProvisioning,
      "signIn": PortalSigninSettings,
      "aiFeatures": ArtificialIntelligenceSettingsFeatures,
      "navigation": PortalSettingsNavigation,
      "unsafeDomain": PortalSettingsUnsafeDomain
    }
  }
}

queue

Description

Returns a queue.

Response

Returns a Queue

Arguments
Name Description
id - QueueUrn!

Example

Query
query queue($id: QueueUrn!) {
  queue(id: $id) {
    name
    description
    channelTags
    userAssignmentType
    integrationIds
    emailAliasIds
    permissions {
      ...PermissionAssignmentFragment
    }
    id
    members {
      ...QueueMemberFragment
    }
    isDefault
    currentUserPermissions
  }
}
Variables
{"id": QueueUrn}
Response
{
  "data": {
    "queue": {
      "name": "abc123",
      "description": "abc123",
      "channelTags": ["xyz789"],
      "userAssignmentType": "NONE",
      "integrationIds": [IntegrationUrn],
      "emailAliasIds": [ChannelEmailUrn],
      "permissions": [PermissionAssignment],
      "id": QueueUrn,
      "members": [QueueMember],
      "isDefault": true,
      "currentUserPermissions": ["EXECUTE"]
    }
  }
}

queues

Response

Returns [Queue!]!

Arguments
Name Description
filters - QueueFilters Additional filters to display queues.
ids - [QueueUrn!] If entered, will only return the queues of the given ids.

Example

Query
query queues(
  $filters: QueueFilters,
  $ids: [QueueUrn!]
) {
  queues(
    filters: $filters,
    ids: $ids
  ) {
    name
    description
    channelTags
    userAssignmentType
    integrationIds
    emailAliasIds
    permissions {
      ...PermissionAssignmentFragment
    }
    id
    members {
      ...QueueMemberFragment
    }
    isDefault
    currentUserPermissions
  }
}
Variables
{
  "filters": QueueFilters,
  "ids": [QueueUrn]
}
Response
{
  "data": {
    "queues": [
      {
        "name": "xyz789",
        "description": "abc123",
        "channelTags": ["xyz789"],
        "userAssignmentType": "NONE",
        "integrationIds": [IntegrationUrn],
        "emailAliasIds": [ChannelEmailUrn],
        "permissions": [PermissionAssignment],
        "id": QueueUrn,
        "members": [QueueMember],
        "isDefault": false,
        "currentUserPermissions": ["EXECUTE"]
      }
    ]
  }
}

session

Description

Gets the current session.

Response

Returns a Session

Example

Query
query session {
  session {
    id
    userId
    createdAt
    modifiedAt
    headers
    cookies
    permissions
    user {
      ...UserFragment
    }
  }
}
Response
{
  "data": {
    "session": {
      "id": UserSessionUrn,
      "userId": UserUrn,
      "createdAt": DateTimeISO,
      "modifiedAt": DateTimeISO,
      "headers": Map,
      "cookies": Map,
      "permissions": ["SUPER_ADMIN"],
      "user": User
    }
  }
}

sessions

Description

Gets the current session.

Response

Returns [Session!]!

Arguments
Name Description
userId - UserUrn

Example

Query
query sessions($userId: UserUrn) {
  sessions(userId: $userId) {
    id
    userId
    createdAt
    modifiedAt
    headers
    cookies
    permissions
    user {
      ...UserFragment
    }
  }
}
Variables
{"userId": UserUrn}
Response
{
  "data": {
    "sessions": [
      {
        "id": UserSessionUrn,
        "userId": UserUrn,
        "createdAt": DateTimeISO,
        "modifiedAt": DateTimeISO,
        "headers": Map,
        "cookies": Map,
        "permissions": ["SUPER_ADMIN"],
        "user": User
      }
    ]
  }
}

settings

Description

Gets the current user settings.

Response

Returns a Settings

Example

Query
query settings {
  settings {
    agentsIds
    agents {
      ...UserFragment
    }
    adminIds
    admins {
      ...UserFragment
    }
    customization {
      ...SettingsCustomizationFragment
    }
    identities
    channelSlack {
      ...SettingsChannelSlackFragment
    }
    channelEmail {
      ...SettingsChannelEmailFragment
    }
    channelWebChat {
      ...SettingsChannelWebChatFragment
    }
    feedback {
      ...FeedbackFragment
    }
    time {
      ...SettingsTimeFragment
    }
    channels {
      ...SettingsChannelsFragment
    }
    sla {
      ...SettingsSLAFragment
    }
    customFields {
      ...SettingsCustomFieldsFragment
    }
    artificialIntelligence {
      ...SettingsArtificialIntelligenceFragment
    }
    groupAdmins {
      ...SettingsGroupAdminsFragment
    }
  }
}
Response
{
  "data": {
    "settings": {
      "agentsIds": [Urn],
      "agents": [User],
      "adminIds": [Urn],
      "admins": [User],
      "customization": SettingsCustomization,
      "identities": [Urn],
      "channelSlack": SettingsChannelSlack,
      "channelEmail": SettingsChannelEmail,
      "channelWebChat": SettingsChannelWebChat,
      "feedback": Feedback,
      "time": SettingsTime,
      "channels": SettingsChannels,
      "sla": SettingsSLA,
      "customFields": SettingsCustomFields,
      "artificialIntelligence": SettingsArtificialIntelligence,
      "groupAdmins": SettingsGroupAdmins
    }
  }
}

summarizeConversation

Description

Creates an AI Summary of the conversation

Response

Returns an ArtificialIntelligenceSummary

Arguments
Name Description
chatId - Urn!

Example

Query
query summarizeConversation($chatId: Urn!) {
  summarizeConversation(chatId: $chatId) {
    summary
    sentiment
    agentTone
    expectedSatisfaction
    recommendation
  }
}
Variables
{"chatId": Urn}
Response
{
  "data": {
    "summarizeConversation": {
      "summary": "abc123",
      "sentiment": "xyz789",
      "agentTone": "xyz789",
      "expectedSatisfaction": 123.45,
      "recommendation": "abc123"
    }
  }
}

supportSlackConnectChannel

Description

Gets the support based Slack Connect channel

Response

Returns a SupportChannel

Example

Query
query supportSlackConnectChannel {
  supportSlackConnectChannel {
    name
    url
    isAccepted
  }
}
Response
{
  "data": {
    "supportSlackConnectChannel": {
      "name": "abc123",
      "url": "xyz789",
      "isAccepted": true
    }
  }
}

ticket

Description

Returns the given ticket.

Response

Returns a Ticket

Arguments
Name Description
id - String!

Example

Query
query ticket($id: String!) {
  ticket(id: $id) {
    id
    ticketNumber
    chatId
    subject
    description
    createdDate
    modifiedDate
    closedDate
    assignedDate
    firstResponseDate
    lastResponseDate
    currentUserLastReadDate
    hasUnreadByCurrentUser
    tags
    status
    severityIndex
    priority
    creatorId
    creator {
      ...UserFragment
    }
    assigneeId
    assignee {
      ...UserFragment
    }
    messages {
      ...TicketMessageFragment
    }
    customFields {
      ...CustomFieldFragment
    }
    formId
    form {
      ...FormFragment
    }
    ticketStateId
    state {
      ...TicketStateFragment
    }
    tasks {
      ...TicketTaskFragment
    }
    queueId
    queue {
      ...QueueFragment
    }
    requestorId
    requestor {
      ...UserFragment
    }
    dueDates {
      ...TicketDueDateFragment
    }
    customContextValues {
      ...TicketCustomContextValueFragment
    }
    messageCount
    source {
      ...ChatSourceFragment
    }
    artificialIntelligence {
      ...ArtificialIntelligenceValuesFragment
    }
  }
}
Variables
{"id": "xyz789"}
Response
{
  "data": {
    "ticket": {
      "id": TicketUrn,
      "ticketNumber": 987.65,
      "chatId": Urn,
      "subject": "xyz789",
      "description": "xyz789",
      "createdDate": DateTimeISO,
      "modifiedDate": DateTimeISO,
      "closedDate": DateTimeISO,
      "assignedDate": DateTimeISO,
      "firstResponseDate": DateTimeISO,
      "lastResponseDate": DateTimeISO,
      "currentUserLastReadDate": DateTimeISO,
      "hasUnreadByCurrentUser": false,
      "tags": ["abc123"],
      "status": "OPEN",
      "severityIndex": 987.65,
      "priority": "CRITICAL",
      "creatorId": Urn,
      "creator": User,
      "assigneeId": Urn,
      "assignee": User,
      "messages": [TicketMessage],
      "customFields": [CustomField],
      "formId": Urn,
      "form": Form,
      "ticketStateId": TicketStateUrn,
      "state": TicketState,
      "tasks": [TicketTask],
      "queueId": QueueUrn,
      "queue": Queue,
      "requestorId": Urn,
      "requestor": User,
      "dueDates": [TicketDueDate],
      "customContextValues": [TicketCustomContextValue],
      "messageCount": 987.65,
      "source": ChatSource,
      "artificialIntelligence": ArtificialIntelligenceValues
    }
  }
}

ticketMessage

Description

Returns the given ticket message.

Response

Returns a TicketMessage

Arguments
Name Description
id - TicketMessageUrn!

Example

Query
query ticketMessage($id: TicketMessageUrn!) {
  ticketMessage(id: $id) {
    id
    type
    ticketId
    createdDate
    creatorId
    messageIds
    creator {
      ...UserFragment
    }
    body {
      ...RichBodyFragment
    }
    originalBody {
      ...RichBodyFragment
    }
    isDeleted
    redactedDate
    reactions {
      ...TicketMessageReactionFragment
    }
    attachments {
      ...TicketMessageAttachmentFragment
    }
    articles {
      ...TicketMessageArticleFragment
    }
    schedule {
      ...TicketMessageScheduleFragment
    }
    status {
      ...TicketMessageStatusFragment
    }
    extensions {
      ...TicketMessageExtensionsFragment
    }
  }
}
Variables
{"id": TicketMessageUrn}
Response
{
  "data": {
    "ticketMessage": {
      "id": TicketMessageUrn,
      "type": "USER_MESSAGE",
      "ticketId": TicketUrn,
      "createdDate": DateTimeISO,
      "creatorId": Urn,
      "messageIds": [Urn],
      "creator": User,
      "body": RichBody,
      "originalBody": RichBody,
      "isDeleted": false,
      "redactedDate": DateTimeISO,
      "reactions": [TicketMessageReaction],
      "attachments": [TicketMessageAttachment],
      "articles": [TicketMessageArticle],
      "schedule": TicketMessageSchedule,
      "status": TicketMessageStatus,
      "extensions": TicketMessageExtensions
    }
  }
}

ticketMessages

Response

Returns [TicketMessage!]!

Arguments
Name Description
ticketId - TicketUrn!

Example

Query
query ticketMessages($ticketId: TicketUrn!) {
  ticketMessages(ticketId: $ticketId) {
    id
    type
    ticketId
    createdDate
    creatorId
    messageIds
    creator {
      ...UserFragment
    }
    body {
      ...RichBodyFragment
    }
    originalBody {
      ...RichBodyFragment
    }
    isDeleted
    redactedDate
    reactions {
      ...TicketMessageReactionFragment
    }
    attachments {
      ...TicketMessageAttachmentFragment
    }
    articles {
      ...TicketMessageArticleFragment
    }
    schedule {
      ...TicketMessageScheduleFragment
    }
    status {
      ...TicketMessageStatusFragment
    }
    extensions {
      ...TicketMessageExtensionsFragment
    }
  }
}
Variables
{"ticketId": TicketUrn}
Response
{
  "data": {
    "ticketMessages": [
      {
        "id": TicketMessageUrn,
        "type": "USER_MESSAGE",
        "ticketId": TicketUrn,
        "createdDate": DateTimeISO,
        "creatorId": Urn,
        "messageIds": [Urn],
        "creator": User,
        "body": RichBody,
        "originalBody": RichBody,
        "isDeleted": true,
        "redactedDate": DateTimeISO,
        "reactions": [TicketMessageReaction],
        "attachments": [TicketMessageAttachment],
        "articles": [TicketMessageArticle],
        "schedule": TicketMessageSchedule,
        "status": TicketMessageStatus,
        "extensions": TicketMessageExtensions
      }
    ]
  }
}

ticketState

Description

Returns the given ticket message.

Response

Returns a TicketState

Arguments
Name Description
id - TicketStateUrn!

Example

Query
query ticketState($id: TicketStateUrn!) {
  ticketState(id: $id) {
    name
    description
    ticketStatuses
    chatStatuses
    isDefault
    id
  }
}
Variables
{"id": TicketStateUrn}
Response
{
  "data": {
    "ticketState": {
      "name": "xyz789",
      "description": "abc123",
      "ticketStatuses": ["OPEN"],
      "chatStatuses": ["CONNECTED"],
      "isDefault": true,
      "id": TicketStateUrn
    }
  }
}

ticketStates

Response

Returns [TicketState!]!

Example

Query
query ticketStates {
  ticketStates {
    name
    description
    ticketStatuses
    chatStatuses
    isDefault
    id
  }
}
Response
{
  "data": {
    "ticketStates": [
      {
        "name": "xyz789",
        "description": "abc123",
        "ticketStatuses": ["OPEN"],
        "chatStatuses": ["CONNECTED"],
        "isDefault": false,
        "id": TicketStateUrn
      }
    ]
  }
}

ticketTask

Description

Returns the given ticket task.

Response

Returns a TicketTask

Arguments
Name Description
id - TicketTaskUrn!

Example

Query
query ticketTask($id: TicketTaskUrn!) {
  ticketTask(id: $id) {
    ticketId
    name
    description
    dueDate
    assigneeId
    status
    id
    assignee {
      ...UserFragment
    }
    isAssignedToCurrentUser
    createdDate
    modifiedDate
  }
}
Variables
{"id": TicketTaskUrn}
Response
{
  "data": {
    "ticketTask": {
      "ticketId": TicketUrn,
      "name": "xyz789",
      "description": "abc123",
      "dueDate": DateTimeISO,
      "assigneeId": Urn,
      "status": "OPEN",
      "id": TicketTaskUrn,
      "assignee": User,
      "isAssignedToCurrentUser": true,
      "createdDate": DateTimeISO,
      "modifiedDate": DateTimeISO
    }
  }
}

ticketTasks

Response

Returns [TicketTask!]!

Arguments
Name Description
filters - TicketTaskFilters!

Example

Query
query ticketTasks($filters: TicketTaskFilters!) {
  ticketTasks(filters: $filters) {
    ticketId
    name
    description
    dueDate
    assigneeId
    status
    id
    assignee {
      ...UserFragment
    }
    isAssignedToCurrentUser
    createdDate
    modifiedDate
  }
}
Variables
{"filters": TicketTaskFilters}
Response
{
  "data": {
    "ticketTasks": [
      {
        "ticketId": TicketUrn,
        "name": "xyz789",
        "description": "xyz789",
        "dueDate": DateTimeISO,
        "assigneeId": Urn,
        "status": "OPEN",
        "id": TicketTaskUrn,
        "assignee": User,
        "isAssignedToCurrentUser": false,
        "createdDate": DateTimeISO,
        "modifiedDate": DateTimeISO
      }
    ]
  }
}

tickets

Response

Returns [Ticket!]!

Arguments
Name Description
filters - TicketFilters
filter - TicketView

Example

Query
query tickets(
  $filters: TicketFilters,
  $filter: TicketView
) {
  tickets(
    filters: $filters,
    filter: $filter
  ) {
    id
    ticketNumber
    chatId
    subject
    description
    createdDate
    modifiedDate
    closedDate
    assignedDate
    firstResponseDate
    lastResponseDate
    currentUserLastReadDate
    hasUnreadByCurrentUser
    tags
    status
    severityIndex
    priority
    creatorId
    creator {
      ...UserFragment
    }
    assigneeId
    assignee {
      ...UserFragment
    }
    messages {
      ...TicketMessageFragment
    }
    customFields {
      ...CustomFieldFragment
    }
    formId
    form {
      ...FormFragment
    }
    ticketStateId
    state {
      ...TicketStateFragment
    }
    tasks {
      ...TicketTaskFragment
    }
    queueId
    queue {
      ...QueueFragment
    }
    requestorId
    requestor {
      ...UserFragment
    }
    dueDates {
      ...TicketDueDateFragment
    }
    customContextValues {
      ...TicketCustomContextValueFragment
    }
    messageCount
    source {
      ...ChatSourceFragment
    }
    artificialIntelligence {
      ...ArtificialIntelligenceValuesFragment
    }
  }
}
Variables
{"filters": TicketFilters, "filter": "CREATED_TICKETS"}
Response
{
  "data": {
    "tickets": [
      {
        "id": TicketUrn,
        "ticketNumber": 123.45,
        "chatId": Urn,
        "subject": "abc123",
        "description": "xyz789",
        "createdDate": DateTimeISO,
        "modifiedDate": DateTimeISO,
        "closedDate": DateTimeISO,
        "assignedDate": DateTimeISO,
        "firstResponseDate": DateTimeISO,
        "lastResponseDate": DateTimeISO,
        "currentUserLastReadDate": DateTimeISO,
        "hasUnreadByCurrentUser": false,
        "tags": ["abc123"],
        "status": "OPEN",
        "severityIndex": 987.65,
        "priority": "CRITICAL",
        "creatorId": Urn,
        "creator": User,
        "assigneeId": Urn,
        "assignee": User,
        "messages": [TicketMessage],
        "customFields": [CustomField],
        "formId": Urn,
        "form": Form,
        "ticketStateId": TicketStateUrn,
        "state": TicketState,
        "tasks": [TicketTask],
        "queueId": QueueUrn,
        "queue": Queue,
        "requestorId": Urn,
        "requestor": User,
        "dueDates": [TicketDueDate],
        "customContextValues": [TicketCustomContextValue],
        "messageCount": 123.45,
        "source": ChatSource,
        "artificialIntelligence": ArtificialIntelligenceValues
      }
    ]
  }
}

tokens

Description

Returns a list of active tokens

Response

Returns [Token!]

Example

Query
query tokens {
  tokens {
    id
    name
    createdDate
    permissions
  }
}
Response
{
  "data": {
    "tokens": [
      {
        "id": Urn,
        "name": "xyz789",
        "createdDate": DateTimeISO,
        "permissions": ["SUPER_ADMIN"]
      }
    ]
  }
}

updateCategories

Response

Returns [ArticleTag!]!

Example

Query
query updateCategories {
  updateCategories {
    childIds
    title
    description
    iconUrl
    indexPageId
    id
  }
}
Response
{
  "data": {
    "updateCategories": [
      {
        "childIds": [ArticleTagUrn],
        "title": "xyz789",
        "description": "xyz789",
        "iconUrl": "abc123",
        "indexPageId": ArticleUrn,
        "id": ArticleTagUrn
      }
    ]
  }
}

updates

Description

Returns one article for the given id.

Response

Returns [Article!]

Example

Query
query updates {
  updates {
    id
    type
    versionId
    isEditableVersion
    tags {
      ...ArticleTagFragment
    }
    title
    iconUrl
    body {
      ...RichBodyFragment
    }
    creatorId
    creator {
      ...UserFragment
    }
    portalId
    portal {
      ...PortalFragment
    }
    createdDate
    modifiedDate
    publishedDate
    publishedById
    publishedBy {
      ...UserFragment
    }
    previewText
    url
    sections {
      ...ArticleSectionFragment
    }
    draftCreatorId
    draftCreator {
      ...UserFragment
    }
    draftModifiedDate
    permissions {
      ...PermissionAssignmentFragment
    }
    currentUserPermission
    relatedArticles {
      ...ArticlePreviewFragment
    }
    feedback {
      ...ArticleFeedbackFragment
    }
    proposal {
      ...ArticleProposalFragment
    }
  }
}
Response
{
  "data": {
    "updates": [
      {
        "id": ArticleUrn,
        "type": "ARTICLE",
        "versionId": ArticleVersionUrn,
        "isEditableVersion": false,
        "tags": [ArticleTag],
        "title": "xyz789",
        "iconUrl": "abc123",
        "body": RichBody,
        "creatorId": Urn,
        "creator": User,
        "portalId": PortalUrn,
        "portal": Portal,
        "createdDate": DateTimeISO,
        "modifiedDate": DateTimeISO,
        "publishedDate": DateTimeISO,
        "publishedById": Urn,
        "publishedBy": User,
        "previewText": "xyz789",
        "url": "abc123",
        "sections": [ArticleSection],
        "draftCreatorId": Urn,
        "draftCreator": User,
        "draftModifiedDate": DateTimeISO,
        "permissions": [PermissionAssignment],
        "currentUserPermission": "EXECUTE",
        "relatedArticles": [ArticlePreview],
        "feedback": ArticleFeedback,
        "proposal": ArticleProposal
      }
    ]
  }
}

user

Description

Returns the user for the given id.

Response

Returns a User

Arguments
Name Description
id - Urn!

Example

Query
query user($id: Urn!) {
  user(id: $id) {
    id
    aliasIds
    name
    firstName
    lastName
    emailAddresses
    avatarUrl
    isVerified
    isCurrentlyLoggedInUser
    group
    userGroups {
      ...UserGroupFragment
    }
    role
    loginType
    organizationId
    organization {
      ...CompanyFragment
    }
    handles {
      ...UserHandleFragment
    }
  }
}
Variables
{"id": Urn}
Response
{
  "data": {
    "user": {
      "id": Urn,
      "aliasIds": [Urn],
      "name": "xyz789",
      "firstName": "xyz789",
      "lastName": "abc123",
      "emailAddresses": ["xyz789"],
      "avatarUrl": "abc123",
      "isVerified": true,
      "isCurrentlyLoggedInUser": false,
      "group": "xyz789",
      "userGroups": [UserGroup],
      "role": "AGENT",
      "loginType": "NONE",
      "organizationId": CompanyUrn,
      "organization": Company,
      "handles": [UserHandle]
    }
  }
}

userGroup

Description

Returns a user group.

Response

Returns a UserGroup

Arguments
Name Description
id - UserGroupUrn!

Example

Query
query userGroup($id: UserGroupUrn!) {
  userGroup(id: $id) {
    name
    description
    profile {
      ...UserGroupProfileFragment
    }
    userIds
    administratorUserIds
    id
    users {
      ...UserFragment
    }
    administrators {
      ...UserFragment
    }
  }
}
Variables
{"id": UserGroupUrn}
Response
{
  "data": {
    "userGroup": {
      "name": "abc123",
      "description": "abc123",
      "profile": UserGroupProfile,
      "userIds": [Urn],
      "administratorUserIds": [Urn],
      "id": UserGroupUrn,
      "users": [User],
      "administrators": [User]
    }
  }
}

userGroups

Response

Returns [UserGroup!]!

Arguments
Name Description
ids - [UserGroupUrn!] If entered, will only return the user groups of the given ids.

Example

Query
query userGroups($ids: [UserGroupUrn!]) {
  userGroups(ids: $ids) {
    name
    description
    profile {
      ...UserGroupProfileFragment
    }
    userIds
    administratorUserIds
    id
    users {
      ...UserFragment
    }
    administrators {
      ...UserFragment
    }
  }
}
Variables
{"ids": [UserGroupUrn]}
Response
{
  "data": {
    "userGroups": [
      {
        "name": "abc123",
        "description": "abc123",
        "profile": UserGroupProfile,
        "userIds": [Urn],
        "administratorUserIds": [Urn],
        "id": UserGroupUrn,
        "users": [User],
        "administrators": [User]
      }
    ]
  }
}

userHandles

Description

Gets all the user handles for a user

Response

Returns [UserHandle!]

Arguments
Name Description
userId - UserUrn

Example

Query
query userHandles($userId: UserUrn) {
  userHandles(userId: $userId) {
    id
    type
    email {
      ...UserHandleEmailFragment
    }
    application {
      ...UserHandleApplicationFragment
    }
  }
}
Variables
{"userId": UserUrn}
Response
{
  "data": {
    "userHandles": [
      {
        "id": HandleUrn,
        "type": "EMAIL",
        "email": UserHandleEmail,
        "application": UserHandleApplication
      }
    ]
  }
}

userPortalSettings

Description

Returns the user's specific portal settings.

Response

Returns a UserPortalSettings

Example

Query
query userPortalSettings {
  userPortalSettings {
    lastOpenedDashboardId
    dashboards {
      ...UserPortalSettingsDashboardFragment
    }
    chatSections {
      ...ChatSectionDisplayInputFragment
    }
  }
}
Response
{
  "data": {
    "userPortalSettings": {
      "lastOpenedDashboardId": DashboardUrn,
      "dashboards": [UserPortalSettingsDashboard],
      "chatSections": [ChatSectionDisplayInput]
    }
  }
}

userSettings

Description

Gets user settings.

Response

Returns a UserSettings!

Example

Query
query userSettings {
  userSettings {
    assignmentPreference
    sounds {
      ...UserSoundSettingsFragment
    }
    userFlags
  }
}
Response
{
  "data": {
    "userSettings": {
      "assignmentPreference": "AVAILABLE",
      "sounds": UserSoundSettings,
      "userFlags": Map
    }
  }
}

users

Description

Returns the users matching a query or a subset of users if a query is not provided.

Response

Returns [User!]

Arguments
Name Description
options - UsersQueryProperties
filters - UsersFilters
ids - [Urn!]
start - Float
limit - Float
query - String

Example

Query
query users(
  $options: UsersQueryProperties,
  $filters: UsersFilters,
  $ids: [Urn!],
  $start: Float,
  $limit: Float,
  $query: String
) {
  users(
    options: $options,
    filters: $filters,
    ids: $ids,
    start: $start,
    limit: $limit,
    query: $query
  ) {
    id
    aliasIds
    name
    firstName
    lastName
    emailAddresses
    avatarUrl
    isVerified
    isCurrentlyLoggedInUser
    group
    userGroups {
      ...UserGroupFragment
    }
    role
    loginType
    organizationId
    organization {
      ...CompanyFragment
    }
    handles {
      ...UserHandleFragment
    }
  }
}
Variables
{
  "options": UsersQueryProperties,
  "filters": UsersFilters,
  "ids": [Urn],
  "start": 987.65,
  "limit": 987.65,
  "query": "abc123"
}
Response
{
  "data": {
    "users": [
      {
        "id": Urn,
        "aliasIds": [Urn],
        "name": "abc123",
        "firstName": "abc123",
        "lastName": "abc123",
        "emailAddresses": ["abc123"],
        "avatarUrl": "xyz789",
        "isVerified": false,
        "isCurrentlyLoggedInUser": true,
        "group": "xyz789",
        "userGroups": [UserGroup],
        "role": "AGENT",
        "loginType": "NONE",
        "organizationId": CompanyUrn,
        "organization": Company,
        "handles": [UserHandle]
      }
    ]
  }
}

waitForChat

Description

Returns the given chat.

Response

Returns a Chat

Arguments
Name Description
seconds - Float!
id - Urn!

Example

Query
query waitForChat(
  $seconds: Float!,
  $id: Urn!
) {
  waitForChat(
    seconds: $seconds,
    id: $id
  ) {
    id
    ticketNumber
    subject
    lastMessage
    holdNotes
    status
    priority
    creatorId
    creator {
      ...UserFragment
    }
    assigneeId
    assignee {
      ...UserFragment
    }
    isAssignedToCurrentUser
    canCurrentUserEdit
    isCurrentUserParticipating
    hasUnreadByCurrentUser
    hasUnrespondedByCurrentUser
    currentUserLastReadDate
    currentUserLastResponseDate
    lastAgentResponseDate
    stateId
    state {
      ...TicketStateFragment
    }
    source {
      ...ChatSourceFragment
    }
    createdDate
    modifiedDate
    finishedDate
    assignedDate
    lastUserMessageDate
    ticketId
    ticket {
      ...TicketFragment
    }
    sort {
      ...ChatSortFragment
    }
    searchContext {
      ...ChatSearchResultContextFragment
    }
  }
}
Variables
{"seconds": 987.65, "id": Urn}
Response
{
  "data": {
    "waitForChat": {
      "id": Urn,
      "ticketNumber": 123.45,
      "subject": "abc123",
      "lastMessage": "abc123",
      "holdNotes": "xyz789",
      "status": "CONNECTED",
      "priority": "CRITICAL",
      "creatorId": Urn,
      "creator": User,
      "assigneeId": Urn,
      "assignee": User,
      "isAssignedToCurrentUser": false,
      "canCurrentUserEdit": true,
      "isCurrentUserParticipating": false,
      "hasUnreadByCurrentUser": false,
      "hasUnrespondedByCurrentUser": true,
      "currentUserLastReadDate": DateTimeISO,
      "currentUserLastResponseDate": DateTimeISO,
      "lastAgentResponseDate": DateTimeISO,
      "stateId": TicketStateUrn,
      "state": TicketState,
      "source": ChatSource,
      "createdDate": DateTimeISO,
      "modifiedDate": DateTimeISO,
      "finishedDate": DateTimeISO,
      "assignedDate": DateTimeISO,
      "lastUserMessageDate": DateTimeISO,
      "ticketId": TicketUrn,
      "ticket": Ticket,
      "sort": ChatSort,
      "searchContext": ChatSearchResultContext
    }
  }
}

workflow

Description

Returns the latest version of the given workflow.

Response

Returns a Workflow

Arguments
Name Description
versionId - WorkflowVersionUrn
id - WorkflowUrn!

Example

Query
query workflow(
  $versionId: WorkflowVersionUrn,
  $id: WorkflowUrn!
) {
  workflow(
    versionId: $versionId,
    id: $id
  ) {
    name
    description
    iconUrl
    id
    createdDate
    modifiedDate
    workflowVersionId
    steps {
      ...WorkflowStepFragment
    }
    triggers {
      ...WorkflowTriggerFragment
    }
    template {
      ...WorkflowTemplateFragment
    }
    isLatestPublished
  }
}
Variables
{
  "versionId": WorkflowVersionUrn,
  "id": WorkflowUrn
}
Response
{
  "data": {
    "workflow": {
      "name": "abc123",
      "description": "abc123",
      "iconUrl": "abc123",
      "id": WorkflowUrn,
      "createdDate": DateTimeISO,
      "modifiedDate": DateTimeISO,
      "workflowVersionId": WorkflowUrn,
      "steps": [WorkflowStep],
      "triggers": [WorkflowTrigger],
      "template": WorkflowTemplate,
      "isLatestPublished": true
    }
  }
}

workflowReference

Description

Gets a third party reference to a workflow.

Response

Returns a WorkflowReference

Arguments
Name Description
referenceId - Urn!

Example

Query
query workflowReference($referenceId: Urn!) {
  workflowReference(referenceId: $referenceId) {
    referenceId
    workflowId
    workflow {
      ...WorkflowFragment
    }
  }
}
Variables
{"referenceId": Urn}
Response
{
  "data": {
    "workflowReference": {
      "referenceId": Urn,
      "workflowId": WorkflowUrn,
      "workflow": Workflow
    }
  }
}

workflowService

Description

Returns the given form field.

Response

Returns a WorkflowService

Arguments
Name Description
id - Urn!

Example

Query
query workflowService($id: Urn!) {
  workflowService(id: $id) {
    id
    name
    longDescription
    shortDescription
    searchHighlight
    iconUrl
    squareIconUrl
    tags
    actionTypes
    connection {
      ...WorkflowServiceConnectionFragment
    }
    actions {
      ...WorkflowServiceActionFragment
    }
    installedIntegrationIds
    installedIntegrations {
      ...IntegrationFragment
    }
    options {
      ...WorkflowServiceOptionGroupFragment
    }
    learnMore {
      ...WorkflowServiceLearnMoreFragment
    }
  }
}
Variables
{"id": Urn}
Response
{
  "data": {
    "workflowService": {
      "id": WorkflowServiceUrn,
      "name": "xyz789",
      "longDescription": "xyz789",
      "shortDescription": "xyz789",
      "searchHighlight": "xyz789",
      "iconUrl": "abc123",
      "squareIconUrl": "xyz789",
      "tags": ["xyz789"],
      "actionTypes": ["CREATE_TICKET"],
      "connection": WorkflowServiceConnection,
      "actions": [WorkflowServiceAction],
      "installedIntegrationIds": [IntegrationUrn],
      "installedIntegrations": [Integration],
      "options": [WorkflowServiceOptionGroup],
      "learnMore": WorkflowServiceLearnMore
    }
  }
}

workflowServiceAction

Description

Returns the given service action.

Response

Returns a WorkflowServiceAction

Arguments
Name Description
integrationId - IntegrationUrn
id - Urn!

Example

Query
query workflowServiceAction(
  $integrationId: IntegrationUrn,
  $id: Urn!
) {
  workflowServiceAction(
    integrationId: $integrationId,
    id: $id
  ) {
    id
    name
    description
    tags
    displayTemplate {
      ...FormFieldTemplateFragment
    }
    input {
      ...WorkflowFormFieldFragment
    }
    output {
      ...WorkflowServiceOutputParameterFragment
    }
    allowedChildren {
      ...WorkflowServiceChildActionFragment
    }
    contextTypes
    integrations {
      ...IntegrationDataFragment
    }
  }
}
Variables
{
  "integrationId": IntegrationUrn,
  "id": Urn
}
Response
{
  "data": {
    "workflowServiceAction": {
      "id": Urn,
      "name": "abc123",
      "description": "xyz789",
      "tags": ["abc123"],
      "displayTemplate": FormFieldTemplate,
      "input": [WorkflowFormField],
      "output": [WorkflowServiceOutputParameter],
      "allowedChildren": [WorkflowServiceChildAction],
      "contextTypes": ["TICKET"],
      "integrations": [IntegrationData]
    }
  }
}

workflowServiceChoiceValues

Description

Returns the given service action.

Response

Returns a WorkflowServiceChoiceOptions

Arguments
Name Description
filters - WorkflowServiceChoiceFilterInput!

Example

Query
query workflowServiceChoiceValues($filters: WorkflowServiceChoiceFilterInput!) {
  workflowServiceChoiceValues(filters: $filters) {
    options {
      ...FormFieldOptionFragment
    }
  }
}
Variables
{"filters": WorkflowServiceChoiceFilterInput}
Response
{
  "data": {
    "workflowServiceChoiceValues": {
      "options": [FormFieldOption]
    }
  }
}

workflowServicePollWebhookExample

Description

Gets an example request based for a webhook.

Arguments
Name Description
stepId - WorkflowStepUrn!

Example

Query
query workflowServicePollWebhookExample($stepId: WorkflowStepUrn!) {
  workflowServicePollWebhookExample(stepId: $stepId) {
    isFound
    formId
  }
}
Variables
{"stepId": WorkflowStepUrn}
Response
{
  "data": {
    "workflowServicePollWebhookExample": {
      "isFound": false,
      "formId": FormUrn
    }
  }
}

workflowServiceSystemActions

Description

Returns all available system actions.

Response

Returns [WorkflowServiceAction!]

Arguments
Name Description
type - ActionContextType!

Example

Query
query workflowServiceSystemActions($type: ActionContextType!) {
  workflowServiceSystemActions(type: $type) {
    id
    name
    description
    tags
    displayTemplate {
      ...FormFieldTemplateFragment
    }
    input {
      ...WorkflowFormFieldFragment
    }
    output {
      ...WorkflowServiceOutputParameterFragment
    }
    allowedChildren {
      ...WorkflowServiceChildActionFragment
    }
    contextTypes
    integrations {
      ...IntegrationDataFragment
    }
  }
}
Variables
{"type": "TICKET"}
Response
{
  "data": {
    "workflowServiceSystemActions": [
      {
        "id": Urn,
        "name": "xyz789",
        "description": "xyz789",
        "tags": ["xyz789"],
        "displayTemplate": FormFieldTemplate,
        "input": [WorkflowFormField],
        "output": [WorkflowServiceOutputParameter],
        "allowedChildren": [WorkflowServiceChildAction],
        "contextTypes": ["TICKET"],
        "integrations": [IntegrationData]
      }
    ]
  }
}

workflowServices

Response

Returns [WorkflowService!]!

Arguments
Name Description
filters - WorkflowServiceFilters Filters controlling which workflow items to return.
query - String Search string to look for services with.
ids - [WorkflowServiceUrn!] Which services to return.

Example

Query
query workflowServices(
  $filters: WorkflowServiceFilters,
  $query: String,
  $ids: [WorkflowServiceUrn!]
) {
  workflowServices(
    filters: $filters,
    query: $query,
    ids: $ids
  ) {
    id
    name
    longDescription
    shortDescription
    searchHighlight
    iconUrl
    squareIconUrl
    tags
    actionTypes
    connection {
      ...WorkflowServiceConnectionFragment
    }
    actions {
      ...WorkflowServiceActionFragment
    }
    installedIntegrationIds
    installedIntegrations {
      ...IntegrationFragment
    }
    options {
      ...WorkflowServiceOptionGroupFragment
    }
    learnMore {
      ...WorkflowServiceLearnMoreFragment
    }
  }
}
Variables
{
  "filters": WorkflowServiceFilters,
  "query": "abc123",
  "ids": [WorkflowServiceUrn]
}
Response
{
  "data": {
    "workflowServices": [
      {
        "id": WorkflowServiceUrn,
        "name": "xyz789",
        "longDescription": "xyz789",
        "shortDescription": "xyz789",
        "searchHighlight": "xyz789",
        "iconUrl": "xyz789",
        "squareIconUrl": "abc123",
        "tags": ["abc123"],
        "actionTypes": ["CREATE_TICKET"],
        "connection": WorkflowServiceConnection,
        "actions": [WorkflowServiceAction],
        "installedIntegrationIds": [IntegrationUrn],
        "installedIntegrations": [Integration],
        "options": [WorkflowServiceOptionGroup],
        "learnMore": WorkflowServiceLearnMore
      }
    ]
  }
}

workflowVersions

Description

Gets a list of versions for a workflow.

Response

Returns a WorkflowVersions

Arguments
Name Description
workflowId - WorkflowUrn!

Example

Query
query workflowVersions($workflowId: WorkflowUrn!) {
  workflowVersions(workflowId: $workflowId) {
    name
    description
    iconUrl
    versions {
      ...WorkflowVersionFragment
    }
  }
}
Variables
{"workflowId": WorkflowUrn}
Response
{
  "data": {
    "workflowVersions": {
      "name": "xyz789",
      "description": "xyz789",
      "iconUrl": "abc123",
      "versions": [WorkflowVersion]
    }
  }
}

workflows

Description

Returns the list of workflows.

Response

Returns [Workflow!]

Arguments
Name Description
filters - WorkflowsFilterInput

Example

Query
query workflows($filters: WorkflowsFilterInput) {
  workflows(filters: $filters) {
    name
    description
    iconUrl
    id
    createdDate
    modifiedDate
    workflowVersionId
    steps {
      ...WorkflowStepFragment
    }
    triggers {
      ...WorkflowTriggerFragment
    }
    template {
      ...WorkflowTemplateFragment
    }
    isLatestPublished
  }
}
Variables
{"filters": WorkflowsFilterInput}
Response
{
  "data": {
    "workflows": [
      {
        "name": "xyz789",
        "description": "abc123",
        "iconUrl": "xyz789",
        "id": WorkflowUrn,
        "createdDate": DateTimeISO,
        "modifiedDate": DateTimeISO,
        "workflowVersionId": WorkflowUrn,
        "steps": [WorkflowStep],
        "triggers": [WorkflowTrigger],
        "template": WorkflowTemplate,
        "isLatestPublished": false
      }
    ]
  }
}

workspaceEventTypes

Description

Gets the list of event types.

Response

Returns [WorkspaceEventType!]

Example

Query
query workspaceEventTypes {
  workspaceEventTypes {
    id
    label
    description
    workflowType
    input {
      ...WorkspaceEventTypeInputFragment
    }
  }
}
Response
{
  "data": {
    "workspaceEventTypes": [
      {
        "id": WorkspaceEventTypeUrn,
        "label": "xyz789",
        "description": "abc123",
        "workflowType": "TICKET",
        "input": [WorkspaceEventTypeInput]
      }
    ]
  }
}

workspaceEvents

Description

Gets the list of event types.

Response

Returns [WorkspaceEvent!]

Example

Query
query workspaceEvents {
  workspaceEvents {
    eventTypeId
    workflowId
  }
}
Response
{
  "data": {
    "workspaceEvents": [
      {
        "eventTypeId": WorkspaceEventTypeUrn,
        "workflowId": WorkflowUrn
      }
    ]
  }
}

Mutations

actionUpdate

Description

Gets action data

Response

Returns an Action

Arguments
Name Description
input - ActionInput!

Example

Query
mutation actionUpdate($input: ActionInput!) {
  actionUpdate(input: $input) {
    feedback {
      ...ActionFeedbackFragment
    }
    deflection {
      ...ActionDeflectionFragment
    }
  }
}
Variables
{"input": ActionInput}
Response
{
  "data": {
    "actionUpdate": {
      "feedback": ActionFeedback,
      "deflection": ActionDeflection
    }
  }
}

addChannelTagToChannels

Description

Adds a channel tag to a set of channels.

Response

Returns an OkResult

Arguments
Name Description
channelTag - ChannelTagModifyInput!

Example

Query
mutation addChannelTagToChannels($channelTag: ChannelTagModifyInput!) {
  addChannelTagToChannels(channelTag: $channelTag) {
    ok
  }
}
Variables
{"channelTag": ChannelTagModifyInput}
Response
{"data": {"addChannelTagToChannels": {"ok": false}}}

addEmailAlias

Description

Adds an email alias and sends a email validation request..

Response

Returns an OkResult

Arguments
Name Description
email - String!

Example

Query
mutation addEmailAlias($email: String!) {
  addEmailAlias(email: $email) {
    ok
  }
}
Variables
{"email": "xyz789"}
Response
{"data": {"addEmailAlias": {"ok": false}}}

addParticipants

Description

Adds participants to a chat

Response

Returns an OkResult

Arguments
Name Description
participants - [ChatAddParticipantInput!]!

Example

Query
mutation addParticipants($participants: [ChatAddParticipantInput!]!) {
  addParticipants(participants: $participants) {
    ok
  }
}
Variables
{"participants": [ChatAddParticipantInput]}
Response
{"data": {"addParticipants": {"ok": true}}}

addPortalDomain

Description

Associates a domain name with a portal.

Response

Returns an OkResult!

Arguments
Name Description
hostname - String! The hostname of the portal.
portalId - PortalUrn The id of the portal to add a domain to.

Example

Query
mutation addPortalDomain(
  $hostname: String!,
  $portalId: PortalUrn
) {
  addPortalDomain(
    hostname: $hostname,
    portalId: $portalId
  ) {
    ok
  }
}
Variables
{
  "hostname": "xyz789",
  "portalId": PortalUrn
}
Response
{"data": {"addPortalDomain": {"ok": true}}}

addReaction

Description

Adds a reaction to a message

Response

Returns an OkResult

Arguments
Name Description
reaction - TicketMessageReactionInput!

Example

Query
mutation addReaction($reaction: TicketMessageReactionInput!) {
  addReaction(reaction: $reaction) {
    ok
  }
}
Variables
{"reaction": TicketMessageReactionInput}
Response
{"data": {"addReaction": {"ok": true}}}

addTicketStateId

Description

Marks a set of chats as read.

Response

Returns an OkResult!

Arguments
Name Description
status - ChatStatus
stateId - TicketStateUrn!
chatIds - [Urn!]!

Example

Query
mutation addTicketStateId(
  $status: ChatStatus,
  $stateId: TicketStateUrn!,
  $chatIds: [Urn!]!
) {
  addTicketStateId(
    status: $status,
    stateId: $stateId,
    chatIds: $chatIds
  ) {
    ok
  }
}
Variables
{
  "status": "CONNECTED",
  "stateId": TicketStateUrn,
  "chatIds": [Urn]
}
Response
{"data": {"addTicketStateId": {"ok": true}}}

articleFeedback

Description

Stores if the article was helpful or not..

Response

Returns an OkResult!

Arguments
Name Description
feedback - ArticleFeedbackInput! The feedback type.

Example

Query
mutation articleFeedback($feedback: ArticleFeedbackInput!) {
  articleFeedback(feedback: $feedback) {
    ok
  }
}
Variables
{"feedback": ArticleFeedbackInput}
Response
{"data": {"articleFeedback": {"ok": true}}}

artificialIntelligencePromptClear

Description

Clears the AI context for a chat

Response

Returns an OkResult

Arguments
Name Description
chatId - Urn!

Example

Query
mutation artificialIntelligencePromptClear($chatId: Urn!) {
  artificialIntelligencePromptClear(chatId: $chatId) {
    ok
  }
}
Variables
{"chatId": Urn}
Response
{"data": {"artificialIntelligencePromptClear": {"ok": false}}}

assignChats

Description

Assigns a set of chats

Response

Returns an OkResult

Arguments
Name Description
assignment - ChatAssignInput
ids - [Urn!]!

Example

Query
mutation assignChats(
  $assignment: ChatAssignInput,
  $ids: [Urn!]!
) {
  assignChats(
    assignment: $assignment,
    ids: $ids
  ) {
    ok
  }
}
Variables
{
  "assignment": ChatAssignInput,
  "ids": [Urn]
}
Response
{"data": {"assignChats": {"ok": true}}}

attachWorkflow

Description

Attaches a trigger to a workflow.

Response

Returns a Workflow

Arguments
Name Description
triggers - [WorkflowTriggerInput!]! The trigger to attach to the workflow.
id - WorkflowUrn! The workflow to attach the trigger to.

Example

Query
mutation attachWorkflow(
  $triggers: [WorkflowTriggerInput!]!,
  $id: WorkflowUrn!
) {
  attachWorkflow(
    triggers: $triggers,
    id: $id
  ) {
    name
    description
    iconUrl
    id
    createdDate
    modifiedDate
    workflowVersionId
    steps {
      ...WorkflowStepFragment
    }
    triggers {
      ...WorkflowTriggerFragment
    }
    template {
      ...WorkflowTemplateFragment
    }
    isLatestPublished
  }
}
Variables
{
  "triggers": [WorkflowTriggerInput],
  "id": WorkflowUrn
}
Response
{
  "data": {
    "attachWorkflow": {
      "name": "xyz789",
      "description": "abc123",
      "iconUrl": "xyz789",
      "id": WorkflowUrn,
      "createdDate": DateTimeISO,
      "modifiedDate": DateTimeISO,
      "workflowVersionId": WorkflowUrn,
      "steps": [WorkflowStep],
      "triggers": [WorkflowTrigger],
      "template": WorkflowTemplate,
      "isLatestPublished": true
    }
  }
}

billingOrder

Description

Starts the billing order with stripe

Response

Returns a PortalBillingOrderComplete!

Arguments
Name Description
order - PortalBillingOrder! The order.

Example

Query
mutation billingOrder($order: PortalBillingOrder!) {
  billingOrder(order: $order) {
    redirectUrl
    errorMessage
  }
}
Variables
{"order": PortalBillingOrder}
Response
{
  "data": {
    "billingOrder": {
      "redirectUrl": "xyz789",
      "errorMessage": "abc123"
    }
  }
}

billingSubscriptionChange

Description

Updates an existing billing subscription

Response

Returns an OkResult!

Arguments
Name Description
change - PortalSubscriptionChange! The change information.

Example

Query
mutation billingSubscriptionChange($change: PortalSubscriptionChange!) {
  billingSubscriptionChange(change: $change) {
    ok
  }
}
Variables
{"change": PortalSubscriptionChange}
Response
{"data": {"billingSubscriptionChange": {"ok": false}}}

cloneForm

Description

Clones an existing form and automation

Response

Returns a Form!

Arguments
Name Description
options - FormCloneInput The cloning options
id - FormUrn The id of the form to clone.

Example

Query
mutation cloneForm(
  $options: FormCloneInput,
  $id: FormUrn
) {
  cloneForm(
    options: $options,
    id: $id
  ) {
    name
    type
    description
    isCreatePrivate
    deflection {
      ...FormDeflectionSettingsFragment
    }
    externalFormId
    userGroupIds
    actionSettings {
      ...ActionSettingsFragment
    }
    tags
    jobFunctions
    iconUrl
    shouldCreateOnOnboarding
    permissions {
      ...PermissionAssignmentFragment
    }
    id
    fields {
      ...FormFieldDescriptorFragment
    }
    workflowId
    hasAutomation
    workflow {
      ...WorkflowFragment
    }
    exampleInput {
      ...FormWebhookExampleFragment
    }
    modifiedDate
    createdDate
    userGroups {
      ...WorkflowFragment
    }
    currentUserPermissions
  }
}
Variables
{
  "options": FormCloneInput,
  "id": FormUrn
}
Response
{
  "data": {
    "cloneForm": {
      "name": "xyz789",
      "type": "DEFAULT",
      "description": "abc123",
      "isCreatePrivate": true,
      "deflection": FormDeflectionSettings,
      "externalFormId": FormExternalUrn,
      "userGroupIds": [UserGroupUrn],
      "actionSettings": ActionSettings,
      "tags": ["abc123"],
      "jobFunctions": ["CUSTOMER_SUPPORT"],
      "iconUrl": "abc123",
      "shouldCreateOnOnboarding": false,
      "permissions": [PermissionAssignment],
      "id": FormUrn,
      "fields": [FormFieldDescriptor],
      "workflowId": WorkflowUrn,
      "hasAutomation": false,
      "workflow": Workflow,
      "exampleInput": FormWebhookExample,
      "modifiedDate": DateTimeISO,
      "createdDate": DateTimeISO,
      "userGroups": Workflow,
      "currentUserPermissions": ["EXECUTE"]
    }
  }
}

cloneWorkflow

Description

Clones a workflow

Response

Returns a Workflow!

Arguments
Name Description
id - WorkflowUrn!

Example

Query
mutation cloneWorkflow($id: WorkflowUrn!) {
  cloneWorkflow(id: $id) {
    name
    description
    iconUrl
    id
    createdDate
    modifiedDate
    workflowVersionId
    steps {
      ...WorkflowStepFragment
    }
    triggers {
      ...WorkflowTriggerFragment
    }
    template {
      ...WorkflowTemplateFragment
    }
    isLatestPublished
  }
}
Variables
{"id": WorkflowUrn}
Response
{
  "data": {
    "cloneWorkflow": {
      "name": "xyz789",
      "description": "xyz789",
      "iconUrl": "abc123",
      "id": WorkflowUrn,
      "createdDate": DateTimeISO,
      "modifiedDate": DateTimeISO,
      "workflowVersionId": WorkflowUrn,
      "steps": [WorkflowStep],
      "triggers": [WorkflowTrigger],
      "template": WorkflowTemplate,
      "isLatestPublished": false
    }
  }
}

composeMessage

Description

Sends a message to one or more channel or users. If the message is a draft or scheduled, the message will not go out right away.

Response

Returns a ComposedMessage

Arguments
Name Description
message - ComposedMessageInput!
id - ComposedMessageUrn

Example

Query
mutation composeMessage(
  $message: ComposedMessageInput!,
  $id: ComposedMessageUrn
) {
  composeMessage(
    message: $message,
    id: $id
  ) {
    scheduledDate
    body {
      ...RichBodyFragment
    }
    permissions {
      ...PermissionAssignmentFragment
    }
    senderId
    id
    status
    createdDate
    sentDate
    attachments {
      ...TicketMessageAttachmentFragment
    }
    creatorId
    creator {
      ...UserFragment
    }
    currentUserPermissions
    sender {
      ...UserFragment
    }
    recipients {
      ...ComposedMessageRecipientFragment
    }
  }
}
Variables
{
  "message": ComposedMessageInput,
  "id": ComposedMessageUrn
}
Response
{
  "data": {
    "composeMessage": {
      "scheduledDate": DateTimeISO,
      "body": RichBody,
      "permissions": [PermissionAssignment],
      "senderId": UserUrn,
      "id": ComposedMessageUrn,
      "status": "SENT",
      "createdDate": DateTimeISO,
      "sentDate": DateTimeISO,
      "attachments": [TicketMessageAttachment],
      "creatorId": UserUrn,
      "creator": User,
      "currentUserPermissions": ["EXECUTE"],
      "sender": User,
      "recipients": [ComposedMessageRecipient]
    }
  }
}

conversationSourcesInstall

Description

Installs Foqal in a specific channel.

Response

Returns an OkResult

Arguments
Name Description
conversationSourceIds - [Urn!]!

Example

Query
mutation conversationSourcesInstall($conversationSourceIds: [Urn!]!) {
  conversationSourcesInstall(conversationSourceIds: $conversationSourceIds) {
    ok
  }
}
Variables
{"conversationSourceIds": [Urn]}
Response
{"data": {"conversationSourcesInstall": {"ok": false}}}

createChannelTag

Description

Adds an email alias and sends a email validation request..

Response

Returns a ChannelTagCreated

Arguments
Name Description
channelTag - ChannelTagCreateInput!

Example

Query
mutation createChannelTag($channelTag: ChannelTagCreateInput!) {
  createChannelTag(channelTag: $channelTag) {
    name
    chatSettingsId
  }
}
Variables
{"channelTag": ChannelTagCreateInput}
Response
{
  "data": {
    "createChannelTag": {
      "name": "abc123",
      "chatSettingsId": AppInstallChannelTagUrn
    }
  }
}

createDashboard

Description

Creates a ticket associated with the current user and portal.

Response

Returns a Dashboard!

Arguments
Name Description
dashboard - DashboardInput! The id of the dashboard

Example

Query
mutation createDashboard($dashboard: DashboardInput!) {
  createDashboard(dashboard: $dashboard) {
    name
    settings {
      ...DashboardSettingsFragment
    }
    permissions {
      ...PermissionAssignmentFragment
    }
    id
    ticketStates {
      ...DashboardTicketStateFragment
    }
  }
}
Variables
{"dashboard": DashboardInput}
Response
{
  "data": {
    "createDashboard": {
      "name": "xyz789",
      "settings": DashboardSettings,
      "permissions": [PermissionAssignment],
      "id": DashboardUrn,
      "ticketStates": [DashboardTicketState]
    }
  }
}

createTicketMessage

Description

Adds a ticket message or comment to the given ticket.

Response

Returns a TicketMessage!

Arguments
Name Description
ticketMessage - TicketMessageInput!
ticketId - TicketUrn!

Example

Query
mutation createTicketMessage(
  $ticketMessage: TicketMessageInput!,
  $ticketId: TicketUrn!
) {
  createTicketMessage(
    ticketMessage: $ticketMessage,
    ticketId: $ticketId
  ) {
    id
    type
    ticketId
    createdDate
    creatorId
    messageIds
    creator {
      ...UserFragment
    }
    body {
      ...RichBodyFragment
    }
    originalBody {
      ...RichBodyFragment
    }
    isDeleted
    redactedDate
    reactions {
      ...TicketMessageReactionFragment
    }
    attachments {
      ...TicketMessageAttachmentFragment
    }
    articles {
      ...TicketMessageArticleFragment
    }
    schedule {
      ...TicketMessageScheduleFragment
    }
    status {
      ...TicketMessageStatusFragment
    }
    extensions {
      ...TicketMessageExtensionsFragment
    }
  }
}
Variables
{
  "ticketMessage": TicketMessageInput,
  "ticketId": TicketUrn
}
Response
{
  "data": {
    "createTicketMessage": {
      "id": TicketMessageUrn,
      "type": "USER_MESSAGE",
      "ticketId": TicketUrn,
      "createdDate": DateTimeISO,
      "creatorId": Urn,
      "messageIds": [Urn],
      "creator": User,
      "body": RichBody,
      "originalBody": RichBody,
      "isDeleted": false,
      "redactedDate": DateTimeISO,
      "reactions": [TicketMessageReaction],
      "attachments": [TicketMessageAttachment],
      "articles": [TicketMessageArticle],
      "schedule": TicketMessageSchedule,
      "status": TicketMessageStatus,
      "extensions": TicketMessageExtensions
    }
  }
}

createToken

Description

Creates a new developer token

Response

Returns a TokenResponse!

Arguments
Name Description
token - TokenRequestInput!

Example

Query
mutation createToken($token: TokenRequestInput!) {
  createToken(token: $token) {
    permissions
    token
  }
}
Variables
{"token": TokenRequestInput}
Response
{
  "data": {
    "createToken": {
      "permissions": ["SUPER_ADMIN"],
      "token": "xyz789"
    }
  }
}

createUploadToken

Description

Creates an upload token.

Response

Returns an AttachmentCreated

Arguments
Name Description
attachment - AttachmentCreateInput!

Example

Query
mutation createUploadToken($attachment: AttachmentCreateInput!) {
  createUploadToken(attachment: $attachment) {
    url
    token
    error
  }
}
Variables
{"attachment": AttachmentCreateInput}
Response
{
  "data": {
    "createUploadToken": {
      "url": "xyz789",
      "token": "abc123",
      "error": "xyz789"
    }
  }
}

deleteArticle

Description

Deletes an article by article id.

Response

Returns an OkResult!

Arguments
Name Description
id - ArticleUrn The id of the article to delete.

Example

Query
mutation deleteArticle($id: ArticleUrn) {
  deleteArticle(id: $id) {
    ok
  }
}
Variables
{"id": ArticleUrn}
Response
{"data": {"deleteArticle": {"ok": false}}}

deleteArticleTag

Description

Deletes an article by article id.

Response

Returns an OkResult!

Arguments
Name Description
id - ArticleTagUrn The id of the article to delete.

Example

Query
mutation deleteArticleTag($id: ArticleTagUrn) {
  deleteArticleTag(id: $id) {
    ok
  }
}
Variables
{"id": ArticleTagUrn}
Response
{"data": {"deleteArticleTag": {"ok": true}}}

deleteArticleVersion

Description

Deletes an article version by versionId.

Response

Returns an OkResult!

Arguments
Name Description
id - ArticleVersionUrn The id of the article to delete.

Example

Query
mutation deleteArticleVersion($id: ArticleVersionUrn) {
  deleteArticleVersion(id: $id) {
    ok
  }
}
Variables
{"id": ArticleVersionUrn}
Response
{"data": {"deleteArticleVersion": {"ok": true}}}

deleteArtificialIntelligenceAgent

Description

Deletes an AI Agent

Response

Returns an OkResult!

Arguments
Name Description
id - ArtificialIntelligenceAgentUrn!

Example

Query
mutation deleteArtificialIntelligenceAgent($id: ArtificialIntelligenceAgentUrn!) {
  deleteArtificialIntelligenceAgent(id: $id) {
    ok
  }
}
Variables
{"id": ArtificialIntelligenceAgentUrn}
Response
{"data": {"deleteArtificialIntelligenceAgent": {"ok": true}}}

deleteChannelInvite

Description

Deletes a channel invite.

Response

Returns an OkResult

Arguments
Name Description
id - ChannelInviteUrn! The id of the channel invite.

Example

Query
mutation deleteChannelInvite($id: ChannelInviteUrn!) {
  deleteChannelInvite(id: $id) {
    ok
  }
}
Variables
{"id": ChannelInviteUrn}
Response
{"data": {"deleteChannelInvite": {"ok": false}}}

deleteChatSettings

Description

Deletes a single channel tag.

Response

Returns an OkResult!

Arguments
Name Description
id - Urn! The id of the channel settings to delete

Example

Query
mutation deleteChatSettings($id: Urn!) {
  deleteChatSettings(id: $id) {
    ok
  }
}
Variables
{"id": Urn}
Response
{"data": {"deleteChatSettings": {"ok": false}}}

deleteCompany

Description

Deletes a company by company id.

Response

Returns an OkResult!

Arguments
Name Description
id - CompanyUrn The id of the company to delete.

Example

Query
mutation deleteCompany($id: CompanyUrn) {
  deleteCompany(id: $id) {
    ok
  }
}
Variables
{"id": CompanyUrn}
Response
{"data": {"deleteCompany": {"ok": true}}}

deleteComposedMessage

Description

Deletes a composed message

Response

Returns an OkResult

Arguments
Name Description
id - ComposedMessageUrn!

Example

Query
mutation deleteComposedMessage($id: ComposedMessageUrn!) {
  deleteComposedMessage(id: $id) {
    ok
  }
}
Variables
{"id": ComposedMessageUrn}
Response
{"data": {"deleteComposedMessage": {"ok": false}}}

deleteDashboard

Description

Creates a ticket associated with the current user and portal.

Response

Returns an OkResult!

Arguments
Name Description
id - DashboardUrn! The id of the dashboard

Example

Query
mutation deleteDashboard($id: DashboardUrn!) {
  deleteDashboard(id: $id) {
    ok
  }
}
Variables
{"id": DashboardUrn}
Response
{"data": {"deleteDashboard": {"ok": false}}}

deleteEmailAlias

Description

Stores agent ticket settings.

Response

Returns an OkResult

Arguments
Name Description
id - ChannelEmailUrn!

Example

Query
mutation deleteEmailAlias($id: ChannelEmailUrn!) {
  deleteEmailAlias(id: $id) {
    ok
  }
}
Variables
{"id": ChannelEmailUrn}
Response
{"data": {"deleteEmailAlias": {"ok": false}}}

deleteForm

Description

Deletes a form.

Response

Returns an OkResult!

Arguments
Name Description
id - FormUrn! The id of the form to delete

Example

Query
mutation deleteForm($id: FormUrn!) {
  deleteForm(id: $id) {
    ok
  }
}
Variables
{"id": FormUrn}
Response
{"data": {"deleteForm": {"ok": false}}}

deleteFormField

Description

Deletes a form field.

Response

Returns an OkResult!

Arguments
Name Description
id - FormFieldUrn! The id of the form field to delete

Example

Query
mutation deleteFormField($id: FormFieldUrn!) {
  deleteFormField(id: $id) {
    ok
  }
}
Variables
{"id": FormFieldUrn}
Response
{"data": {"deleteFormField": {"ok": false}}}

deleteMCPServer

Description

Deletes an AI Agent

Response

Returns an OkResult!

Arguments
Name Description
id - MCPServerUrn!

Example

Query
mutation deleteMCPServer($id: MCPServerUrn!) {
  deleteMCPServer(id: $id) {
    ok
  }
}
Variables
{"id": MCPServerUrn}
Response
{"data": {"deleteMCPServer": {"ok": false}}}

deleteMessage

Description

Deletes a message

Response

Returns an OkResult

Arguments
Name Description
ticketMessageId - TicketMessageUrn!

Example

Query
mutation deleteMessage($ticketMessageId: TicketMessageUrn!) {
  deleteMessage(ticketMessageId: $ticketMessageId) {
    ok
  }
}
Variables
{"ticketMessageId": TicketMessageUrn}
Response
{"data": {"deleteMessage": {"ok": false}}}

deleteMetricsDashboard

Description

Deletes a report.

Response

Returns an OkResult

Arguments
Name Description
id - MetricsDashboardUrn!

Example

Query
mutation deleteMetricsDashboard($id: MetricsDashboardUrn!) {
  deleteMetricsDashboard(id: $id) {
    ok
  }
}
Variables
{"id": MetricsDashboardUrn}
Response
{"data": {"deleteMetricsDashboard": {"ok": true}}}

deleteQueue

Description

Deletes a queue.

Response

Returns an OkResult!

Arguments
Name Description
id - QueueUrn! The id of the queue to delete

Example

Query
mutation deleteQueue($id: QueueUrn!) {
  deleteQueue(id: $id) {
    ok
  }
}
Variables
{"id": QueueUrn}
Response
{"data": {"deleteQueue": {"ok": false}}}

deleteTicketTask

Description

Updates the ticket task status

Response

Returns an OkResult!

Arguments
Name Description
id - TicketTaskUrn!

Example

Query
mutation deleteTicketTask($id: TicketTaskUrn!) {
  deleteTicketTask(id: $id) {
    ok
  }
}
Variables
{"id": TicketTaskUrn}
Response
{"data": {"deleteTicketTask": {"ok": true}}}

deleteToken

Description

Deletes an user by user id.

Response

Returns an OkResult!

Arguments
Name Description
id - UserUrn The id of the token to delete.

Example

Query
mutation deleteToken($id: UserUrn) {
  deleteToken(id: $id) {
    ok
  }
}
Variables
{"id": UserUrn}
Response
{"data": {"deleteToken": {"ok": false}}}

deleteUser

Description

Deletes an user by user id.

Response

Returns an OkResult!

Arguments
Name Description
id - UserUrn The id of the user to delete.

Example

Query
mutation deleteUser($id: UserUrn) {
  deleteUser(id: $id) {
    ok
  }
}
Variables
{"id": UserUrn}
Response
{"data": {"deleteUser": {"ok": true}}}

deleteUserGroup

Description

Deletes a user group.

Response

Returns an OkResult!

Arguments
Name Description
id - UserGroupUrn! The id of the user group to delete

Example

Query
mutation deleteUserGroup($id: UserGroupUrn!) {
  deleteUserGroup(id: $id) {
    ok
  }
}
Variables
{"id": UserGroupUrn}
Response
{"data": {"deleteUserGroup": {"ok": true}}}

deleteWorkflow

Description

Deletes a workflow

Response

Returns an OkResult!

Arguments
Name Description
id - WorkflowUrn!

Example

Query
mutation deleteWorkflow($id: WorkflowUrn!) {
  deleteWorkflow(id: $id) {
    ok
  }
}
Variables
{"id": WorkflowUrn}
Response
{"data": {"deleteWorkflow": {"ok": false}}}

deliverScheduledMessage

Description

Deliver a scheduled message right away

Response

Returns an OkResult

Arguments
Name Description
ticketMessageId - TicketMessageUrn!

Example

Query
mutation deliverScheduledMessage($ticketMessageId: TicketMessageUrn!) {
  deliverScheduledMessage(ticketMessageId: $ticketMessageId) {
    ok
  }
}
Variables
{"ticketMessageId": TicketMessageUrn}
Response
{"data": {"deliverScheduledMessage": {"ok": false}}}

detachWorkflow

Description

Attaches a trigger to a workflow.

Response

Returns a Workflow

Arguments
Name Description
referenceIds - [Urn!]! The references to detach from the workflow.
id - WorkflowUrn! The workflow to attach the trigger to.

Example

Query
mutation detachWorkflow(
  $referenceIds: [Urn!]!,
  $id: WorkflowUrn!
) {
  detachWorkflow(
    referenceIds: $referenceIds,
    id: $id
  ) {
    name
    description
    iconUrl
    id
    createdDate
    modifiedDate
    workflowVersionId
    steps {
      ...WorkflowStepFragment
    }
    triggers {
      ...WorkflowTriggerFragment
    }
    template {
      ...WorkflowTemplateFragment
    }
    isLatestPublished
  }
}
Variables
{
  "referenceIds": [Urn],
  "id": WorkflowUrn
}
Response
{
  "data": {
    "detachWorkflow": {
      "name": "xyz789",
      "description": "xyz789",
      "iconUrl": "abc123",
      "id": WorkflowUrn,
      "createdDate": DateTimeISO,
      "modifiedDate": DateTimeISO,
      "workflowVersionId": WorkflowUrn,
      "steps": [WorkflowStep],
      "triggers": [WorkflowTrigger],
      "template": WorkflowTemplate,
      "isLatestPublished": false
    }
  }
}

disableHubAndSpoke

Description

Disables Hub+Spoke on a source channel or install

Response

Returns an OkResult

Arguments
Name Description
settings - HubSpokeDisable!

Example

Query
mutation disableHubAndSpoke($settings: HubSpokeDisable!) {
  disableHubAndSpoke(settings: $settings) {
    ok
  }
}
Variables
{"settings": HubSpokeDisable}
Response
{"data": {"disableHubAndSpoke": {"ok": false}}}

dummyRegisterCondition

Description

Registers type

Response

Returns an OkResult

Arguments
Name Description
automaticFollowUp - WorkflowAutomaticFollowUp!
stepParameter - WorkflowStepKeyValueParameterInput!
approvalFormValue - ApprovalFormInput!
functionValue - WorkflowFunctionWithParameters!
conditionValue - WorkflowConditionMapping!
condition - WorkflowCondition!

Example

Query
mutation dummyRegisterCondition(
  $automaticFollowUp: WorkflowAutomaticFollowUp!,
  $stepParameter: WorkflowStepKeyValueParameterInput!,
  $approvalFormValue: ApprovalFormInput!,
  $functionValue: WorkflowFunctionWithParameters!,
  $conditionValue: WorkflowConditionMapping!,
  $condition: WorkflowCondition!
) {
  dummyRegisterCondition(
    automaticFollowUp: $automaticFollowUp,
    stepParameter: $stepParameter,
    approvalFormValue: $approvalFormValue,
    functionValue: $functionValue,
    conditionValue: $conditionValue,
    condition: $condition
  ) {
    ok
  }
}
Variables
{
  "automaticFollowUp": WorkflowAutomaticFollowUp,
  "stepParameter": WorkflowStepKeyValueParameterInput,
  "approvalFormValue": ApprovalFormInput,
  "functionValue": WorkflowFunctionWithParameters,
  "conditionValue": WorkflowConditionMapping,
  "condition": WorkflowCondition
}
Response
{"data": {"dummyRegisterCondition": {"ok": false}}}

editMessage

Description

Edits a message

Response

Returns an OkResult

Arguments
Name Description
message - TicketEditMessageInput!
ticketMessageId - TicketMessageUrn!

Example

Query
mutation editMessage(
  $message: TicketEditMessageInput!,
  $ticketMessageId: TicketMessageUrn!
) {
  editMessage(
    message: $message,
    ticketMessageId: $ticketMessageId
  ) {
    ok
  }
}
Variables
{
  "message": TicketEditMessageInput,
  "ticketMessageId": TicketMessageUrn
}
Response
{"data": {"editMessage": {"ok": false}}}

enableHubAndSpoke

Description

Enables Hub+Spoke on a source channel or install

Response

Returns an OkResult

Arguments
Name Description
settings - HubSpokeEnable!

Example

Query
mutation enableHubAndSpoke($settings: HubSpokeEnable!) {
  enableHubAndSpoke(settings: $settings) {
    ok
  }
}
Variables
{"settings": HubSpokeEnable}
Response
{"data": {"enableHubAndSpoke": {"ok": false}}}

endChats

Description

Ends a set of chats

Response

Returns an OkResult

Arguments
Name Description
chatEndMessages - [ChatEndInput!]!

Example

Query
mutation endChats($chatEndMessages: [ChatEndInput!]!) {
  endChats(chatEndMessages: $chatEndMessages) {
    ok
  }
}
Variables
{"chatEndMessages": [ChatEndInput]}
Response
{"data": {"endChats": {"ok": false}}}

executeDynamicFieldsOnForm

Description

Executes the creating automations on the form

Response

Returns a FormFieldExecuteDynamicFields

Arguments
Name Description
input - FormFieldExecuteDynamicFieldsInput! The input for the dynamic fields

Example

Query
mutation executeDynamicFieldsOnForm($input: FormFieldExecuteDynamicFieldsInput!) {
  executeDynamicFieldsOnForm(input: $input) {
    fields {
      ...FormFieldDescriptorFragment
    }
  }
}
Variables
{"input": FormFieldExecuteDynamicFieldsInput}
Response
{
  "data": {
    "executeDynamicFieldsOnForm": {
      "fields": [FormFieldDescriptor]
    }
  }
}

executeTicketAction

Description

Executes an custom ticket action.

Response

Returns an OkResult!

Arguments
Name Description
id - Urn Id of the ticket the action is being applied to. This should be a ticket id or a chat id.
action - TicketInput! Action input data.

Example

Query
mutation executeTicketAction(
  $id: Urn,
  $action: TicketInput!
) {
  executeTicketAction(
    id: $id,
    action: $action
  ) {
    ok
  }
}
Variables
{"id": Urn, "action": TicketInput}
Response
{"data": {"executeTicketAction": {"ok": false}}}

finishOnboarding

Description

Starts the onboarding script that sets up a bunch of resources.

Response

Returns an OkResult

Example

Query
mutation finishOnboarding {
  finishOnboarding {
    ok
  }
}
Response
{"data": {"finishOnboarding": {"ok": false}}}

generateMCPServerUrl

Description

MCP server unique url

Response

Returns an MCPServerUrl!

Arguments
Name Description
id - MCPServerUrn

Example

Query
mutation generateMCPServerUrl($id: MCPServerUrn) {
  generateMCPServerUrl(id: $id) {
    url
  }
}
Variables
{"id": MCPServerUrn}
Response
{
  "data": {
    "generateMCPServerUrl": {
      "url": "xyz789"
    }
  }
}

getIntegrationToken

Description

Creates a login token used for integration testing (disabled in production)

Response

Returns a TokenIntegrationToken!

Arguments
Name Description
input - TokenIntegrationInput The integration token options.

Example

Query
mutation getIntegrationToken($input: TokenIntegrationInput) {
  getIntegrationToken(input: $input) {
    token
  }
}
Variables
{"input": TokenIntegrationInput}
Response
{
  "data": {
    "getIntegrationToken": {
      "token": "abc123"
    }
  }
}

holdChats

Description

Puts chats into hold

Response

Returns an OkResult

Arguments
Name Description
options - HoldInput!
ids - [Urn!]!

Example

Query
mutation holdChats(
  $options: HoldInput!,
  $ids: [Urn!]!
) {
  holdChats(
    options: $options,
    ids: $ids
  ) {
    ok
  }
}
Variables
{"options": HoldInput, "ids": [Urn]}
Response
{"data": {"holdChats": {"ok": false}}}

ignoreChats

Description

Ignores a chat

Response

Returns an OkResult

Arguments
Name Description
ids - [Urn!]!

Example

Query
mutation ignoreChats($ids: [Urn!]!) {
  ignoreChats(ids: $ids) {
    ok
  }
}
Variables
{"ids": [Urn]}
Response
{"data": {"ignoreChats": {"ok": false}}}

integrationSaveSettings

Description

Saves integration settings.

Response

Returns an OkResult!

Arguments
Name Description
settings - IntegrationSettingsInput!

Example

Query
mutation integrationSaveSettings($settings: IntegrationSettingsInput!) {
  integrationSaveSettings(settings: $settings) {
    ok
  }
}
Variables
{"settings": IntegrationSettingsInput}
Response
{"data": {"integrationSaveSettings": {"ok": false}}}

integrationSubmit

Description

Submits the integration.

Response

Returns an OkResult!

Arguments
Name Description
form - IntergrationFormSubmit!
integrationId - IntegrationUrn!
chatId - Urn!

Example

Query
mutation integrationSubmit(
  $form: IntergrationFormSubmit!,
  $integrationId: IntegrationUrn!,
  $chatId: Urn!
) {
  integrationSubmit(
    form: $form,
    integrationId: $integrationId,
    chatId: $chatId
  ) {
    ok
  }
}
Variables
{
  "form": IntergrationFormSubmit,
  "integrationId": IntegrationUrn,
  "chatId": Urn
}
Response
{"data": {"integrationSubmit": {"ok": true}}}

integrationsMicrosoftTeamFinish

Description

Connects a microsoft token.

Response

Returns an OkResult!

Arguments
Name Description
settings - IntegrationSettingsMicrosoftTeamsAssociation!

Example

Query
mutation integrationsMicrosoftTeamFinish($settings: IntegrationSettingsMicrosoftTeamsAssociation!) {
  integrationsMicrosoftTeamFinish(settings: $settings) {
    ok
  }
}
Variables
{"settings": IntegrationSettingsMicrosoftTeamsAssociation}
Response
{"data": {"integrationsMicrosoftTeamFinish": {"ok": true}}}

leaveParticipant

Description

Removes the current user from participating in a chat.

Response

Returns an OkResult

Arguments
Name Description
participant - ChatLeaveParticipantInput!

Example

Query
mutation leaveParticipant($participant: ChatLeaveParticipantInput!) {
  leaveParticipant(participant: $participant) {
    ok
  }
}
Variables
{"participant": ChatLeaveParticipantInput}
Response
{"data": {"leaveParticipant": {"ok": true}}}

loginWithToken

Description

Allows a user to login with a password reset or new user token.

Response

Returns a LoginResult!

Arguments
Name Description
token - String!

Example

Query
mutation loginWithToken($token: String!) {
  loginWithToken(token: $token) {
    ... on LoginError {
      ...LoginErrorFragment
    }
    ... on Session {
      ...SessionFragment
    }
  }
}
Variables
{"token": "abc123"}
Response
{"data": {"loginWithToken": LoginError}}

logout

Description

Logs the user out and kills their current session.

Response

Returns an OkResult!

Example

Query
mutation logout {
  logout {
    ok
  }
}
Response
{"data": {"logout": {"ok": true}}}

markRead

Description

Marks a set of chats as read.

Response

Returns an OkResult!

Arguments
Name Description
chatIds - [Urn!]!

Example

Query
mutation markRead($chatIds: [Urn!]!) {
  markRead(chatIds: $chatIds) {
    ok
  }
}
Variables
{"chatIds": [Urn]}
Response
{"data": {"markRead": {"ok": true}}}

markUnread

Description

Marks a set of chats as unread.

Response

Returns an OkResult!

Arguments
Name Description
chatIds - [Urn!]!

Example

Query
mutation markUnread($chatIds: [Urn!]!) {
  markUnread(chatIds: $chatIds) {
    ok
  }
}
Variables
{"chatIds": [Urn]}
Response
{"data": {"markUnread": {"ok": false}}}

modifyUserGroupMembers

Description

Adds users to an existing group

Response

Returns an OkResult!

Arguments
Name Description
updates - UserGroupUpdateInput! The users groups

Example

Query
mutation modifyUserGroupMembers($updates: UserGroupUpdateInput!) {
  modifyUserGroupMembers(updates: $updates) {
    ok
  }
}
Variables
{"updates": UserGroupUpdateInput}
Response
{"data": {"modifyUserGroupMembers": {"ok": false}}}

publishArticle

Description

Publishes the article and makes it public.

Response

Returns an OkResult!

Arguments
Name Description
settings - ArticlePublishInput Publish settings
id - ArticleUrn The id of the article to publish.

Example

Query
mutation publishArticle(
  $settings: ArticlePublishInput,
  $id: ArticleUrn
) {
  publishArticle(
    settings: $settings,
    id: $id
  ) {
    ok
  }
}
Variables
{
  "settings": ArticlePublishInput,
  "id": ArticleUrn
}
Response
{"data": {"publishArticle": {"ok": false}}}

publishWorkflowVersion

Description

Returns the latest version of the given workflow.

Response

Returns an OkResult

Arguments
Name Description
versionId - WorkflowVersionUrn
id - WorkflowUrn

Example

Query
mutation publishWorkflowVersion(
  $versionId: WorkflowVersionUrn,
  $id: WorkflowUrn
) {
  publishWorkflowVersion(
    versionId: $versionId,
    id: $id
  ) {
    ok
  }
}
Variables
{
  "versionId": WorkflowVersionUrn,
  "id": WorkflowUrn
}
Response
{"data": {"publishWorkflowVersion": {"ok": true}}}

redactMessage

Description

Redacts a message by replacing the text with redacted text.

Response

Returns an OkResult

Arguments
Name Description
ticketMessageId - TicketMessageUrn!

Example

Query
mutation redactMessage($ticketMessageId: TicketMessageUrn!) {
  redactMessage(ticketMessageId: $ticketMessageId) {
    ok
  }
}
Variables
{"ticketMessageId": TicketMessageUrn}
Response
{"data": {"redactMessage": {"ok": false}}}

removeChannelTagFromChannels

Description

Adds a channel tag to a set of channels.

Response

Returns an OkResult

Arguments
Name Description
channelTag - ChannelTagModifyInput!

Example

Query
mutation removeChannelTagFromChannels($channelTag: ChannelTagModifyInput!) {
  removeChannelTagFromChannels(channelTag: $channelTag) {
    ok
  }
}
Variables
{"channelTag": ChannelTagModifyInput}
Response
{"data": {"removeChannelTagFromChannels": {"ok": false}}}

removeParticipants

Description

Removes participants to a chat

Response

Returns an OkResult

Arguments
Name Description
participants - [ChatRemoveParticipantInput!]!

Example

Query
mutation removeParticipants($participants: [ChatRemoveParticipantInput!]!) {
  removeParticipants(participants: $participants) {
    ok
  }
}
Variables
{"participants": [ChatRemoveParticipantInput]}
Response
{"data": {"removeParticipants": {"ok": true}}}

removeReaction

Description

Adds a reaction to a message

Response

Returns an OkResult

Arguments
Name Description
reaction - TicketMessageReactionInput!

Example

Query
mutation removeReaction($reaction: TicketMessageReactionInput!) {
  removeReaction(reaction: $reaction) {
    ok
  }
}
Variables
{"reaction": TicketMessageReactionInput}
Response
{"data": {"removeReaction": {"ok": true}}}

reopenChats

Description

Reopens the a chat after its been closed.

Response

Returns an OkResult

Arguments
Name Description
ids - [Urn!]!

Example

Query
mutation reopenChats($ids: [Urn!]!) {
  reopenChats(ids: $ids) {
    ok
  }
}
Variables
{"ids": [Urn]}
Response
{"data": {"reopenChats": {"ok": false}}}

runIntegration

Description

Runs the integration.

Response

Returns an IntegrationView

Arguments
Name Description
currentValues - [FieldTypedValueInput!]
source - DisplayFormSource Default = PORTAL
search - String
formId - Urn
integrationId - IntegrationUrn!
chatId - Urn!

Example

Query
mutation runIntegration(
  $currentValues: [FieldTypedValueInput!],
  $source: DisplayFormSource,
  $search: String,
  $formId: Urn,
  $integrationId: IntegrationUrn!,
  $chatId: Urn!
) {
  runIntegration(
    currentValues: $currentValues,
    source: $source,
    search: $search,
    formId: $formId,
    integrationId: $integrationId,
    chatId: $chatId
  ) {
    id
    title
    submit
    fields {
      ...FormFieldFragment
    }
  }
}
Variables
{
  "currentValues": [FieldTypedValueInput],
  "source": "PORTAL",
  "search": "xyz789",
  "formId": Urn,
  "integrationId": IntegrationUrn,
  "chatId": Urn
}
Response
{
  "data": {
    "runIntegration": {
      "id": IntegrationUrn,
      "title": "xyz789",
      "submit": "abc123",
      "fields": [FormField]
    }
  }
}

runWorkflowServiceAction

Description

Internal action used to test a workflow service action. Do not use this in production.

Response

Returns a WorkflowServiceTestResult!

Arguments
Name Description
input - WorkflowServiceTestInput!

Example

Query
mutation runWorkflowServiceAction($input: WorkflowServiceTestInput!) {
  runWorkflowServiceAction(input: $input) {
    data
    output
    logs {
      ...WorkflowServiceTestLogResultFragment
    }
  }
}
Variables
{"input": WorkflowServiceTestInput}
Response
{
  "data": {
    "runWorkflowServiceAction": {
      "data": Map,
      "output": [Map],
      "logs": [WorkflowServiceTestLogResult]
    }
  }
}

saveArticle

Description

Store an article by saving changes to an existing one or by creating a new article.

Response

Returns an Article!

Arguments
Name Description
article - ArticleInput! The article data to store.
id - ArticleUrn The id of the article if saving an update to an existing article.

Example

Query
mutation saveArticle(
  $article: ArticleInput!,
  $id: ArticleUrn
) {
  saveArticle(
    article: $article,
    id: $id
  ) {
    id
    type
    versionId
    isEditableVersion
    tags {
      ...ArticleTagFragment
    }
    title
    iconUrl
    body {
      ...RichBodyFragment
    }
    creatorId
    creator {
      ...UserFragment
    }
    portalId
    portal {
      ...PortalFragment
    }
    createdDate
    modifiedDate
    publishedDate
    publishedById
    publishedBy {
      ...UserFragment
    }
    previewText
    url
    sections {
      ...ArticleSectionFragment
    }
    draftCreatorId
    draftCreator {
      ...UserFragment
    }
    draftModifiedDate
    permissions {
      ...PermissionAssignmentFragment
    }
    currentUserPermission
    relatedArticles {
      ...ArticlePreviewFragment
    }
    feedback {
      ...ArticleFeedbackFragment
    }
    proposal {
      ...ArticleProposalFragment
    }
  }
}
Variables
{
  "article": ArticleInput,
  "id": ArticleUrn
}
Response
{
  "data": {
    "saveArticle": {
      "id": ArticleUrn,
      "type": "ARTICLE",
      "versionId": ArticleVersionUrn,
      "isEditableVersion": true,
      "tags": [ArticleTag],
      "title": "xyz789",
      "iconUrl": "abc123",
      "body": RichBody,
      "creatorId": Urn,
      "creator": User,
      "portalId": PortalUrn,
      "portal": Portal,
      "createdDate": DateTimeISO,
      "modifiedDate": DateTimeISO,
      "publishedDate": DateTimeISO,
      "publishedById": Urn,
      "publishedBy": User,
      "previewText": "abc123",
      "url": "xyz789",
      "sections": [ArticleSection],
      "draftCreatorId": Urn,
      "draftCreator": User,
      "draftModifiedDate": DateTimeISO,
      "permissions": [PermissionAssignment],
      "currentUserPermission": "EXECUTE",
      "relatedArticles": [ArticlePreview],
      "feedback": ArticleFeedback,
      "proposal": ArticleProposal
    }
  }
}

saveArticleTag

Description

Store an article by saving changes to an existing one or by creating a new article.

Response

Returns an ArticleTag!

Arguments
Name Description
articleTag - ArticleTagInput! The article data to store.
parentId - ArticleTagUrn The id of the parent article tag.
id - ArticleTagUrn The id of the article tag if saving an update to an existing article tag.

Example

Query
mutation saveArticleTag(
  $articleTag: ArticleTagInput!,
  $parentId: ArticleTagUrn,
  $id: ArticleTagUrn
) {
  saveArticleTag(
    articleTag: $articleTag,
    parentId: $parentId,
    id: $id
  ) {
    childIds
    title
    description
    iconUrl
    indexPageId
    id
  }
}
Variables
{
  "articleTag": ArticleTagInput,
  "parentId": ArticleTagUrn,
  "id": ArticleTagUrn
}
Response
{
  "data": {
    "saveArticleTag": {
      "childIds": [ArticleTagUrn],
      "title": "xyz789",
      "description": "abc123",
      "iconUrl": "xyz789",
      "indexPageId": ArticleUrn,
      "id": ArticleTagUrn
    }
  }
}

saveArtificialIntelligenceAgent

Description

Saves an AI Agent

Response

Returns an OkResult!

Arguments
Name Description
agent - ArtificialIntelligenceAgentInput!
id - ArtificialIntelligenceAgentUrn

Example

Query
mutation saveArtificialIntelligenceAgent(
  $agent: ArtificialIntelligenceAgentInput!,
  $id: ArtificialIntelligenceAgentUrn
) {
  saveArtificialIntelligenceAgent(
    agent: $agent,
    id: $id
  ) {
    ok
  }
}
Variables
{
  "agent": ArtificialIntelligenceAgentInput,
  "id": ArtificialIntelligenceAgentUrn
}
Response
{"data": {"saveArtificialIntelligenceAgent": {"ok": false}}}

saveArtificialIntelligenceSettings

Description

Creates an AI Summary of the conversation

Response

Returns an OkResult

Arguments
Name Description
settings - ArtificialIntelligenceSettingsInput!

Example

Query
mutation saveArtificialIntelligenceSettings($settings: ArtificialIntelligenceSettingsInput!) {
  saveArtificialIntelligenceSettings(settings: $settings) {
    ok
  }
}
Variables
{"settings": ArtificialIntelligenceSettingsInput}
Response
{"data": {"saveArtificialIntelligenceSettings": {"ok": true}}}

saveChannelInvite

Description

Creates a new channel invite or saves an existing one.

Response

Returns a ChannelInvite

Arguments
Name Description
invite - ChannelInviteInput! The invite settings.
id - ChannelInviteUrn The id of the channel invite

Example

Query
mutation saveChannelInvite(
  $invite: ChannelInviteInput!,
  $id: ChannelInviteUrn
) {
  saveChannelInvite(
    invite: $invite,
    id: $id
  ) {
    name
    channelNameTemplate
    introductionTemplate
    id
    settings {
      ...ChatSettingsFragment
    }
    description
  }
}
Variables
{
  "invite": ChannelInviteInput,
  "id": ChannelInviteUrn
}
Response
{
  "data": {
    "saveChannelInvite": {
      "name": "xyz789",
      "channelNameTemplate": "abc123",
      "introductionTemplate": "abc123",
      "id": ChannelInviteUrn,
      "settings": ChatSettings,
      "description": "xyz789"
    }
  }
}

saveChatSettings

Description

Saves changes to chat settings.

Response

Returns an OkResult!

Arguments
Name Description
settings - ChatSettingsInput! The id of the settings
id - Urn! The id of the chanel

Example

Query
mutation saveChatSettings(
  $settings: ChatSettingsInput!,
  $id: Urn!
) {
  saveChatSettings(
    settings: $settings,
    id: $id
  ) {
    ok
  }
}
Variables
{
  "settings": ChatSettingsInput,
  "id": Urn
}
Response
{"data": {"saveChatSettings": {"ok": true}}}

saveCompany

Description

Save an organization

Response

Returns a Company!

Arguments
Name Description
company - CompanyInput! The company data to store.
id - CompanyUrn The id of the company if saving an update to an existing company.

Example

Query
mutation saveCompany(
  $company: CompanyInput!,
  $id: CompanyUrn
) {
  saveCompany(
    company: $company,
    id: $id
  ) {
    id
    domain
    name
    deletedDate
  }
}
Variables
{
  "company": CompanyInput,
  "id": CompanyUrn
}
Response
{
  "data": {
    "saveCompany": {
      "id": CompanyUrn,
      "domain": "xyz789",
      "name": "xyz789",
      "deletedDate": DateTimeISO
    }
  }
}

saveDefaultQueue

Description

Saves the default queue

Response

Returns an OkResult!

Arguments
Name Description
id - QueueUrn The id of the default queue

Example

Query
mutation saveDefaultQueue($id: QueueUrn) {
  saveDefaultQueue(id: $id) {
    ok
  }
}
Variables
{"id": QueueUrn}
Response
{"data": {"saveDefaultQueue": {"ok": true}}}

saveForm

Description

Saves a custom form

Response

Returns a Form!

Arguments
Name Description
id - FormUrn The id of the form if modifying an existing one.
form - FormInput! The Form data

Example

Query
mutation saveForm(
  $id: FormUrn,
  $form: FormInput!
) {
  saveForm(
    id: $id,
    form: $form
  ) {
    name
    type
    description
    isCreatePrivate
    deflection {
      ...FormDeflectionSettingsFragment
    }
    externalFormId
    userGroupIds
    actionSettings {
      ...ActionSettingsFragment
    }
    tags
    jobFunctions
    iconUrl
    shouldCreateOnOnboarding
    permissions {
      ...PermissionAssignmentFragment
    }
    id
    fields {
      ...FormFieldDescriptorFragment
    }
    workflowId
    hasAutomation
    workflow {
      ...WorkflowFragment
    }
    exampleInput {
      ...FormWebhookExampleFragment
    }
    modifiedDate
    createdDate
    userGroups {
      ...WorkflowFragment
    }
    currentUserPermissions
  }
}
Variables
{"id": FormUrn, "form": FormInput}
Response
{
  "data": {
    "saveForm": {
      "name": "abc123",
      "type": "DEFAULT",
      "description": "xyz789",
      "isCreatePrivate": true,
      "deflection": FormDeflectionSettings,
      "externalFormId": FormExternalUrn,
      "userGroupIds": [UserGroupUrn],
      "actionSettings": ActionSettings,
      "tags": ["xyz789"],
      "jobFunctions": ["CUSTOMER_SUPPORT"],
      "iconUrl": "xyz789",
      "shouldCreateOnOnboarding": false,
      "permissions": [PermissionAssignment],
      "id": FormUrn,
      "fields": [FormFieldDescriptor],
      "workflowId": WorkflowUrn,
      "hasAutomation": true,
      "workflow": Workflow,
      "exampleInput": FormWebhookExample,
      "modifiedDate": DateTimeISO,
      "createdDate": DateTimeISO,
      "userGroups": Workflow,
      "currentUserPermissions": ["EXECUTE"]
    }
  }
}

saveFormField

Description

Creates a form field.

Response

Returns a FormField!

Arguments
Name Description
id - FormFieldUrn The id of the form field
formField - FormFieldInput! The Form field

Example

Query
mutation saveFormField(
  $id: FormFieldUrn,
  $formField: FormFieldInput!
) {
  saveFormField(
    id: $id,
    formField: $formField
  ) {
    id
    name
    placeholder
    isSystemField
    isRequired
    defaultValue {
      ...FieldTypedValueFragment
    }
    description
    type
    visibility
    options {
      ...FormFieldOptionFragment
    }
    optionsSettings {
      ...FormFieldOptionSettingsFragment
    }
    levels
    userGroupIds
    asyncObjectType
    isTemplate
    permissions {
      ...PermissionAssignmentFragment
    }
    currentUserPermissions
  }
}
Variables
{
  "id": FormFieldUrn,
  "formField": FormFieldInput
}
Response
{
  "data": {
    "saveFormField": {
      "id": Urn,
      "name": "abc123",
      "placeholder": "abc123",
      "isSystemField": true,
      "isRequired": true,
      "defaultValue": FieldTypedValue,
      "description": "abc123",
      "type": "TEXT",
      "visibility": "REUSABLE",
      "options": [FormFieldOption],
      "optionsSettings": FormFieldOptionSettings,
      "levels": ["abc123"],
      "userGroupIds": [UserGroupUrn],
      "asyncObjectType": "USER",
      "isTemplate": false,
      "permissions": [PermissionAssignment],
      "currentUserPermissions": ["EXECUTE"]
    }
  }
}

saveMCPServer

Description

Saves an MCP Server configuration

Response

Returns an OkResult!

Arguments
Name Description
settings - MCPServerInput!
id - MCPServerUrn

Example

Query
mutation saveMCPServer(
  $settings: MCPServerInput!,
  $id: MCPServerUrn
) {
  saveMCPServer(
    settings: $settings,
    id: $id
  ) {
    ok
  }
}
Variables
{
  "settings": MCPServerInput,
  "id": MCPServerUrn
}
Response
{"data": {"saveMCPServer": {"ok": false}}}

saveMetricsDashboard

Description

Stores a report.

Response

Returns a MetricsDashboard

Arguments
Name Description
input - MetricsDashboardInput!
id - MetricsDashboardUrn

Example

Query
mutation saveMetricsDashboard(
  $input: MetricsDashboardInput!,
  $id: MetricsDashboardUrn
) {
  saveMetricsDashboard(
    input: $input,
    id: $id
  ) {
    name
    settings {
      ...MetricsDashboardSettingsFragment
    }
    permissions {
      ...PermissionAssignmentFragment
    }
    id
    installationId
    creatorId
    creator {
      ...UserFragment
    }
    currentUserPermissionAction
  }
}
Variables
{
  "input": MetricsDashboardInput,
  "id": MetricsDashboardUrn
}
Response
{
  "data": {
    "saveMetricsDashboard": {
      "name": "abc123",
      "settings": MetricsDashboardSettings,
      "permissions": [PermissionAssignment],
      "id": MetricsDashboardUrn,
      "installationId": AppInstallUrn,
      "creatorId": Urn,
      "creator": User,
      "currentUserPermissionAction": "EXECUTE"
    }
  }
}

saveOnboardingProfile

Description

Adds an email alias and sends a email validation request..

Response

Returns an OnboardingProfile

Arguments
Name Description
profile - OnboardingProfileInput!

Example

Query
mutation saveOnboardingProfile($profile: OnboardingProfileInput!) {
  saveOnboardingProfile(profile: $profile) {
    jobFunction
    channelMode
    isEmojiEnabled
    shouldCreateDemoChannel
    isChannelMenuEnabled
    installedWorkflowServiceId
    isSelectedFoqalTicketing
    lastStep
    applicationIconUrl
    applicationName
    homeStepsCompleted
    stepsCompleted
    artificialIntelligenceWorkflowServiceId
    isExternalSupport
  }
}
Variables
{"profile": OnboardingProfileInput}
Response
{
  "data": {
    "saveOnboardingProfile": {
      "jobFunction": "CUSTOMER_SUPPORT",
      "channelMode": "THREADED",
      "isEmojiEnabled": false,
      "shouldCreateDemoChannel": false,
      "isChannelMenuEnabled": true,
      "installedWorkflowServiceId": WorkflowServiceUrn,
      "isSelectedFoqalTicketing": false,
      "lastStep": "PICK_ROLE",
      "applicationIconUrl": "xyz789",
      "applicationName": "xyz789",
      "homeStepsCompleted": ["abc123"],
      "stepsCompleted": ["abc123"],
      "artificialIntelligenceWorkflowServiceId": WorkflowServiceUrn,
      "isExternalSupport": true
    }
  }
}

savePortal

Description

Store an portal by saving changes to an existing one or by creating a new portal.

Response

Returns a Portal!

Arguments
Name Description
appInstallId - AppInstallUrn The id of the install this portal is associatd with.
companyId - CompanyUrn The id of the company this portal is associatd with.
portal - PortalSettingsInput! The article data to store.
id - PortalUrn The id of the portal if saving an update to an existing portal.

Example

Query
mutation savePortal(
  $appInstallId: AppInstallUrn,
  $companyId: CompanyUrn,
  $portal: PortalSettingsInput!,
  $id: PortalUrn
) {
  savePortal(
    appInstallId: $appInstallId,
    companyId: $companyId,
    portal: $portal,
    id: $id
  ) {
    id
    installationId
    title
    welcomeMessage
    chatToken
    permissions
    publicPermissions
    guestPermissions
    isSharedChannelGuest
    guestAnswerProviderId
    publicAnswerProviderId
    publicFormIds
    guestFormIds
    domains
    portalIndexProvider
    indexArticleId
    isAIEnabled
    billing {
      ...PortalBillingFragment
    }
    entitlementIds
    banner {
      ...PortalBannerFragment
    }
    singleSignOn {
      ...PortalSingleSignOnFragment
    }
    userProvisioning {
      ...PortalUserProvisioningFragment
    }
    signIn {
      ...PortalSigninSettingsFragment
    }
    aiFeatures {
      ...ArtificialIntelligenceSettingsFeaturesFragment
    }
    navigation {
      ...PortalSettingsNavigationFragment
    }
    unsafeDomain {
      ...PortalSettingsUnsafeDomainFragment
    }
  }
}
Variables
{
  "appInstallId": AppInstallUrn,
  "companyId": CompanyUrn,
  "portal": PortalSettingsInput,
  "id": PortalUrn
}
Response
{
  "data": {
    "savePortal": {
      "id": PortalUrn,
      "installationId": AppInstallUrn,
      "title": "abc123",
      "welcomeMessage": "abc123",
      "chatToken": "abc123",
      "permissions": ["SUPER_ADMIN"],
      "publicPermissions": ["SUPER_ADMIN"],
      "guestPermissions": ["SUPER_ADMIN"],
      "isSharedChannelGuest": true,
      "guestAnswerProviderId": Urn,
      "publicAnswerProviderId": Urn,
      "publicFormIds": [FormUrn],
      "guestFormIds": [FormUrn],
      "domains": ["xyz789"],
      "portalIndexProvider": "OPEN_AI",
      "indexArticleId": ArticleUrn,
      "isAIEnabled": true,
      "billing": PortalBilling,
      "entitlementIds": [PlanEntitlementUrn],
      "banner": PortalBanner,
      "singleSignOn": PortalSingleSignOn,
      "userProvisioning": PortalUserProvisioning,
      "signIn": PortalSigninSettings,
      "aiFeatures": ArtificialIntelligenceSettingsFeatures,
      "navigation": PortalSettingsNavigation,
      "unsafeDomain": PortalSettingsUnsafeDomain
    }
  }
}

saveQueue

Description

Saves the queue

Response

Returns a Queue!

Arguments
Name Description
id - QueueUrn The id of the queue if modifying an existing one.
queue - QueueInput! The queue

Example

Query
mutation saveQueue(
  $id: QueueUrn,
  $queue: QueueInput!
) {
  saveQueue(
    id: $id,
    queue: $queue
  ) {
    name
    description
    channelTags
    userAssignmentType
    integrationIds
    emailAliasIds
    permissions {
      ...PermissionAssignmentFragment
    }
    id
    members {
      ...QueueMemberFragment
    }
    isDefault
    currentUserPermissions
  }
}
Variables
{
  "id": QueueUrn,
  "queue": QueueInput
}
Response
{
  "data": {
    "saveQueue": {
      "name": "xyz789",
      "description": "xyz789",
      "channelTags": ["abc123"],
      "userAssignmentType": "NONE",
      "integrationIds": [IntegrationUrn],
      "emailAliasIds": [ChannelEmailUrn],
      "permissions": [PermissionAssignment],
      "id": QueueUrn,
      "members": [QueueMember],
      "isDefault": false,
      "currentUserPermissions": ["EXECUTE"]
    }
  }
}

saveSettings

Description

Stores agent ticket settings.

Response

Returns an OkResult

Arguments
Name Description
groupAdmins - SettingsGroupAdminsInput
artificialIntelligence - SettingsArtificialIntelligenceInput
channelWebChat - SettingsChannelWebChatInput
channelEmail - SettingsChannelEmailInput
channelSlack - SettingsChannelSlackInput
identities - [Urn!]
sla - SettingsSLAInput
channels - SettingsChannelsInput
time - SettingsTimeInput
customization - SettingsCustomizationInput
feedback - FeedbackInput

Example

Query
mutation saveSettings(
  $groupAdmins: SettingsGroupAdminsInput,
  $artificialIntelligence: SettingsArtificialIntelligenceInput,
  $channelWebChat: SettingsChannelWebChatInput,
  $channelEmail: SettingsChannelEmailInput,
  $channelSlack: SettingsChannelSlackInput,
  $identities: [Urn!],
  $sla: SettingsSLAInput,
  $channels: SettingsChannelsInput,
  $time: SettingsTimeInput,
  $customization: SettingsCustomizationInput,
  $feedback: FeedbackInput
) {
  saveSettings(
    groupAdmins: $groupAdmins,
    artificialIntelligence: $artificialIntelligence,
    channelWebChat: $channelWebChat,
    channelEmail: $channelEmail,
    channelSlack: $channelSlack,
    identities: $identities,
    sla: $sla,
    channels: $channels,
    time: $time,
    customization: $customization,
    feedback: $feedback
  ) {
    ok
  }
}
Variables
{
  "groupAdmins": SettingsGroupAdminsInput,
  "artificialIntelligence": SettingsArtificialIntelligenceInput,
  "channelWebChat": SettingsChannelWebChatInput,
  "channelEmail": SettingsChannelEmailInput,
  "channelSlack": SettingsChannelSlackInput,
  "identities": [Urn],
  "sla": SettingsSLAInput,
  "channels": SettingsChannelsInput,
  "time": SettingsTimeInput,
  "customization": SettingsCustomizationInput,
  "feedback": FeedbackInput
}
Response
{"data": {"saveSettings": {"ok": true}}}

saveTicket

Description

Creates a ticket associated with the current user and portal.

Response

Returns a Ticket!

Arguments
Name Description
id - TicketUrn
ticket - TicketInput!

Example

Query
mutation saveTicket(
  $id: TicketUrn,
  $ticket: TicketInput!
) {
  saveTicket(
    id: $id,
    ticket: $ticket
  ) {
    id
    ticketNumber
    chatId
    subject
    description
    createdDate
    modifiedDate
    closedDate
    assignedDate
    firstResponseDate
    lastResponseDate
    currentUserLastReadDate
    hasUnreadByCurrentUser
    tags
    status
    severityIndex
    priority
    creatorId
    creator {
      ...UserFragment
    }
    assigneeId
    assignee {
      ...UserFragment
    }
    messages {
      ...TicketMessageFragment
    }
    customFields {
      ...CustomFieldFragment
    }
    formId
    form {
      ...FormFragment
    }
    ticketStateId
    state {
      ...TicketStateFragment
    }
    tasks {
      ...TicketTaskFragment
    }
    queueId
    queue {
      ...QueueFragment
    }
    requestorId
    requestor {
      ...UserFragment
    }
    dueDates {
      ...TicketDueDateFragment
    }
    customContextValues {
      ...TicketCustomContextValueFragment
    }
    messageCount
    source {
      ...ChatSourceFragment
    }
    artificialIntelligence {
      ...ArtificialIntelligenceValuesFragment
    }
  }
}
Variables
{
  "id": TicketUrn,
  "ticket": TicketInput
}
Response
{
  "data": {
    "saveTicket": {
      "id": TicketUrn,
      "ticketNumber": 123.45,
      "chatId": Urn,
      "subject": "xyz789",
      "description": "xyz789",
      "createdDate": DateTimeISO,
      "modifiedDate": DateTimeISO,
      "closedDate": DateTimeISO,
      "assignedDate": DateTimeISO,
      "firstResponseDate": DateTimeISO,
      "lastResponseDate": DateTimeISO,
      "currentUserLastReadDate": DateTimeISO,
      "hasUnreadByCurrentUser": false,
      "tags": ["xyz789"],
      "status": "OPEN",
      "severityIndex": 123.45,
      "priority": "CRITICAL",
      "creatorId": Urn,
      "creator": User,
      "assigneeId": Urn,
      "assignee": User,
      "messages": [TicketMessage],
      "customFields": [CustomField],
      "formId": Urn,
      "form": Form,
      "ticketStateId": TicketStateUrn,
      "state": TicketState,
      "tasks": [TicketTask],
      "queueId": QueueUrn,
      "queue": Queue,
      "requestorId": Urn,
      "requestor": User,
      "dueDates": [TicketDueDate],
      "customContextValues": [TicketCustomContextValue],
      "messageCount": 987.65,
      "source": ChatSource,
      "artificialIntelligence": ArtificialIntelligenceValues
    }
  }
}

saveTicketNote

Description

stores a ticket note

Response

Returns a TicketMessage

Arguments
Name Description
message - TicketNoteInput!
chatId - Urn!

Example

Query
mutation saveTicketNote(
  $message: TicketNoteInput!,
  $chatId: Urn!
) {
  saveTicketNote(
    message: $message,
    chatId: $chatId
  ) {
    id
    type
    ticketId
    createdDate
    creatorId
    messageIds
    creator {
      ...UserFragment
    }
    body {
      ...RichBodyFragment
    }
    originalBody {
      ...RichBodyFragment
    }
    isDeleted
    redactedDate
    reactions {
      ...TicketMessageReactionFragment
    }
    attachments {
      ...TicketMessageAttachmentFragment
    }
    articles {
      ...TicketMessageArticleFragment
    }
    schedule {
      ...TicketMessageScheduleFragment
    }
    status {
      ...TicketMessageStatusFragment
    }
    extensions {
      ...TicketMessageExtensionsFragment
    }
  }
}
Variables
{
  "message": TicketNoteInput,
  "chatId": Urn
}
Response
{
  "data": {
    "saveTicketNote": {
      "id": TicketMessageUrn,
      "type": "USER_MESSAGE",
      "ticketId": TicketUrn,
      "createdDate": DateTimeISO,
      "creatorId": Urn,
      "messageIds": [Urn],
      "creator": User,
      "body": RichBody,
      "originalBody": RichBody,
      "isDeleted": true,
      "redactedDate": DateTimeISO,
      "reactions": [TicketMessageReaction],
      "attachments": [TicketMessageAttachment],
      "articles": [TicketMessageArticle],
      "schedule": TicketMessageSchedule,
      "status": TicketMessageStatus,
      "extensions": TicketMessageExtensions
    }
  }
}

saveTicketState

Description

Adds a ticket message or comment to the given ticket.

Response

Returns a TicketState!

Arguments
Name Description
id - TicketStateUrn
state - TicketStateInput!

Example

Query
mutation saveTicketState(
  $id: TicketStateUrn,
  $state: TicketStateInput!
) {
  saveTicketState(
    id: $id,
    state: $state
  ) {
    name
    description
    ticketStatuses
    chatStatuses
    isDefault
    id
  }
}
Variables
{
  "id": TicketStateUrn,
  "state": TicketStateInput
}
Response
{
  "data": {
    "saveTicketState": {
      "name": "xyz789",
      "description": "abc123",
      "ticketStatuses": ["OPEN"],
      "chatStatuses": ["CONNECTED"],
      "isDefault": false,
      "id": TicketStateUrn
    }
  }
}

saveTicketStateStatus

Description

Updates the ticket task status

Response

Returns an OkResult!

Arguments
Name Description
state - TicketTaskState!
id - TicketTaskUrn!

Example

Query
mutation saveTicketStateStatus(
  $state: TicketTaskState!,
  $id: TicketTaskUrn!
) {
  saveTicketStateStatus(
    state: $state,
    id: $id
  ) {
    ok
  }
}
Variables
{"state": "OPEN", "id": TicketTaskUrn}
Response
{"data": {"saveTicketStateStatus": {"ok": false}}}

saveTicketTask

Description

Creates or saves a ticket task

Response

Returns a TicketTask!

Arguments
Name Description
task - TicketTaskInput!
id - TicketTaskUrn The id of the task if modifying an existing one.

Example

Query
mutation saveTicketTask(
  $task: TicketTaskInput!,
  $id: TicketTaskUrn
) {
  saveTicketTask(
    task: $task,
    id: $id
  ) {
    ticketId
    name
    description
    dueDate
    assigneeId
    status
    id
    assignee {
      ...UserFragment
    }
    isAssignedToCurrentUser
    createdDate
    modifiedDate
  }
}
Variables
{
  "task": TicketTaskInput,
  "id": TicketTaskUrn
}
Response
{
  "data": {
    "saveTicketTask": {
      "ticketId": TicketUrn,
      "name": "abc123",
      "description": "xyz789",
      "dueDate": DateTimeISO,
      "assigneeId": Urn,
      "status": "OPEN",
      "id": TicketTaskUrn,
      "assignee": User,
      "isAssignedToCurrentUser": false,
      "createdDate": DateTimeISO,
      "modifiedDate": DateTimeISO
    }
  }
}

saveUser

Description

Creates a ticket associated with the current user and portal.

Response

Returns a User!

Arguments
Name Description
id - Urn
user - UserInput!

Example

Query
mutation saveUser(
  $id: Urn,
  $user: UserInput!
) {
  saveUser(
    id: $id,
    user: $user
  ) {
    id
    aliasIds
    name
    firstName
    lastName
    emailAddresses
    avatarUrl
    isVerified
    isCurrentlyLoggedInUser
    group
    userGroups {
      ...UserGroupFragment
    }
    role
    loginType
    organizationId
    organization {
      ...CompanyFragment
    }
    handles {
      ...UserHandleFragment
    }
  }
}
Variables
{"id": Urn, "user": UserInput}
Response
{
  "data": {
    "saveUser": {
      "id": Urn,
      "aliasIds": [Urn],
      "name": "xyz789",
      "firstName": "abc123",
      "lastName": "abc123",
      "emailAddresses": ["abc123"],
      "avatarUrl": "abc123",
      "isVerified": false,
      "isCurrentlyLoggedInUser": true,
      "group": "abc123",
      "userGroups": [UserGroup],
      "role": "AGENT",
      "loginType": "NONE",
      "organizationId": CompanyUrn,
      "organization": Company,
      "handles": [UserHandle]
    }
  }
}

saveUserGroup

Description

Saves the group

Response

Returns a UserGroup!

Arguments
Name Description
id - UserGroupUrn The id of the group if modifying an existing one.
userGroup - UserGroupInput! The user group

Example

Query
mutation saveUserGroup(
  $id: UserGroupUrn,
  $userGroup: UserGroupInput!
) {
  saveUserGroup(
    id: $id,
    userGroup: $userGroup
  ) {
    name
    description
    profile {
      ...UserGroupProfileFragment
    }
    userIds
    administratorUserIds
    id
    users {
      ...UserFragment
    }
    administrators {
      ...UserFragment
    }
  }
}
Variables
{
  "id": UserGroupUrn,
  "userGroup": UserGroupInput
}
Response
{
  "data": {
    "saveUserGroup": {
      "name": "xyz789",
      "description": "abc123",
      "profile": UserGroupProfile,
      "userIds": [Urn],
      "administratorUserIds": [Urn],
      "id": UserGroupUrn,
      "users": [User],
      "administrators": [User]
    }
  }
}

saveUserLastOpenedDashboardId

Description

Stores portal settings.

Response

Returns an OkResult!

Arguments
Name Description
settings - UserPortalSettingsOpenedDashboardInput! The user settings

Example

Query
mutation saveUserLastOpenedDashboardId($settings: UserPortalSettingsOpenedDashboardInput!) {
  saveUserLastOpenedDashboardId(settings: $settings) {
    ok
  }
}
Variables
{"settings": UserPortalSettingsOpenedDashboardInput}
Response
{"data": {"saveUserLastOpenedDashboardId": {"ok": true}}}

saveUserPortalSettings

Description

Stores portal settings.

Response

Returns an OkResult!

Arguments
Name Description
settings - UserPortalSettingsInput! The user settings

Example

Query
mutation saveUserPortalSettings($settings: UserPortalSettingsInput!) {
  saveUserPortalSettings(settings: $settings) {
    ok
  }
}
Variables
{"settings": UserPortalSettingsInput}
Response
{"data": {"saveUserPortalSettings": {"ok": true}}}

saveUserSettings

Description

Stores settings associated with this user.

Response

Returns a UserSettings!

Arguments
Name Description
settings - UserSettingsInput!

Example

Query
mutation saveUserSettings($settings: UserSettingsInput!) {
  saveUserSettings(settings: $settings) {
    assignmentPreference
    sounds {
      ...UserSoundSettingsFragment
    }
    userFlags
  }
}
Variables
{"settings": UserSettingsInput}
Response
{
  "data": {
    "saveUserSettings": {
      "assignmentPreference": "AVAILABLE",
      "sounds": UserSoundSettings,
      "userFlags": Map
    }
  }
}

saveWorkflow

Description

Returns the latest version of the given workflow.

Response

Returns a Workflow

Arguments
Name Description
workflow - WorkflowInput!
referenceId - Urn
id - WorkflowUrn

Example

Query
mutation saveWorkflow(
  $workflow: WorkflowInput!,
  $referenceId: Urn,
  $id: WorkflowUrn
) {
  saveWorkflow(
    workflow: $workflow,
    referenceId: $referenceId,
    id: $id
  ) {
    name
    description
    iconUrl
    id
    createdDate
    modifiedDate
    workflowVersionId
    steps {
      ...WorkflowStepFragment
    }
    triggers {
      ...WorkflowTriggerFragment
    }
    template {
      ...WorkflowTemplateFragment
    }
    isLatestPublished
  }
}
Variables
{
  "workflow": WorkflowInput,
  "referenceId": Urn,
  "id": WorkflowUrn
}
Response
{
  "data": {
    "saveWorkflow": {
      "name": "xyz789",
      "description": "xyz789",
      "iconUrl": "xyz789",
      "id": WorkflowUrn,
      "createdDate": DateTimeISO,
      "modifiedDate": DateTimeISO,
      "workflowVersionId": WorkflowUrn,
      "steps": [WorkflowStep],
      "triggers": [WorkflowTrigger],
      "template": WorkflowTemplate,
      "isLatestPublished": true
    }
  }
}

saveWorkspaceEvents

Description

Stores the list of event types.

Response

Returns an OkResult

Arguments
Name Description
events - [WorkspaceEventInput!]!

Example

Query
mutation saveWorkspaceEvents($events: [WorkspaceEventInput!]!) {
  saveWorkspaceEvents(events: $events) {
    ok
  }
}
Variables
{"events": [WorkspaceEventInput]}
Response
{"data": {"saveWorkspaceEvents": {"ok": true}}}

sendChannelInvite

Description

Sends a channel invite to the specified email.

Response

Returns an OkResult

Arguments
Name Description
invite - SendChannelInviteInput!

Example

Query
mutation sendChannelInvite($invite: SendChannelInviteInput!) {
  sendChannelInvite(invite: $invite) {
    ok
  }
}
Variables
{"invite": SendChannelInviteInput}
Response
{"data": {"sendChannelInvite": {"ok": true}}}

sendMessage

Description

Sends a message

Response

Returns a TicketMessage

Arguments
Name Description
message - TicketMessageInput!
chatId - Urn!

Example

Query
mutation sendMessage(
  $message: TicketMessageInput!,
  $chatId: Urn!
) {
  sendMessage(
    message: $message,
    chatId: $chatId
  ) {
    id
    type
    ticketId
    createdDate
    creatorId
    messageIds
    creator {
      ...UserFragment
    }
    body {
      ...RichBodyFragment
    }
    originalBody {
      ...RichBodyFragment
    }
    isDeleted
    redactedDate
    reactions {
      ...TicketMessageReactionFragment
    }
    attachments {
      ...TicketMessageAttachmentFragment
    }
    articles {
      ...TicketMessageArticleFragment
    }
    schedule {
      ...TicketMessageScheduleFragment
    }
    status {
      ...TicketMessageStatusFragment
    }
    extensions {
      ...TicketMessageExtensionsFragment
    }
  }
}
Variables
{
  "message": TicketMessageInput,
  "chatId": Urn
}
Response
{
  "data": {
    "sendMessage": {
      "id": TicketMessageUrn,
      "type": "USER_MESSAGE",
      "ticketId": TicketUrn,
      "createdDate": DateTimeISO,
      "creatorId": Urn,
      "messageIds": [Urn],
      "creator": User,
      "body": RichBody,
      "originalBody": RichBody,
      "isDeleted": false,
      "redactedDate": DateTimeISO,
      "reactions": [TicketMessageReaction],
      "attachments": [TicketMessageAttachment],
      "articles": [TicketMessageArticle],
      "schedule": TicketMessageSchedule,
      "status": TicketMessageStatus,
      "extensions": TicketMessageExtensions
    }
  }
}

sendMessages

Description

Sends multiple messages

Response

Returns [TicketMessage!]!

Arguments
Name Description
message - TicketMessageInput!
chatIds - [Urn!]!

Example

Query
mutation sendMessages(
  $message: TicketMessageInput!,
  $chatIds: [Urn!]!
) {
  sendMessages(
    message: $message,
    chatIds: $chatIds
  ) {
    id
    type
    ticketId
    createdDate
    creatorId
    messageIds
    creator {
      ...UserFragment
    }
    body {
      ...RichBodyFragment
    }
    originalBody {
      ...RichBodyFragment
    }
    isDeleted
    redactedDate
    reactions {
      ...TicketMessageReactionFragment
    }
    attachments {
      ...TicketMessageAttachmentFragment
    }
    articles {
      ...TicketMessageArticleFragment
    }
    schedule {
      ...TicketMessageScheduleFragment
    }
    status {
      ...TicketMessageStatusFragment
    }
    extensions {
      ...TicketMessageExtensionsFragment
    }
  }
}
Variables
{
  "message": TicketMessageInput,
  "chatIds": [Urn]
}
Response
{
  "data": {
    "sendMessages": [
      {
        "id": TicketMessageUrn,
        "type": "USER_MESSAGE",
        "ticketId": TicketUrn,
        "createdDate": DateTimeISO,
        "creatorId": Urn,
        "messageIds": [Urn],
        "creator": User,
        "body": RichBody,
        "originalBody": RichBody,
        "isDeleted": true,
        "redactedDate": DateTimeISO,
        "reactions": [TicketMessageReaction],
        "attachments": [TicketMessageAttachment],
        "articles": [TicketMessageArticle],
        "schedule": TicketMessageSchedule,
        "status": TicketMessageStatus,
        "extensions": TicketMessageExtensions
      }
    ]
  }
}

sendSupportSlackConnectChannel

Description

Sends a slack connect email to the user on file. This can be only done once per installation.

Response

Returns a SupportChannel

Example

Query
mutation sendSupportSlackConnectChannel {
  sendSupportSlackConnectChannel {
    name
    url
    isAccepted
  }
}
Response
{
  "data": {
    "sendSupportSlackConnectChannel": {
      "name": "xyz789",
      "url": "xyz789",
      "isAccepted": true
    }
  }
}

setIndexArticle

Description

Sets the default article that will be the first one seen

Response

Returns an OkResult!

Arguments
Name Description
id - ArticleUrn The id of the article default.

Example

Query
mutation setIndexArticle($id: ArticleUrn) {
  setIndexArticle(id: $id) {
    ok
  }
}
Variables
{"id": ArticleUrn}
Response
{"data": {"setIndexArticle": {"ok": false}}}

setUsersRole

Description

Sets a role for the set of users.

Response

Returns an OkResult

Arguments
Name Description
role - UserRole!
ids - [Urn!]!

Example

Query
mutation setUsersRole(
  $role: UserRole!,
  $ids: [Urn!]!
) {
  setUsersRole(
    role: $role,
    ids: $ids
  ) {
    ok
  }
}
Variables
{"role": "AGENT", "ids": [Urn]}
Response
{"data": {"setUsersRole": {"ok": true}}}

snoozeChats

Description

Snoozes a chat for a certain amount of time

Response

Returns an OkResult

Arguments
Name Description
options - SnoozeInput!
ids - [Urn!]!

Example

Query
mutation snoozeChats(
  $options: SnoozeInput!,
  $ids: [Urn!]!
) {
  snoozeChats(
    options: $options,
    ids: $ids
  ) {
    ok
  }
}
Variables
{
  "options": SnoozeInput,
  "ids": [Urn]
}
Response
{"data": {"snoozeChats": {"ok": true}}}

startChat

Description

Sends a message to one or more channels

Response

Returns an OkResult

Arguments
Name Description
message - StartChatInput!

Example

Query
mutation startChat($message: StartChatInput!) {
  startChat(message: $message) {
    ok
  }
}
Variables
{"message": StartChatInput}
Response
{"data": {"startChat": {"ok": false}}}

storeLogs

Description

Stores a log message

Response

Returns an OkResult!

Arguments
Name Description
logs - LogsInput! The log input.

Example

Query
mutation storeLogs($logs: LogsInput!) {
  storeLogs(logs: $logs) {
    ok
  }
}
Variables
{"logs": LogsInput}
Response
{"data": {"storeLogs": {"ok": true}}}

storeMessageDraft

Description

Sends a message

Response

Returns a TicketMessage

Arguments
Name Description
message - TicketMessageInput!
chatId - Urn!

Example

Query
mutation storeMessageDraft(
  $message: TicketMessageInput!,
  $chatId: Urn!
) {
  storeMessageDraft(
    message: $message,
    chatId: $chatId
  ) {
    id
    type
    ticketId
    createdDate
    creatorId
    messageIds
    creator {
      ...UserFragment
    }
    body {
      ...RichBodyFragment
    }
    originalBody {
      ...RichBodyFragment
    }
    isDeleted
    redactedDate
    reactions {
      ...TicketMessageReactionFragment
    }
    attachments {
      ...TicketMessageAttachmentFragment
    }
    articles {
      ...TicketMessageArticleFragment
    }
    schedule {
      ...TicketMessageScheduleFragment
    }
    status {
      ...TicketMessageStatusFragment
    }
    extensions {
      ...TicketMessageExtensionsFragment
    }
  }
}
Variables
{
  "message": TicketMessageInput,
  "chatId": Urn
}
Response
{
  "data": {
    "storeMessageDraft": {
      "id": TicketMessageUrn,
      "type": "USER_MESSAGE",
      "ticketId": TicketUrn,
      "createdDate": DateTimeISO,
      "creatorId": Urn,
      "messageIds": [Urn],
      "creator": User,
      "body": RichBody,
      "originalBody": RichBody,
      "isDeleted": true,
      "redactedDate": DateTimeISO,
      "reactions": [TicketMessageReaction],
      "attachments": [TicketMessageAttachment],
      "articles": [TicketMessageArticle],
      "schedule": TicketMessageSchedule,
      "status": TicketMessageStatus,
      "extensions": TicketMessageExtensions
    }
  }
}

subscribe

Description

Gets a token and url for the socket.

Response

Returns a SessionSocketConnection!

Example

Query
mutation subscribe {
  subscribe {
    sessionToken
    socketUrl
  }
}
Response
{
  "data": {
    "subscribe": {
      "sessionToken": "xyz789",
      "socketUrl": "abc123"
    }
  }
}

unholdChats

Description

Removes chats from hold

Response

Returns an OkResult

Arguments
Name Description
options - HoldInput!
ids - [Urn!]!

Example

Query
mutation unholdChats(
  $options: HoldInput!,
  $ids: [Urn!]!
) {
  unholdChats(
    options: $options,
    ids: $ids
  ) {
    ok
  }
}
Variables
{"options": HoldInput, "ids": [Urn]}
Response
{"data": {"unholdChats": {"ok": false}}}

unpublishArticle

Description

Unpublishes an already published article and makes it private.

Response

Returns an OkResult!

Arguments
Name Description
id - ArticleUrn The id of the article to unpublish.

Example

Query
mutation unpublishArticle($id: ArticleUrn) {
  unpublishArticle(id: $id) {
    ok
  }
}
Variables
{"id": ArticleUrn}
Response
{"data": {"unpublishArticle": {"ok": true}}}

unsafeDomainLoginUrl

Description

Creates a one time login url for the unsafe domain.

Response

Returns an UnsafeDomainLogin!

Example

Query
mutation unsafeDomainLoginUrl {
  unsafeDomainLoginUrl {
    url
  }
}
Response
{
  "data": {
    "unsafeDomainLoginUrl": {
      "url": "abc123"
    }
  }
}

unsnoozeChats

Description

Unsnoozes the chat right away.

Response

Returns an OkResult

Arguments
Name Description
options - SnoozeInput!
ids - [Urn!]!

Example

Query
mutation unsnoozeChats(
  $options: SnoozeInput!,
  $ids: [Urn!]!
) {
  unsnoozeChats(
    options: $options,
    ids: $ids
  ) {
    ok
  }
}
Variables
{
  "options": SnoozeInput,
  "ids": [Urn]
}
Response
{"data": {"unsnoozeChats": {"ok": true}}}

updateArticleType

Description

Changes the type of an article.

Response

Returns an OkResult!

Arguments
Name Description
change - ArticleChangeTypeInput Change Settings
id - ArticleUrn The id of the article to publish.

Example

Query
mutation updateArticleType(
  $change: ArticleChangeTypeInput,
  $id: ArticleUrn
) {
  updateArticleType(
    change: $change,
    id: $id
  ) {
    ok
  }
}
Variables
{
  "change": ArticleChangeTypeInput,
  "id": ArticleUrn
}
Response
{"data": {"updateArticleType": {"ok": false}}}

updateDashboard

Description

Creates a ticket associated with the current user and portal.

Response

Returns an OkResult!

Arguments
Name Description
id - DashboardUrn The id of the dashboard
dashboard - DashboardInput! The id of the dashboard

Example

Query
mutation updateDashboard(
  $id: DashboardUrn,
  $dashboard: DashboardInput!
) {
  updateDashboard(
    id: $id,
    dashboard: $dashboard
  ) {
    ok
  }
}
Variables
{
  "id": DashboardUrn,
  "dashboard": DashboardInput
}
Response
{"data": {"updateDashboard": {"ok": false}}}

workflowServiceCreateWebhook

Description

Signs a webhook url based on the workflow step.

Response

Returns a WorkflowServiceSignedWebhook!

Arguments
Name Description
properties - WorkflowServiceWebhookRequest
stepId - WorkflowStepUrn!

Example

Query
mutation workflowServiceCreateWebhook(
  $properties: WorkflowServiceWebhookRequest,
  $stepId: WorkflowStepUrn!
) {
  workflowServiceCreateWebhook(
    properties: $properties,
    stepId: $stepId
  ) {
    url
  }
}
Variables
{
  "properties": WorkflowServiceWebhookRequest,
  "stepId": WorkflowStepUrn
}
Response
{
  "data": {
    "workflowServiceCreateWebhook": {
      "url": "abc123"
    }
  }
}

workflowServiceInstall

Description

Installs the workflow service.

Response

Returns a WorkflowServiceInstallResult!

Arguments
Name Description
install - WorkflowServiceInstallInput!

Example

Query
mutation workflowServiceInstall($install: WorkflowServiceInstallInput!) {
  workflowServiceInstall(install: $install) {
    ok
    redirectUrl
    integrationId
  }
}
Variables
{"install": WorkflowServiceInstallInput}
Response
{
  "data": {
    "workflowServiceInstall": {
      "ok": false,
      "redirectUrl": "xyz789",
      "integrationId": IntegrationUrn
    }
  }
}

workflowServiceUninstall

Description

Removes the workflow service.

Response

Returns an OkResult!

Arguments
Name Description
integrationId - IntegrationUrn!

Example

Query
mutation workflowServiceUninstall($integrationId: IntegrationUrn!) {
  workflowServiceUninstall(integrationId: $integrationId) {
    ok
  }
}
Variables
{"integrationId": IntegrationUrn}
Response
{"data": {"workflowServiceUninstall": {"ok": false}}}

Types

AIAgentType

Description

The type of agent

Values
Enum Value Description

FIND_ANSWER

Find the answer

DEFLECTION

Example
"FIND_ANSWER"

Action

Fields
Field Name Description
feedback - ActionFeedback
deflection - ActionDeflection
Example
{
  "feedback": ActionFeedback,
  "deflection": ActionDeflection
}

ActionContextType

Description

What type of context is this action running in?

Values
Enum Value Description

TICKET

Action is performed in the context of a ticket.

REQUEST

Action is performed in the context of a request.

WEBHOOK

Action is performed in the context of a webhook trigger.

WORKSPACE

Action is performed in the context of a workspace-wide event.

GENERIC_NO_TICKET

Action is performed in a generic context, not tied to a ticket.

EXECUTE_TICKET_ACTION

Action is executed as a ticket action (legacy or advanced use).

AI_READ_TOOL

Action is performed as an AI tool (read operations).

AI_WRITE_TOOL

Action is performed as an AI tool (write operations).
Example
"TICKET"

ActionDeflection

Fields
Field Name Description
isSuccessful - Boolean!
Example
{"isSuccessful": false}

ActionExecuteStartCondition

Description

Condition controlling when an action is allowed to execute

Values
Enum Value Description

AFTER_STARTED

BEFORE_OR_AFTER_STARTED

Example
"AFTER_STARTED"

ActionFeedback

Fields
Field Name Description
type - FeedbackType!
selectedIndex - Float!
isCommentAllowed - Boolean!
responseMessage - String
Example
{
  "type": "NONE",
  "selectedIndex": 987.65,
  "isCommentAllowed": true,
  "responseMessage": "xyz789"
}

ActionFunction

Description

The function to execute.

Values
Enum Value Description

REGEXP_MATCH

SUBSTRING

REPLACE

DATE_FORMAT

UPPER_CASE

LOWER_CASE

CAPITAL_CASE

PAD_START

PAD_END

JSON_PATH

JSON_JOIN

TRIM

Example
"REGEXP_MATCH"

ActionInput

Fields
Input Field Description
token - String!
path - [String!]!
value - ActionInputBody
Example
{
  "token": "xyz789",
  "path": ["abc123"],
  "value": ActionInputBody
}

ActionInputBody

Fields
Input Field Description
feedback - ActionInputFeedback
Example
{"feedback": ActionInputFeedback}

ActionInputFeedback

Fields
Input Field Description
comment - String
value - Float
Example
{"comment": "xyz789", "value": 987.65}

ActionSettings

Fields
Field Name Description
startCondition - ActionExecuteStartCondition
Example
{"startCondition": "AFTER_STARTED"}

ActionSettingsInput

Fields
Input Field Description
startCondition - ActionExecuteStartCondition
Example
{"startCondition": "AFTER_STARTED"}

AgentAssignmentPreference

Description

Assignment Preferences

Values
Enum Value Description

AVAILABLE

UNAVAILABLE

AUTO_SYNCHRONIZE

Example
"AVAILABLE"

AgentSoundPreference

Description

Sound Preferences

Values
Enum Value Description

NONE

BEYOND

BUBBLE

LIVE_CHAT

MESSAGE

MESSAGE_2

MESSAGE_3

NOTIFICATION

POP

LEVEL_UP

Example
"NONE"

AllowedSignInMethods

Description

Which methods are enabled for sign in.

Values
Enum Value Description

SLACK

GOOGLE

SINGLE_SIGN_ON

Example
"SLACK"

AppInstallChannelTagUrn

Description

AppInstallChannelTagUrn created URN.

Example
AppInstallChannelTagUrn

AppInstallUrn

Description

AppInstallUrn created URN.

Example
AppInstallUrn

ApprovalForm

Description

A form containing a list of approval questions.

Fields
Field Name Description
questions - [ApprovalQuestion!]! The list of questions included in the approval form.
Example
{"questions": [ApprovalQuestion]}

ApprovalFormAnswers

Description

The answers provided for an approval form, as a list of typed values.

Fields
Field Name Description
answers - [FieldTypedValue!]! The answers to the approval form questions, each with its type and value.
Example
{"answers": [FieldTypedValue]}

ApprovalFormInput

Description

Input type for an approval form, containing questions.

Fields
Input Field Description
questions - [ApprovalQuestionInput!]!

The list of questions included in the approval form.

Example
{"questions": [ApprovalQuestionInput]}

ApprovalQuestion

Description

A question in an approval form, including its type, label, and options.

Fields
Field Name Description
id - String! A unique identifier for the question.
label - String! The display label for the question.
description - String An optional description providing more context for the question.
isRequired - Boolean Whether this question is required to be answered.
type - ApprovalQuestionType! The type of the question (e.g., single or multiple choice).
options - [ApprovalQuestionOption!] The list of options available for this question, if applicable.
Example
{
  "id": "xyz789",
  "label": "abc123",
  "description": "abc123",
  "isRequired": false,
  "type": "CHOICE",
  "options": [ApprovalQuestionOption]
}

ApprovalQuestionInput

Description

Input type for a question in an approval form.

Fields
Input Field Description
id - String!

A unique identifier for the question.

label - String!

The display label for the question.

description - String

An optional description providing more context for the question.

isRequired - Boolean

Whether this question is required to be answered.

type - ApprovalQuestionType!

The type of the question (e.g., single or multiple choice).

options - [ApprovalQuestionOptionInput!]

The list of options available for this question, if applicable.

Example
{
  "id": "xyz789",
  "label": "xyz789",
  "description": "xyz789",
  "isRequired": true,
  "type": "CHOICE",
  "options": [ApprovalQuestionOptionInput]
}

ApprovalQuestionOption

Description

An option for a question in an approval form, containing a label and value.

Fields
Field Name Description
label - String! The display label for the option.
value - String! The value associated with the option.
Example
{
  "label": "abc123",
  "value": "abc123"
}

ApprovalQuestionOptionInput

Description

Input type for an option in an approval form question.

Fields
Input Field Description
label - String!

The display label for the option.

value - String!

The value associated with the option.

Example
{
  "label": "abc123",
  "value": "xyz789"
}

ApprovalQuestionType

Description

The type of question in an approval form.

Values
Enum Value Description

CHOICE

A single-choice question where the user selects one option.

MULTIPLE_CHOICE

A multiple-choice question where the user can select multiple options.
Example
"CHOICE"

ApprovalRequest

Description

An approval request, including its status, form, and related users.

Fields
Field Name Description
id - ApprovalRequestUrn! The unique URN identifier for this approval request.
status - ApprovalStatus! The current status of the approval request (open, approved, or rejected).
createdDate - DateTimeISO! The date and time when the request was created.
approvedById - Urn ID of the user who approved the request, if applicable.
approvedBy - User The user who approved the request, if applicable.
approvedDate - DateTimeISO The date and time when the request was approved, if applicable.
requesterId - Urn ID of the user who created the approval request.
requester - User The user who created the approval request.
title - String The title or subject of the approval request.
text - String The main text or body of the approval request.
approvedNotes - String Notes provided when the request was approved.
rejectedNotes - String Notes provided when the request was rejected.
form - ApprovalForm The approval form associated with this request, if any.
formAnswers - ApprovalFormAnswers The answers submitted for the approval form, if any.
recipients - [ApprovalRequestRecipient!] Recipients of the approval request
Example
{
  "id": ApprovalRequestUrn,
  "status": "OPEN",
  "createdDate": DateTimeISO,
  "approvedById": Urn,
  "approvedBy": User,
  "approvedDate": DateTimeISO,
  "requesterId": Urn,
  "requester": User,
  "title": "abc123",
  "text": "abc123",
  "approvedNotes": "abc123",
  "rejectedNotes": "xyz789",
  "form": ApprovalForm,
  "formAnswers": ApprovalFormAnswers,
  "recipients": [ApprovalRequestRecipient]
}

ApprovalRequestAssigneeMesageUrn

Description

ApprovalRequestAssigneeMesageUrn created URN.

Example
ApprovalRequestAssigneeMesageUrn

ApprovalRequestRecipient

Description

The recipient of an approval request.

Fields
Field Name Description
recipientId - Urn The user ID of the user that the approval request was sent to.
recipient - User The user that the approval request was sent to
status - ApprovalRequestStatus The status of the approval request
messages - [ApprovalRequestRecipientMessage!] And messages in the approval request
Example
{
  "recipientId": Urn,
  "recipient": User,
  "status": "OPEN",
  "messages": [ApprovalRequestRecipientMessage]
}

ApprovalRequestRecipientMessage

Description

The message sent by a recipient of an approval request.

Fields
Field Name Description
id - ApprovalRequestAssigneeMesageUrn The id of the message.
creatorId - Urn The creator id of the message
creator - User The creator of the message
message - String The message the user sent
createdDate - DateTimeISO! The date the message was sent
Example
{
  "id": ApprovalRequestAssigneeMesageUrn,
  "creatorId": Urn,
  "creator": User,
  "message": "xyz789",
  "createdDate": DateTimeISO
}

ApprovalRequestStatus

Description

The status of an approval request recipient.

Values
Enum Value Description

OPEN

The approval request recipient has not closed the approval request.

CLOSED

The approval request recipient has closed the approval request.
Example
"OPEN"

ApprovalRequestUrn

Description

ApprovalRequestUrn created URN.

Example
ApprovalRequestUrn

ApprovalStatus

Description

The status of an approval request.

Values
Enum Value Description

OPEN

The approval request is open and awaiting a decision.

APPROVED

The approval request has been approved.

REJECTED

The approval request has been rejected.
Example
"OPEN"

Article

Description

Comprehensive representation of an article including metadata, content, permissions, versioning information, and relationships to other entities.

Fields
Field Name Description
id - ArticleUrn! Unique identifier of the article
type - ArticleType! Type of article (ARTICLE, TEMPLATE, KNOWLEDGE) - can only be set during creation
versionId - ArticleVersionUrn ID of the current version of this article
isEditableVersion - Boolean If this article is editable by the current user.
tags - [ArticleTag!]! Tags categorizing this article
title - String! Title of the article
iconUrl - String URL to the article's icon image
body - RichBody! Main content of the article in rich text format
creatorId - Urn ID of the user who created the article
creator - User User who created the article
portalId - PortalUrn! ID of the portal this article belongs to
portal - Portal! Portal this article belongs to
createdDate - DateTimeISO! When the article was first created
modifiedDate - DateTimeISO! When the article was last modified
publishedDate - DateTimeISO When the article was published, if it has been published
publishedById - Urn ID of the user who published the article
publishedBy - User User who published the article
previewText - String Short preview text generated from the article content
url - String URL where the article can be accessed
sections - [ArticleSection!] Content sections that make up the article
draftCreatorId - Urn ID of the user who last modified the draft
draftCreator - User User who last modified the draft
draftModifiedDate - DateTimeISO When the draft was last modified
permissions - [PermissionAssignment!] Permission assignments controlling who can access the article
currentUserPermission - PermissionAction The current user's permission level for this article
relatedArticles - [ArticlePreview!] Similar articles based on content similarity
feedback - ArticleFeedback Aggregated user feedback statistics
proposal - ArticleProposal AI-generated proposal metadata for the article
Example
{
  "id": ArticleUrn,
  "type": "ARTICLE",
  "versionId": ArticleVersionUrn,
  "isEditableVersion": true,
  "tags": [ArticleTag],
  "title": "abc123",
  "iconUrl": "xyz789",
  "body": RichBody,
  "creatorId": Urn,
  "creator": User,
  "portalId": PortalUrn,
  "portal": Portal,
  "createdDate": DateTimeISO,
  "modifiedDate": DateTimeISO,
  "publishedDate": DateTimeISO,
  "publishedById": Urn,
  "publishedBy": User,
  "previewText": "xyz789",
  "url": "abc123",
  "sections": [ArticleSection],
  "draftCreatorId": Urn,
  "draftCreator": User,
  "draftModifiedDate": DateTimeISO,
  "permissions": [PermissionAssignment],
  "currentUserPermission": "EXECUTE",
  "relatedArticles": [ArticlePreview],
  "feedback": ArticleFeedback,
  "proposal": ArticleProposal
}

ArticleBodySectionMediaDisplaySize

Description

Controls how media content is sized and displayed within an article section

Values
Enum Value Description

SMALL

Displays media at 256px width, suitable for thumbnails and small inline images

MEDIUM

Displays media at 512px width, suitable for standard content images

LARGE

Displays media at 1024px width, suitable for full-width and high-resolution content
Example
"SMALL"

ArticleChangeTypeInput

Description

Input type for changing the type of an article.

Fields
Input Field Description
type - ArticleType

Convert the knowledge article to this type

Example
{"type": "ARTICLE"}

ArticleFeedback

Description

Tracks user feedback statistics for an article, including helpful and not helpful counts.

Fields
Field Name Description
helpfulCount - Float Number of users who found the article helpful
notHelpfulCount - Float Number of users who found the article not helpful
Example
{"helpfulCount": 987.65, "notHelpfulCount": 987.65}

ArticleFeedbackInput

Description

Input type for submitting user feedback on an article's helpfulness, used to track article effectiveness and improve content quality.

Fields
Input Field Description
feedback - ArticleFeedbackType!

Whether the user found the article helpful or not helpful

id - ArticleUrn!

ID of the article being rated

Example
{"feedback": "HELPFUL", "id": ArticleUrn}

ArticleFeedbackType

Description

User feedback options for article helpfulness

Values
Enum Value Description

HELPFUL

User found the article helpful and it addressed their needs

NOT_HELPFUL

User did not find the article helpful or it did not address their needs
Example
"HELPFUL"

ArticleInput

Description

Input type for creating or updating articles, containing all modifiable fields including content, metadata, and section information.

Fields
Input Field Description
title - String

Title of the article

type - ArticleType

Type of article (ARTICLE, TEMPLATE, KNOWLEDGE) - only settable during creation

body - String!

Main content of the article in HTML format

iconUrl - String

URL to the article's icon image

tagIds - [ArticleTagUrn!]

IDs of tags to categorize this article

sections - [ArticleSectionInput!]

Content sections that make up the article

permissions - [PermissionAssignmentInput!]

Permission assignments controlling who can access the article

fromVersionId - ArticleVersionUrn

ID of the version to create this article from

Example
{
  "title": "abc123",
  "type": "ARTICLE",
  "body": "xyz789",
  "iconUrl": "abc123",
  "tagIds": [ArticleTagUrn],
  "sections": [ArticleSectionInput],
  "permissions": [PermissionAssignmentInput],
  "fromVersionId": ArticleVersionUrn
}

ArticlePreview

Description

Lightweight representation of an article used in related articles lists and search results, containing only essential preview information.

Fields
Field Name Description
id - ArticleUrn! Unique identifier of the article
title - String! Title of the article
iconUrl - String URL to the article's icon image
url - String URL where the article can be accessed
previewText - String Short preview text from the article content
Example
{
  "id": ArticleUrn,
  "title": "abc123",
  "iconUrl": "abc123",
  "url": "xyz789",
  "previewText": "xyz789"
}

ArticleProposal

Description

Represents a proposed article that has been created by an AI agent, containing its score and other relevant information.

Fields
Field Name Description
score - Float Score indicating the article's quality and relevance
versionId - ArticleVersionUrn ID of the current version of this article
Example
{"score": 987.65, "versionId": ArticleVersionUrn}

ArticleProposalInclude

Description

Whether to include or exclude proposals in the search results

Values
Enum Value Description

INCLUDE

Include proposals in the search results

EXCLUDE

Exclude proposals from the search results
Example
"INCLUDE"

ArticlePublishInput

Description

Input type for scheduling article publication, specifying when the article should become publicly available.

Fields
Input Field Description
publishDate - DateTimeISO

Date and time when the article should be published

type - ArticleType

Type of article to publish

Example
{"publishDate": DateTimeISO, "type": "ARTICLE"}

ArticleResults

Description

Container for paginated article query results, used when listing or searching articles.

Fields
Field Name Description
count - Int
nextPageToken - String
results - [Article!]! List of articles in the current page of results
Example
{
  "count": 123,
  "nextPageToken": "abc123",
  "results": [Article]
}

ArticleSearchOptions

Description

Options for customizing article search behavior, including external source inclusion and article type filtering.

Fields
Input Field Description
shouldSearchExternal - Boolean

Whether to include results from external sources

articleType - ArticleType

Filter results to only include articles of this type

proposals - ArticleProposalInclude

Whether to filter and display only proposals

Example
{
  "shouldSearchExternal": false,
  "articleType": "ARTICLE",
  "proposals": "INCLUDE"
}

ArticleSection

Description

Represents a section within an article version, which can contain different types of content (text, media, search) with their own permissions and display settings.

Fields
Field Name Description
id - ArticleVersionSectionUrn! Unique identifier for this section within the article version
type - ArticleSectionType! Type of content in this section (HTML, TITLE, SUBTITLE, CODE, or NOTE)
text - ArticleSectionText Text content for HTML, TITLE, SUBTITLE, CODE, or NOTE sections
media - ArticleSectionMedia Media content and display settings for IMAGE or VIDEO sections
search - ArticleSectionSearch Search configuration with optional AI answering for SEARCH sections
permissions - [PermissionAssignment!] Permission assignments controlling who can access this section
currentUserPermission - PermissionAction The current user's permission level for this section
Example
{
  "id": ArticleVersionSectionUrn,
  "type": "HTML",
  "text": ArticleSectionText,
  "media": ArticleSectionMedia,
  "search": ArticleSectionSearch,
  "permissions": [PermissionAssignment],
  "currentUserPermission": "EXECUTE"
}

ArticleSectionInput

Description

Input type for creating or updating article sections. Used to define the structure and content of an article's sections, including text, media, search functionality, and access permissions.

Fields
Input Field Description
id - ArticleVersionSectionUrn!

Unique identifier for this section within the article version. If not provided when creating a new section, a new ID will be automatically generated.

type - ArticleSectionType!

Type of content in this section (HTML, TITLE, SUBTITLE, IMAGE, VIDEO, CODE, NOTE, or SEARCH). Determines how the section is rendered and what kind of content it can contain.

text - ArticleSectionTextInput

Text content for HTML, TITLE, SUBTITLE, CODE, or NOTE sections. Contains the formatted content that will be processed and stored.

media - ArticleSectionMediaInput

Media content and settings for IMAGE or VIDEO sections. Includes URL, metadata, and display preferences for visual content.

search - ArticleSectionSearchInput

Search configuration for SEARCH sections. Can include AI-powered answering capabilities for interactive content.

permissions - [PermissionAssignmentInput!]

Access control settings for this section. Allows restricting visibility and modification rights to specific users or groups.

Example
{
  "id": ArticleVersionSectionUrn,
  "type": "HTML",
  "text": ArticleSectionTextInput,
  "media": ArticleSectionMediaInput,
  "search": ArticleSectionSearchInput,
  "permissions": [PermissionAssignmentInput]
}

ArticleSectionMedia

Description

Represents media content (images, videos) within an article section, including metadata and display preferences.

Fields
Field Name Description
altText - String Alternative text for accessibility and screen readers
url - String URL where the media content can be accessed
content - String Descriptive text about the media content
mimeType - String MIME type of the media content (e.g., image/jpeg, video/mp4)
size - Float File size in bytes
fileName - String Original filename of the uploaded media
displaySize - ArticleBodySectionMediaDisplaySize Controls how the media is sized and displayed (SMALL: 256px, MEDIUM: 512px, LARGE: 1024px)
Example
{
  "altText": "xyz789",
  "url": "abc123",
  "content": "xyz789",
  "mimeType": "abc123",
  "size": 123.45,
  "fileName": "xyz789",
  "displaySize": "SMALL"
}

ArticleSectionMediaInput

Description

Input type for creating or updating media content in article sections.

Fields
Input Field Description
altText - String

Alternative text for accessibility and screen readers

url - String

URL where the media content can be accessed

content - String

Descriptive text about the media content

mimeType - String

MIME type of the media content (e.g., image/jpeg, video/mp4)

size - Float

File size in bytes

fileName - String

Original filename of the uploaded media

displaySize - ArticleBodySectionMediaDisplaySize

Controls how the media is sized and displayed (SMALL: 256px, MEDIUM: 512px, LARGE: 1024px)

Example
{
  "altText": "abc123",
  "url": "xyz789",
  "content": "abc123",
  "mimeType": "abc123",
  "size": 123.45,
  "fileName": "xyz789",
  "displaySize": "SMALL"
}

ArticleSectionSearch

Description

Configures search functionality within an article section, including optional AI-powered answering capabilities.

Fields
Field Name Description
artificialIntelligenceProviderId - Urn ID of the AI provider to use for answering questions in this section
Example
{"artificialIntelligenceProviderId": Urn}

ArticleSectionSearchInput

Description

Input type for configuring search functionality within an article section.

Fields
Input Field Description
artificialIntelligenceProviderId - Urn

ID of the AI provider to use for answering questions in this section

Example
{"artificialIntelligenceProviderId": Urn}

ArticleSectionText

Description

Represents the text content of an article section, containing the formatted body text.

Fields
Field Name Description
body - RichBody HTML content of the section with formatting preserved
Example
{"body": RichBody}

ArticleSectionTextInput

Description

Input type for creating or updating text content in article sections. Accepts HTML formatted content that will be processed and stored.

Fields
Input Field Description
body - String!

HTML formatted content for the section

Example
{"body": "abc123"}

ArticleSectionType

Description

Defines the type of content section in an article

Values
Enum Value Description

HTML

Rich text content with HTML formatting

TITLE

Main heading section for the article

SUBTITLE

Secondary heading or subheading section

IMAGE

Image content with optional alt text and display settings

VIDEO

Video content with optional source and display settings

CODE

Code snippet or technical content with syntax formatting

NOTE

Special callout or note section with distinct styling

SEARCH

Interactive search section with optional AI-powered answering capabilities
Example
"HTML"

ArticleTag

Description

Represents an article tag with all its properties including its unique identifier. Used for retrieving and displaying article categorization information.

Fields
Field Name Description
childIds - [ArticleTagUrn!]! List of child tag IDs that belong under this tag in the hierarchy
title - String! Display name of the tag shown in the navigation and UI
description - String Optional description explaining the purpose or content of this tag category
iconUrl - String URL to the icon image displayed next to the tag in the UI
indexPageId - ArticleUrn ID of the default article to display when this tag is selected
id - ArticleTagUrn! Unique identifier for this tag
Example
{
  "childIds": [ArticleTagUrn],
  "title": "xyz789",
  "description": "abc123",
  "iconUrl": "xyz789",
  "indexPageId": ArticleUrn,
  "id": ArticleTagUrn
}

ArticleTagInput

Description

Input type for creating or updating article tags. Used to organize and categorize articles with hierarchical relationships and optional index pages.

Fields
Input Field Description
childIds - [ArticleTagUrn!]!

List of child tag IDs that belong under this tag in the hierarchy

title - String!

Display name of the tag shown in the navigation and UI

description - String

Optional description explaining the purpose or content of this tag category

iconUrl - String

URL to the icon image displayed next to the tag in the UI

indexPageId - ArticleUrn

ID of the default article to display when this tag is selected

Example
{
  "childIds": [ArticleTagUrn],
  "title": "xyz789",
  "description": "xyz789",
  "iconUrl": "xyz789",
  "indexPageId": ArticleUrn
}

ArticleTagUrn

Description

ArticleTagUrn created URN.

Example
ArticleTagUrn

ArticleType

Description

Categorizes articles as standard articles, reusable templates, or knowledge base entries

Values
Enum Value Description

ARTICLE

Standard article type for general content and documentation

TEMPLATE

Reusable template that can be used as a starting point for new articles

KNOWLEDGE

Knowledge base entry optimized for support and learning content
Example
"ARTICLE"

ArticleUrn

Description

ArticleUrn created URN.

Example
ArticleUrn

ArticleVersion

Description

Represents a version of an article, containing metadata about its creation and publication.

Fields
Field Name Description
id - ArticleVersionUrn! Unique identifier of the article version
createdDate - DateTimeISO! Date the version was created
creatorId - Urn ID of the user who created the article version
creator - User User who created the article version
publishedDate - DateTimeISO Date the version was published
publishedById - Urn ID of the user who published the article version
publishedBy - User User who published the article version
isProposed - Boolean Is this a proposed version of the article
isLatestPublished - Boolean Is this the latest published version of the article that is currently live on the site?
Example
{
  "id": ArticleVersionUrn,
  "createdDate": DateTimeISO,
  "creatorId": Urn,
  "creator": User,
  "publishedDate": DateTimeISO,
  "publishedById": Urn,
  "publishedBy": User,
  "isProposed": false,
  "isLatestPublished": false
}

ArticleVersionSectionUrn

Description

ArticleVersionSectionUrn created URN.

Example
ArticleVersionSectionUrn

ArticleVersionUrn

Description

ArticleVersionUrn created URN.

Example
ArticleVersionUrn

ArtificialIntelligenceAgent

Description

Definition of an AI agent

Fields
Field Name Description
name - String The name of the agent
type - AIAgentType The type of the agent
isDefault - Boolean Is this one of the default agents enabled by default for all channels.
availableRequestTypeIds - [FormUrn!] Avaialble request types that this agent can use
availableTools - [ArtificialIntelligenceAgentTool!] The tools that can be used by this agent
additionalPrompt - String Additional instructions for the agent.
articleTags - [ArticleTagUrn!] The tags that this agent can access when searching for answers. If not set, all articles are accessible.
permissions - [PermissionAssignment!] A collection of permissions for this agent controlling who can access, edit, and execute it.
id - ArtificialIntelligenceAgentUrn!
currentUserPermissions - [PermissionAction!]
Example
{
  "name": "xyz789",
  "type": "FIND_ANSWER",
  "isDefault": false,
  "availableRequestTypeIds": [FormUrn],
  "availableTools": [ArtificialIntelligenceAgentTool],
  "additionalPrompt": "xyz789",
  "articleTags": [ArticleTagUrn],
  "permissions": [PermissionAssignment],
  "id": ArtificialIntelligenceAgentUrn,
  "currentUserPermissions": ["EXECUTE"]
}

ArtificialIntelligenceAgentInput

Fields
Input Field Description
name - String

The name of the agent

type - AIAgentType

The type of the agent

isDefault - Boolean

Is this one of the default agents enabled by default for all channels.

availableRequestTypeIds - [FormUrn!]

Avaialble request types that this agent can use

availableTools - [ArtificialIntelligenceAgentToolInput!]

The tools that can be used by this agent

additionalPrompt - String

Additional instructions for the agent.

articleTags - [ArticleTagUrn!]

The tags that this agent can access when searching for answers. If not set, all articles are accessible.

permissions - [PermissionAssignmentInput!]

A collection of permissions for this agent controlling who can access, edit, and execute it.

Example
{
  "name": "abc123",
  "type": "FIND_ANSWER",
  "isDefault": false,
  "availableRequestTypeIds": [FormUrn],
  "availableTools": [
    ArtificialIntelligenceAgentToolInput
  ],
  "additionalPrompt": "abc123",
  "articleTags": [ArticleTagUrn],
  "permissions": [PermissionAssignmentInput]
}

ArtificialIntelligenceAgentTool

Description

Definition of an AI agent tool

Fields
Field Name Description
serviceId - WorkflowServiceUrn! The workflow service that can be used by this agent
integrationId - IntegrationUrn The integration that can be used by this agent (the instance of the service if required)
Example
{
  "serviceId": WorkflowServiceUrn,
  "integrationId": IntegrationUrn
}

ArtificialIntelligenceAgentToolInput

Fields
Input Field Description
serviceId - WorkflowServiceUrn!

The workflow service that can be used by this agent

integrationId - IntegrationUrn

The integration that can be used by this agent (the instance of the service if required)

Example
{
  "serviceId": WorkflowServiceUrn,
  "integrationId": IntegrationUrn
}

ArtificialIntelligenceAgentUrn

Description

ArtificialIntelligenceAgentUrn created URN.

Example
ArtificialIntelligenceAgentUrn

ArtificialIntelligenceAnswer

Description

AI-generated answer with confidence score

Fields
Field Name Description
score - Float! Confidence score for the generated answer
answer - String! The actual answer text generated by AI
Example
{"score": 987.65, "answer": "xyz789"}

ArtificialIntelligenceAnswerArticle

Description

Article reference used in AI-generated answers

Fields
Field Name Description
id - Urn! Unique identifier for the referenced article
title - String Title of the referenced article
previewText - String Preview or excerpt from the article
url - String URL where the full article can be accessed
Example
{
  "id": Urn,
  "title": "abc123",
  "previewText": "xyz789",
  "url": "xyz789"
}

ArtificialIntelligenceAnswerInput

Description

Input parameters for requesting AI answers

Fields
Input Field Description
query - String!

The question or query to be answered by AI

Example
{"query": "xyz789"}

ArtificialIntelligenceAnswerResult

Description

Complete AI answer including supporting articles

Fields
Field Name Description
articles - [ArtificialIntelligenceAnswerArticle!] Referenced articles used to generate the answer
answer - ArtificialIntelligenceAnswer! The main answer with confidence score
Example
{
  "articles": [ArtificialIntelligenceAnswerArticle],
  "answer": ArtificialIntelligenceAnswer
}

ArtificialIntelligenceArticleProposalSettings

Description

Configuration settings for AI-powered article proposals

Fields
Field Name Description
isEnabled - Boolean Controls whether AI article proposals are active
allowedTagIds - [ArticleTagUrn!] List of tags that AI can use when proposing articles
Example
{"isEnabled": true, "allowedTagIds": [ArticleTagUrn]}

ArtificialIntelligenceArticleProposalSettingsInput

Description

Input type for configuring AI article proposal settings

Fields
Input Field Description
isEnabled - Boolean

Controls whether AI article proposals are active

allowedTagIds - [ArticleTagUrn!]

List of tags that AI can use when proposing articles

Example
{"isEnabled": true, "allowedTagIds": [ArticleTagUrn]}

ArtificialIntelligenceFieldUrn

Description

ArtificialIntelligenceFieldUrn created URN.

Example
ArtificialIntelligenceFieldUrn

ArtificialIntelligencePrompt

Description

AI-generated response to a prompt

Fields
Field Name Description
response - String! The AI-generated response text
Example
{"response": "abc123"}

ArtificialIntelligencePromptInput

Description

Input parameters for generating AI responses

Fields
Input Field Description
prompt - String!

The main prompt or question for the AI

input - String

Additional context or parameters for the prompt

chatId - Urn

Chat identifier for loading conversation context

schema - ArtificialIntelligenceToolInput

Schema for the AI Tool response

isWebSearchEnabled - Boolean

Should search be enabled for this prompt

isEnabledTools - Boolean

Should tools be enabled for this prompt

Example
{
  "prompt": "abc123",
  "input": "abc123",
  "chatId": Urn,
  "schema": ArtificialIntelligenceToolInput,
  "isWebSearchEnabled": false,
  "isEnabledTools": true
}

ArtificialIntelligenceSchemaMap

Description

Standard key value string pair

Example
ArtificialIntelligenceSchemaMap

ArtificialIntelligenceSettings

Description

Extended AI settings including provider information

Fields
Field Name Description
isEnabled - Boolean! Master switch for enabling/disabling AI features
llmProviderId - IntegrationUrn Identifier for the Language Learning Model provider
tonePrompt - String Custom prompt to control AI's communication style
features - ArtificialIntelligenceSettingsFeatures Configuration for individual AI features
articleProposals - ArtificialIntelligenceArticleProposalSettings Configuration for AI article proposals
llmProvider - Integration! Details of the configured LLM provider
Example
{
  "isEnabled": false,
  "llmProviderId": IntegrationUrn,
  "tonePrompt": "abc123",
  "features": ArtificialIntelligenceSettingsFeatures,
  "articleProposals": ArtificialIntelligenceArticleProposalSettings,
  "llmProvider": Integration
}

ArtificialIntelligenceSettingsConcentType

Description

The type of consent the user has given to the artificial intelligence settings.

Values
Enum Value Description

ALLOWED

DENIED

Example
"ALLOWED"

ArtificialIntelligenceSettingsFeatures

Description

Feature flags for various AI capabilities

Fields
Field Name Description
isAskAiEnabled - Boolean Controls whether users can directly query the AI
isRecommendResponseEnabled - Boolean Controls whether AI can suggest responses
isCreateArticleEnabled - Boolean Controls whether AI can create new articles
Example
{
  "isAskAiEnabled": true,
  "isRecommendResponseEnabled": false,
  "isCreateArticleEnabled": true
}

ArtificialIntelligenceSettingsFeaturesInput

Description

Input type for configuring AI feature settings

Fields
Input Field Description
isAskAiEnabled - Boolean

Controls whether users can directly query the AI

isRecommendResponseEnabled - Boolean

Controls whether AI can suggest responses

isCreateArticleEnabled - Boolean

Controls whether AI can create new articles

Example
{
  "isAskAiEnabled": true,
  "isRecommendResponseEnabled": false,
  "isCreateArticleEnabled": true
}

ArtificialIntelligenceSettingsInput

Description

Input type for configuring main AI settings

Fields
Input Field Description
isEnabled - Boolean!

Master switch for enabling/disabling AI features

llmProviderId - IntegrationUrn

Identifier for the Language Learning Model provider

tonePrompt - String

Custom prompt to control AI's communication style

features - ArtificialIntelligenceSettingsFeaturesInput

Configuration for individual AI features

articleProposals - ArtificialIntelligenceArticleProposalSettingsInput

Configuration for AI article proposals

Example
{
  "isEnabled": false,
  "llmProviderId": IntegrationUrn,
  "tonePrompt": "xyz789",
  "features": ArtificialIntelligenceSettingsFeaturesInput,
  "articleProposals": ArtificialIntelligenceArticleProposalSettingsInput
}

ArtificialIntelligenceSummary

Description

Summary of AI analysis results for a conversation

Fields
Field Name Description
summary - String A comprehensive summary of the conversation content and key points
sentiment - String The emotional tone or attitude expressed by the customer during the interaction
agentTone - String The communication style and approach used by the support agent
expectedSatisfaction - Float Predicted customer satisfaction score on a numeric scale
recommendation - String Suggested actions or approaches to enhance customer satisfaction
Example
{
  "summary": "abc123",
  "sentiment": "abc123",
  "agentTone": "abc123",
  "expectedSatisfaction": 123.45,
  "recommendation": "xyz789"
}

ArtificialIntelligenceToolInput

Fields
Input Field Description
properties - ArtificialIntelligenceSchemaMap!

Properties accepted by this tool

required - [String!]!

Whether this parameter is required

isAllowAdditionalProperties - Boolean

Default value for the parameter

Example
{
  "properties": ArtificialIntelligenceSchemaMap,
  "required": ["abc123"],
  "isAllowAdditionalProperties": false
}

ArtificialIntelligenceValue

Description

Represents a specific AI-generated value or insight

Fields
Field Name Description
id - ArtificialIntelligenceFieldUrn Unique identifier for the AI-generated value
name - String Type or category of the AI-generated value (e.g., 'summary', 'sentiment')
description - String Detailed explanation of what this value represents
isEndUserVisible - Boolean Flag indicating if this value should be displayed to end users
value - FieldTypedValueBase! The actual AI-generated value with its type information
Example
{
  "id": ArtificialIntelligenceFieldUrn,
  "name": "abc123",
  "description": "xyz789",
  "isEndUserVisible": false,
  "value": FieldTypedValueBase
}

ArtificialIntelligenceValues

Description

Collection of AI-generated values and insights

Fields
Field Name Description
isDisabled - Boolean Is AI enabled for this ticket
values - [ArtificialIntelligenceValue!] Array of AI-generated values and their metadata
Example
{
  "isDisabled": false,
  "values": [ArtificialIntelligenceValue]
}

AssignmentType

Description

User assignment type

Values
Enum Value Description

NONE

ROUND_ROBIN

Example
"NONE"

AsyncObjectType

Description

Which type of object

Values
Enum Value Description

USER

GROUP

QUEUE

TAGS

TAG

CHANNEL_TAGS

PRIORITY

SEVERITY

SLA_TIER

CHAT_STATUS

FIELD_IN_CONTEXT

FIELDS_IN_CONTEXT

ACTION

REQUEST_TYPE

REQUEST_TYPES

TICKET_STATE

DEFLECTION_SOURCE

EMAIL

TIMEZONE

CHANNEL

Example
"USER"

AttachmentCreateInput

Fields
Input Field Description
filename - String!

Attachment Filename

mimeType - String!

Attachment Filename

size - Float!
shouldStore - Boolean

Should the token be stored and create a short, long lasting url instead of a long one. This is useful for long living and not-as-secure attachments such as application icons.

Example
{
  "filename": "abc123",
  "mimeType": "xyz789",
  "size": 123.45,
  "shouldStore": true
}

AttachmentCreated

Fields
Field Name Description
url - String!
token - String!
error - String
Example
{
  "url": "xyz789",
  "token": "xyz789",
  "error": "xyz789"
}

AuditLogEntry

Fields
Field Name Description
id - AuditLogEntryUrn! The id of the audit log entry
timestamp - DateTimeISO! The date of the audit event
workspace - Workspace The source workspace and installation
actor - User The actor that performed the action
actorId - Urn The id of the actor
severity - AuditLogSeverity! The severity of the audit log.
message - String! The message of the audit log.
ipAddress - String The ip address of the actor that performed the action.
attributes - Map! The attributes of the action.
differences - [AuditLogEntryDifference!] The differences created by this action
Example
{
  "id": AuditLogEntryUrn,
  "timestamp": DateTimeISO,
  "workspace": Workspace,
  "actor": User,
  "actorId": Urn,
  "severity": "TRACE",
  "message": "xyz789",
  "ipAddress": "abc123",
  "attributes": Map,
  "differences": [AuditLogEntryDifference]
}

AuditLogEntryDifference

Fields
Field Name Description
path - [String!]! The path of the difference
previousValue - String The previously set value
updatedValue - String The updated current value
Example
{
  "path": ["abc123"],
  "previousValue": "abc123",
  "updatedValue": "abc123"
}

AuditLogEntryFilters

Fields
Input Field Description
startDate - DateTimeISO!
endDate - DateTimeISO
Example
{
  "startDate": DateTimeISO,
  "endDate": DateTimeISO
}

AuditLogEntryUrn

Description

AuditLogEntryUrn created URN.

Example
AuditLogEntryUrn

AuditLogSeverity

Description

Audit Log Severity level

Values
Enum Value Description

TRACE

DEBUG

INFO

WARN

ERROR

FATAL

Example
"TRACE"

Boolean

Description

The Boolean scalar type represents true or false.

Bot

Description

The user object.

Fields
Field Name Description
id - UserUrn! The id of the bot user.
name - String! The bot name.
avatarUrl - String The bot avatar image.
type - BotType The type of bot.
Example
{
  "id": UserUrn,
  "name": "abc123",
  "avatarUrl": "abc123",
  "type": "SLACK"
}

BotType

Description

Represents the type of bot

Values
Enum Value Description

SLACK

Example
"SLACK"

ChannelEmailUrn

Description

ChannelEmailUrn created URN.

Example
ChannelEmailUrn

ChannelInvite

Description

Object type representing a channel invitation

Fields
Field Name Description
name - String! The name of the channel invite
channelNameTemplate - String! Template used to generate the channel name. Only accessible by administrators
introductionTemplate - String Template for the introduction message. Only accessible by administrators
id - ChannelInviteUrn! Unique identifier for the channel invite
settings - ChatSettings! Chat settings configuration for the channel. Only accessible by administrators
description - String Detailed description of the channel invite
Example
{
  "name": "abc123",
  "channelNameTemplate": "xyz789",
  "introductionTemplate": "abc123",
  "id": ChannelInviteUrn,
  "settings": ChatSettings,
  "description": "abc123"
}

ChannelInviteInput

Description

Input type for creating or updating a channel invite

Fields
Input Field Description
name - String!

The name of the channel invite

channelNameTemplate - String!

Template used to generate the channel name. Only accessible by administrators

introductionTemplate - String

Template for the introduction message. Only accessible by administrators

settings - ChatSettingsInput!

Chat settings configuration for the channel

description - String!

Detailed description of the channel invite

Example
{
  "name": "xyz789",
  "channelNameTemplate": "abc123",
  "introductionTemplate": "xyz789",
  "settings": ChatSettingsInput,
  "description": "abc123"
}

ChannelInviteUrn

Description

ChannelInviteUrn created URN.

Example
ChannelInviteUrn

ChannelMenuAction

Description

Action to take when the channel menu is triggered.

Values
Enum Value Description

DISABLED

TEXT_ONLY

START_DIRECT_MESSAGE

CREATE_PUBLIC_TICKET

CREATE_PRIVATE_TICKET

Example
"DISABLED"

ChannelMode

Description

How should the channel handle new messages? Start a ticket from a thread, add to a thread for the channel, or wait for manual action?

Values
Enum Value Description

THREADED

SINGLE_THREAD

MANUAL

Example
"THREADED"

ChannelTagCreateInput

Fields
Input Field Description
name - String
channelIds - [Urn!]
Example
{
  "name": "xyz789",
  "channelIds": [Urn]
}

ChannelTagCreated

Fields
Field Name Description
name - String
chatSettingsId - AppInstallChannelTagUrn
Example
{
  "name": "xyz789",
  "chatSettingsId": AppInstallChannelTagUrn
}

ChannelTagModifyInput

Fields
Input Field Description
tag - String!
channelIds - [Urn!]!
Example
{
  "tag": "abc123",
  "channelIds": [Urn]
}

ChannelType

Description

Channel types

Values
Enum Value Description

INBOUND_SUPPORT_EMAIL

SLACK

SLACK_NOT_INSTALLED

MICROSOFT_TEAMS

CHANNEL_TAG

Example
"INBOUND_SUPPORT_EMAIL"

Chat

Fields
Field Name Description
id - Urn!
ticketNumber - Float
subject - String
lastMessage - String
holdNotes - String
status - ChatStatus!
priority - TicketPriority
creatorId - Urn!
creator - User!
assigneeId - Urn
assignee - User
isAssignedToCurrentUser - Boolean
canCurrentUserEdit - Boolean
isCurrentUserParticipating - Boolean
hasUnreadByCurrentUser - Boolean
hasUnrespondedByCurrentUser - Boolean
currentUserLastReadDate - DateTimeISO
currentUserLastResponseDate - DateTimeISO
lastAgentResponseDate - DateTimeISO
stateId - TicketStateUrn
state - TicketState
source - ChatSource
createdDate - DateTimeISO
modifiedDate - DateTimeISO
finishedDate - DateTimeISO
assignedDate - DateTimeISO
lastUserMessageDate - DateTimeISO
ticketId - TicketUrn
ticket - Ticket
sort - ChatSort
searchContext - ChatSearchResultContext
Example
{
  "id": Urn,
  "ticketNumber": 987.65,
  "subject": "abc123",
  "lastMessage": "abc123",
  "holdNotes": "abc123",
  "status": "CONNECTED",
  "priority": "CRITICAL",
  "creatorId": Urn,
  "creator": User,
  "assigneeId": Urn,
  "assignee": User,
  "isAssignedToCurrentUser": false,
  "canCurrentUserEdit": true,
  "isCurrentUserParticipating": false,
  "hasUnreadByCurrentUser": true,
  "hasUnrespondedByCurrentUser": true,
  "currentUserLastReadDate": DateTimeISO,
  "currentUserLastResponseDate": DateTimeISO,
  "lastAgentResponseDate": DateTimeISO,
  "stateId": TicketStateUrn,
  "state": TicketState,
  "source": ChatSource,
  "createdDate": DateTimeISO,
  "modifiedDate": DateTimeISO,
  "finishedDate": DateTimeISO,
  "assignedDate": DateTimeISO,
  "lastUserMessageDate": DateTimeISO,
  "ticketId": TicketUrn,
  "ticket": Ticket,
  "sort": ChatSort,
  "searchContext": ChatSearchResultContext
}

ChatAddParticipantInput

Fields
Input Field Description
chatId - Urn

What is the chat you want to add the useres to?.

shouldAddSelf - Boolean

Should add the current user to the list of participants.

note - String

The note that will be sent and visible by the participating users.

participantIds - [Urn!]

List of which users to add

Example
{
  "chatId": Urn,
  "shouldAddSelf": true,
  "note": "abc123",
  "participantIds": [Urn]
}

ChatAssignInput

Fields
Input Field Description
assigneeId - Urn

Who should the ticket be assigned to. This can be either a user id or a queue id. If assigned to self, can be left blank.

shouldAssignSelf - Boolean

Should assign to current user.

shouldUnassign - Boolean

Should unassign.

message - String

Any message to add to the assignment.

Example
{
  "assigneeId": Urn,
  "shouldAssignSelf": false,
  "shouldUnassign": false,
  "message": "xyz789"
}

ChatEndInput

Fields
Input Field Description
chatId - Urn

Not defined if assiging ticket to self.

message - String

Ticket message to associate with the ticket.

tags - [String!]

List of tags

Example
{
  "chatId": Urn,
  "message": "abc123",
  "tags": ["xyz789"]
}

ChatLeaveParticipantInput

Fields
Input Field Description
chatIds - [Urn!]

Which chat ids do you want to leave.

note - String

The note that will be sent and visible by the participating users.

participantId - Urn

Which participant to leave. If not specified, defaults to the current user.

Example
{
  "chatIds": [Urn],
  "note": "abc123",
  "participantId": Urn
}

ChatRemoveParticipantInput

Fields
Input Field Description
chatId - Urn

What is the chat you want to add the useres to?.

shouldRemoveSelf - Boolean

Should add the current user to the list of participants.

note - String

The note that will be sent and visible by the participating users.

participantIds - [Urn!]

List of which users to add

Example
{
  "chatId": Urn,
  "shouldRemoveSelf": false,
  "note": "abc123",
  "participantIds": [Urn]
}

ChatResults

Fields
Field Name Description
chats - [Chat!]!
nextPageToken - String
Example
{
  "chats": [Chat],
  "nextPageToken": "abc123"
}

ChatSearchResultContext

Fields
Field Name Description
previews - [ChatSearchResultPreviewContext!]
score - Float
Example
{
  "previews": [ChatSearchResultPreviewContext],
  "score": 123.45
}

ChatSearchResultPreviewContext

Fields
Field Name Description
previews - [String!]
field - String
Example
{
  "previews": ["abc123"],
  "field": "abc123"
}

ChatSectionDisplay

Fields
Input Field Description
sectionId - Urn!

The id of the chat section

isMinimized - Boolean!

Wheather the chat section is minimized

Example
{"sectionId": Urn, "isMinimized": true}

ChatSectionDisplayInput

Fields
Field Name Description
sectionId - Urn! The id of the chat section
isMinimized - Boolean! Wheather the chat section is minimized
Example
{"sectionId": Urn, "isMinimized": true}

ChatSettings

Fields
Field Name Description
identities - [Urn!]
identitiesType - ChatSettingsIdentitiesType
welcomeMessage - DisplayText
formIds - [FormUrn!]
slaTierId - RoutingPolicyUrn
permissions - [PermissionAssignment!] A collection of permissions for this object controlling who can access, edit, and execute it.
canChangePermissions - Boolean
id - Urn!
type - ChannelType
options - ChatSettingsOptions
currentUserPermissions - [PermissionAction!]
Example
{
  "identities": [Urn],
  "identitiesType": "INHERIT",
  "welcomeMessage": DisplayText,
  "formIds": [FormUrn],
  "slaTierId": RoutingPolicyUrn,
  "permissions": [PermissionAssignment],
  "canChangePermissions": true,
  "id": Urn,
  "type": "INBOUND_SUPPORT_EMAIL",
  "options": ChatSettingsOptions,
  "currentUserPermissions": ["EXECUTE"]
}

ChatSettingsArtificialIntelligence

Fields
Field Name Description
isEnabled - Boolean
agentIds - [ArtificialIntelligenceAgentUrn!]
consent - ChatSettingsArtificialIntelligenceConsent
Example
{
  "isEnabled": true,
  "agentIds": [ArtificialIntelligenceAgentUrn],
  "consent": ChatSettingsArtificialIntelligenceConsent
}

ChatSettingsArtificialIntelligenceConsent

Fields
Field Name Description
isEnabled - Boolean
agentIds - [ArtificialIntelligenceAgentUrn!]
date - DateTimeISO! The date and time when the user consented to the artificial intelligence settings.
userId - Urn! The user id who has consented to the artificial intelligence settings.
user - User! The user who has consented to the artificial intelligence settings.
consent - ArtificialIntelligenceSettingsConcentType! The type of consent the user has given to the artificial intelligence settings.
Example
{
  "isEnabled": false,
  "agentIds": [ArtificialIntelligenceAgentUrn],
  "date": DateTimeISO,
  "userId": Urn,
  "user": User,
  "consent": "ALLOWED"
}

ChatSettingsArtificialIntelligenceInput

Fields
Input Field Description
isEnabled - Boolean
agentIds - [ArtificialIntelligenceAgentUrn!]
Example
{
  "isEnabled": true,
  "agentIds": [ArtificialIntelligenceAgentUrn]
}

ChatSettingsChannelEmail

Fields
Field Name Description
name - String
shouldSendFeedback - Boolean
feedbackIntroduction - String
Example
{
  "name": "xyz789",
  "shouldSendFeedback": false,
  "feedbackIntroduction": "xyz789"
}

ChatSettingsChannelEmailInput

Fields
Input Field Description
name - String
shouldSendFeedback - Boolean
feedbackIntroduction - String
Example
{
  "name": "abc123",
  "shouldSendFeedback": true,
  "feedbackIntroduction": "abc123"
}

ChatSettingsChannelMenu

Fields
Field Name Description
menuText - DisplayText
menuButtonText - String
action - ChannelMenuAction!
afterText - DisplayText
afterImageUrl - String
welcomeMessage - DisplayText
Example
{
  "menuText": DisplayText,
  "menuButtonText": "xyz789",
  "action": "DISABLED",
  "afterText": DisplayText,
  "afterImageUrl": "xyz789",
  "welcomeMessage": DisplayText
}

ChatSettingsChannelMenuInput

Fields
Input Field Description
menuText - DisplayTextInput
menuButtonText - String
action - ChannelMenuAction!
afterText - DisplayTextInput
afterImageUrl - String
welcomeMessage - DisplayTextInput
Example
{
  "menuText": DisplayTextInput,
  "menuButtonText": "abc123",
  "action": "DISABLED",
  "afterText": DisplayTextInput,
  "afterImageUrl": "xyz789",
  "welcomeMessage": DisplayTextInput
}

ChatSettingsDeflection

Fields
Field Name Description
isEnabled - Boolean
identity - Urn
Example
{"isEnabled": true, "identity": Urn}

ChatSettingsDeflectionInput

Fields
Input Field Description
isEnabled - Boolean
identity - Urn
Example
{"isEnabled": false, "identity": Urn}

ChatSettingsEmojiAction

Fields
Field Name Description
emoji - String!
description - String
workflowId - WorkflowUrn
allowedExecuteGroups - [UserGroupUrn!]!
Example
{
  "emoji": "xyz789",
  "description": "xyz789",
  "workflowId": WorkflowUrn,
  "allowedExecuteGroups": [UserGroupUrn]
}

ChatSettingsEmojiActionInput

Fields
Input Field Description
emoji - String!
description - String
workflowId - WorkflowUrn
allowedExecuteGroups - [UserGroupUrn!]!
Example
{
  "emoji": "xyz789",
  "description": "abc123",
  "workflowId": WorkflowUrn,
  "allowedExecuteGroups": [UserGroupUrn]
}

ChatSettingsFilter

Description

Which chat settings to return

Values
Enum Value Description

ALL

SLACK_CHANNELS

CHANNEL_TAGS

MICROSOFT_TEAMS

EMAIL

Example
"ALL"

ChatSettingsIdentitiesType

Description

Specifies the type of meta identities selected.

Values
Enum Value Description

INHERIT

SELECTED

NONE

Example
"INHERIT"

ChatSettingsInput

Fields
Input Field Description
identities - [Urn!]
identitiesType - ChatSettingsIdentitiesType
welcomeMessage - DisplayTextInput
formIds - [FormUrn!]
slaTierId - RoutingPolicyUrn
permissions - [PermissionAssignmentInput!]

A collection of permissions for this object controlling who can access, edit, and execute it.

canChangePermissions - Boolean
options - ChatSettingsOptionsInput
Example
{
  "identities": [Urn],
  "identitiesType": "INHERIT",
  "welcomeMessage": DisplayTextInput,
  "formIds": [FormUrn],
  "slaTierId": RoutingPolicyUrn,
  "permissions": [PermissionAssignmentInput],
  "canChangePermissions": false,
  "options": ChatSettingsOptionsInput
}

ChatSettingsManyFilters

Fields
Input Field Description
filter - ChatSettingsFilter!
tag - String
shouldIncludeNotInstalled - Boolean
Example
{
  "filter": "ALL",
  "tag": "xyz789",
  "shouldIncludeNotInstalled": false
}

ChatSettingsMicrosoftTeams

Fields
Field Name Description
name - String
workspaceName - String
tags - [String!]
channelMode - ChannelMode
Example
{
  "name": "xyz789",
  "workspaceName": "abc123",
  "tags": ["xyz789"],
  "channelMode": "THREADED"
}

ChatSettingsMicrosoftTeamsInput

Fields
Input Field Description
name - String
workspaceName - String
tags - [String!]
channelMode - ChannelMode
Example
{
  "name": "xyz789",
  "workspaceName": "xyz789",
  "tags": ["abc123"],
  "channelMode": "THREADED"
}

ChatSettingsOptions

Fields
Field Name Description
microsoftTeams - ChatSettingsMicrosoftTeams
email - ChatSettingsChannelEmail
channelMenu - ChatSettingsChannelMenu
deflection - ChatSettingsDeflection
tag - ChatSettingsTag
slack - ChatSettingsSlack
artificialIntelligence - ChatSettingsArtificialIntelligence
Example
{
  "microsoftTeams": ChatSettingsMicrosoftTeams,
  "email": ChatSettingsChannelEmail,
  "channelMenu": ChatSettingsChannelMenu,
  "deflection": ChatSettingsDeflection,
  "tag": ChatSettingsTag,
  "slack": ChatSettingsSlack,
  "artificialIntelligence": ChatSettingsArtificialIntelligence
}

ChatSettingsOptionsInput

Fields
Input Field Description
microsoftTeams - ChatSettingsMicrosoftTeamsInput
email - ChatSettingsChannelEmailInput
channelMenu - ChatSettingsChannelMenuInput
deflection - ChatSettingsDeflectionInput
slack - ChatSettingsSlackInput
artificialIntelligence - ChatSettingsArtificialIntelligenceInput
Example
{
  "microsoftTeams": ChatSettingsMicrosoftTeamsInput,
  "email": ChatSettingsChannelEmailInput,
  "channelMenu": ChatSettingsChannelMenuInput,
  "deflection": ChatSettingsDeflectionInput,
  "slack": ChatSettingsSlackInput,
  "artificialIntelligence": ChatSettingsArtificialIntelligenceInput
}

ChatSettingsSlack

Fields
Field Name Description
name - String
workspaceName - String
tags - [String!]
routingPolicies - [RoutingPolicyUrn!]
channelMode - ChannelMode
ignoreTicketsFromEmailDomains - [String!]
approvedBotIds - [UserUrn!]
shouldAllowUsersAddParticipants - Boolean
ticketCreatedTemplate - String
emojiActions - [ChatSettingsEmojiAction!]
canFillOutForm - Boolean
canHaveEmojiActions - Boolean
Example
{
  "name": "abc123",
  "workspaceName": "abc123",
  "tags": ["xyz789"],
  "routingPolicies": [RoutingPolicyUrn],
  "channelMode": "THREADED",
  "ignoreTicketsFromEmailDomains": [
    "xyz789"
  ],
  "approvedBotIds": [UserUrn],
  "shouldAllowUsersAddParticipants": false,
  "ticketCreatedTemplate": "xyz789",
  "emojiActions": [ChatSettingsEmojiAction],
  "canFillOutForm": true,
  "canHaveEmojiActions": false
}

ChatSettingsSlackInput

Fields
Input Field Description
name - String
workspaceName - String
tags - [String!]
routingPolicies - [RoutingPolicyUrn!]
channelMode - ChannelMode
ignoreTicketsFromEmailDomains - [String!]
approvedBotIds - [UserUrn!]
shouldAllowUsersAddParticipants - Boolean
ticketCreatedTemplate - String
emojiActions - [ChatSettingsEmojiActionInput!]
canFillOutForm - Boolean
Example
{
  "name": "abc123",
  "workspaceName": "abc123",
  "tags": ["xyz789"],
  "routingPolicies": [RoutingPolicyUrn],
  "channelMode": "THREADED",
  "ignoreTicketsFromEmailDomains": [
    "abc123"
  ],
  "approvedBotIds": [UserUrn],
  "shouldAllowUsersAddParticipants": false,
  "ticketCreatedTemplate": "xyz789",
  "emojiActions": [ChatSettingsEmojiActionInput],
  "canFillOutForm": true
}

ChatSettingsTag

Fields
Field Name Description
name - String
channelCount - Float
Example
{"name": "xyz789", "channelCount": 123.45}

ChatSort

Fields
Field Name Description
priortyIndex - Float
userIndex - Float
channelIndex - Float
noGroupIndex - Float
Example
{
  "priortyIndex": 987.65,
  "userIndex": 987.65,
  "channelIndex": 987.65,
  "noGroupIndex": 123.45
}

ChatSource

Fields
Field Name Description
id - Urn
sourceIdentity - Urn
url - String
text - String
type - String
isEditable - Boolean
Example
{
  "id": Urn,
  "sourceIdentity": Urn,
  "url": "xyz789",
  "text": "xyz789",
  "type": "abc123",
  "isEditable": false
}

ChatStatus

Description

Represents the status of the conversation

Values
Enum Value Description

CONNECTED

CHAT_REQUESTED

ASSIGNED

FINISHED

ON_HOLD

IGNORED

SNOOZED

DEFLECTION_WAITING

Example
"CONNECTED"

Company

Fields
Field Name Description
id - CompanyUrn!
domain - String!
name - String!
deletedDate - DateTimeISO
Example
{
  "id": CompanyUrn,
  "domain": "abc123",
  "name": "xyz789",
  "deletedDate": DateTimeISO
}

CompanyInput

Fields
Input Field Description
name - String!
domainName - String!
Example
{
  "name": "xyz789",
  "domainName": "abc123"
}

CompanyResults

Fields
Field Name Description
count - Int
nextPageToken - String
results - [Company!]!
Example
{
  "count": 987,
  "nextPageToken": "abc123",
  "results": [Company]
}

CompanyUrn

Description

CompanyUrn created URN.

Example
CompanyUrn

Comparison

Description

How two values should be compared.

Values
Enum Value Description

EQUAL

LESS_THAN

LESS_THAN_EQUAL

GREATER_THAN

GREATER_THAN_EQUAL

NOT_EQUAL

EXISTS

DOESNT_EXIST

CONTAINS

DOESNT_CONTAIN

REGEXP

IN

Example
"EQUAL"

ComposedMessage

Fields
Field Name Description
scheduledDate - DateTimeISO If you want to send this message in the future, set a future date.
body - RichBody! The body of the message to send.
permissions - [PermissionAssignment!] A collection of permissions for who can see, edit, and send this composed message.
senderId - UserUrn Which user to send the message from. You must have the Impersonate permission to use this feature.
id - ComposedMessageUrn! The id of the composed message
status - ComposedMessageStatus! The status of the composed message
createdDate - DateTimeISO! The date and time the composed message was created
sentDate - DateTimeISO If you want to send this message in the future, set a future date.
attachments - [TicketMessageAttachment!] Attachments.
creatorId - UserUrn Who created the message.
creator - User
currentUserPermissions - [PermissionAction!]
sender - User
recipients - [ComposedMessageRecipient!]! Who to send the messages to
Example
{
  "scheduledDate": DateTimeISO,
  "body": RichBody,
  "permissions": [PermissionAssignment],
  "senderId": UserUrn,
  "id": ComposedMessageUrn,
  "status": "SENT",
  "createdDate": DateTimeISO,
  "sentDate": DateTimeISO,
  "attachments": [TicketMessageAttachment],
  "creatorId": UserUrn,
  "creator": User,
  "currentUserPermissions": ["EXECUTE"],
  "sender": User,
  "recipients": [ComposedMessageRecipient]
}

ComposedMessageDestinationType

Description

The type of destination to send the message to.

Values
Enum Value Description

SLACK

The destination is a Slack channel

EMAIL

The destination is an email address

TEAMS

The destination is a Teams channel
Example
"SLACK"

ComposedMessageInput

Fields
Input Field Description
scheduledDate - DateTimeISO

If you want to send this message in the future, set a future date.

body - RichBodyInput!

The body of the message to send.

permissions - [PermissionAssignmentInput!]

A collection of permissions for who can see, edit, and send this composed message.

senderId - UserUrn

Which user to send the message from. You must have the Impersonate permission to use this feature.

attachmentTokens - [String!]

Attachment tokens list.

attachmentReferences - [TicketMessageAttachmentReferenceInput!]

The collection of previous attachments.

senderType - SendFromType!

The status of the composed message

isDraft - Boolean

If the message is a draft, dont send it right away.

recipients - [ComposedMessageRecipientInput!]!

Who to send the messages to

Example
{
  "scheduledDate": DateTimeISO,
  "body": RichBodyInput,
  "permissions": [PermissionAssignmentInput],
  "senderId": UserUrn,
  "attachmentTokens": ["abc123"],
  "attachmentReferences": [
    TicketMessageAttachmentReferenceInput
  ],
  "senderType": "AGENT",
  "isDraft": false,
  "recipients": [ComposedMessageRecipientInput]
}

ComposedMessageRecipient

Fields
Field Name Description
id - Urn! Who to send the messages to
name - String The name of the recipient
type - ComposedMessageDestinationType! The type of destination
Example
{
  "id": Urn,
  "name": "abc123",
  "type": "SLACK"
}

ComposedMessageRecipientInput

Fields
Input Field Description
id - Urn!

Who to send the messages to

Example
{"id": Urn}

ComposedMessageStatus

Description

The status of the composed message

Values
Enum Value Description

SENT

The composed message has been sent

SCHEDULED

The composed message is scheduled to be sent

DRAFT

The composed message is a draft

ERROR

Example
"SENT"

ComposedMessageUrn

Description

ComposedMessageUrn created URN.

Example
ComposedMessageUrn

ComposedMessages

Fields
Field Name Description
results - [ComposedMessage!] The composed messages.
Example
{"results": [ComposedMessage]}

ConversationSource

Fields
Field Name Description
id - Urn!
sourceIdentity - Urn!
url - String
label - String!
type - ConversationSourceType
currentUserPermissions - [PermissionAction!]
Example
{
  "id": Urn,
  "sourceIdentity": Urn,
  "url": "xyz789",
  "label": "xyz789",
  "type": "SLACK_CHANNEL",
  "currentUserPermissions": ["EXECUTE"]
}

ConversationSourceType

Description

What is the conversation source

Values
Enum Value Description

SLACK_CHANNEL

SLACK_CHANNEL_NOT_INSTALLED

MICROSOFT_TEAMS

CONVERSATION_GROUP

EMAIL

Example
"SLACK_CHANNEL"

CustomField

Fields
Field Name Description
formFieldId - FormFieldUrn!
formField - FormField
displayValue - String
type - FormFieldType
value - CustomFieldValue
Example
{
  "formFieldId": FormFieldUrn,
  "formField": FormField,
  "displayValue": "abc123",
  "type": "TEXT",
  "value": CustomFieldValue
}

CustomFieldValue

Fields
Field Name Description
formFieldId - FormFieldUrn!
type - FormFieldType
string - String
boolean - Boolean
date - DateTimeISO
number - Float
options - [String!]
files - [FieldTypedValueFile!]
displayValue - String
Example
{
  "formFieldId": FormFieldUrn,
  "type": "TEXT",
  "string": "xyz789",
  "boolean": true,
  "date": DateTimeISO,
  "number": 987.65,
  "options": ["xyz789"],
  "files": [FieldTypedValueFile],
  "displayValue": "xyz789"
}

CustomFieldValueInput

Fields
Input Field Description
formFieldId - FormFieldUrn!
type - FormFieldType
string - String
boolean - Boolean
date - DateTimeISO
number - Float
options - [String!]
files - [FieldTypedValueFileInput!]
displayValue - String
Example
{
  "formFieldId": FormFieldUrn,
  "type": "TEXT",
  "string": "abc123",
  "boolean": false,
  "date": DateTimeISO,
  "number": 987.65,
  "options": ["abc123"],
  "files": [FieldTypedValueFileInput],
  "displayValue": "xyz789"
}

Dashboard

Fields
Field Name Description
name - String The name of the dashboard
settings - DashboardSettings The collection of ticket states and their metadata
permissions - [PermissionAssignment!] A collection of permissions for this dashboard
id - DashboardUrn! The id of the dashboard
ticketStates - [DashboardTicketState!]! The collection of ticket states and their metadata
Example
{
  "name": "xyz789",
  "settings": DashboardSettings,
  "permissions": [PermissionAssignment],
  "id": DashboardUrn,
  "ticketStates": [DashboardTicketState]
}

DashboardGroupBy

Description

Which field to use to group the dashboard columns

Values
Enum Value Description

PRIORITY

USER

CHANNEL

NO_GROUP

ASSIGNEE

QUEUE

COMPANY_GROUP

Example
"PRIORITY"

DashboardInput

Fields
Input Field Description
name - String

The name of the dashboard

settings - DashboardSettingsInput

The collection of ticket states and their metadata

permissions - [PermissionAssignmentInput!]

A collection of permissions for this dashboard

ticketStates - [DashboardTicketStateInput!]

The collection of ticket states and their metadata

Example
{
  "name": "abc123",
  "settings": DashboardSettingsInput,
  "permissions": [PermissionAssignmentInput],
  "ticketStates": [DashboardTicketStateInput]
}

DashboardSettings

Fields
Field Name Description
shouldWrap - Boolean Should wrap the dashboard columns
lastConversationCount - Float The number of last conversation items to display
groupBy - DashboardGroupBy Which column to use to group the dashboard
sortBy - DashboardSortBy Which column to use to sort the dashboard
view - DashboardView How shoud the dashboard display the tickets
ticketView - TicketView Which tickets to return. All or just some
ticketDisplay - DashboardTicketDisplay Which tickets to return. All or just some
fieldIds - [FormFieldUrn!] Which fields to display
filters - DashboardSettingsFilters Which filters to apply to the dashboard
Example
{
  "shouldWrap": true,
  "lastConversationCount": 123.45,
  "groupBy": "PRIORITY",
  "sortBy": "PRIORITY_ASCENDING",
  "view": "KANBAN",
  "ticketView": "CREATED_TICKETS",
  "ticketDisplay": "SIDE_RIGHT",
  "fieldIds": [FormFieldUrn],
  "filters": DashboardSettingsFilters
}

DashboardSettingsFilters

Fields
Field Name Description
assigneeIds - [Urn!] Filters only tickets created by these assignees.
requesterIds - [Urn!] Filters only tickets created by these requesters
priorities - [TicketPriority!] Filters only tickets created with the given priorities
createdDate - DashboardSettingsFiltersDate Filters only tickets created within a certain date
lastResponseDate - DashboardSettingsFiltersDate Filters only tickets where the last response is within a specific date
conversationSourceIds - [Urn!] Filters only tickets created in a specific conversation context
queueIds - [QueueUrn!] Filters only tickets created in a specific queue
formIds - [FormUrn!] Filters only tickets with the specified request types
tags - [String!] Filters only tickets containing a specific tag.
statuses - [TicketStatus!] Filters only tickets in a certain ticket status.
userTicketStatus - [UserTicketStatus!] Filters only tickets containing a specific status for the user.
Example
{
  "assigneeIds": [Urn],
  "requesterIds": [Urn],
  "priorities": ["CRITICAL"],
  "createdDate": DashboardSettingsFiltersDate,
  "lastResponseDate": DashboardSettingsFiltersDate,
  "conversationSourceIds": [Urn],
  "queueIds": [QueueUrn],
  "formIds": [FormUrn],
  "tags": ["abc123"],
  "statuses": ["OPEN"],
  "userTicketStatus": ["READ"]
}

DashboardSettingsFiltersDate

Fields
Field Name Description
startDate - DateTimeISO The date to start showing results
endDate - DateTimeISO The date to stop showing results
startDateOffset - Float The start date offset from now in miliseconds.
endDateOffset - Float The end date offset from now in miliseconds.
preset - DatePresets A custom dynamic preset.
Example
{
  "startDate": DateTimeISO,
  "endDate": DateTimeISO,
  "startDateOffset": 123.45,
  "endDateOffset": 987.65,
  "preset": "TODAY"
}

DashboardSettingsFiltersDateInput

Fields
Input Field Description
startDate - DateTimeISO

The date to start showing results

endDate - DateTimeISO

The date to stop showing results

startDateOffset - Float

The start date offset from now in miliseconds.

endDateOffset - Float

The end date offset from now in miliseconds.

preset - DatePresets

A custom dynamic preset.

Example
{
  "startDate": DateTimeISO,
  "endDate": DateTimeISO,
  "startDateOffset": 987.65,
  "endDateOffset": 123.45,
  "preset": "TODAY"
}

DashboardSettingsFiltersInput

Fields
Input Field Description
assigneeIds - [Urn!]

Filters only tickets created by these assignees.

requesterIds - [Urn!]

Filters only tickets created by these requesters

priorities - [TicketPriority!]

Filters only tickets created with the given priorities

createdDate - DashboardSettingsFiltersDateInput

Filters only tickets created within a certain date

lastResponseDate - DashboardSettingsFiltersDateInput

Filters only tickets where the last response is within a specific date

conversationSourceIds - [Urn!]

Filters only tickets created in a specific conversation context

queueIds - [QueueUrn!]

Filters only tickets created in a specific queue

formIds - [FormUrn!]

Filters only tickets with the specified request types

tags - [String!]

Filters only tickets containing a specific tag.

statuses - [TicketStatus!]

Filters only tickets in a certain ticket status.

userTicketStatus - [UserTicketStatus!]

Filters only tickets containing a specific status for the user.

Example
{
  "assigneeIds": [Urn],
  "requesterIds": [Urn],
  "priorities": ["CRITICAL"],
  "createdDate": DashboardSettingsFiltersDateInput,
  "lastResponseDate": DashboardSettingsFiltersDateInput,
  "conversationSourceIds": [Urn],
  "queueIds": [QueueUrn],
  "formIds": [FormUrn],
  "tags": ["xyz789"],
  "statuses": ["OPEN"],
  "userTicketStatus": ["READ"]
}

DashboardSettingsInput

Fields
Input Field Description
shouldWrap - Boolean

Should wrap the dashboard columns

lastConversationCount - Float

The number of last conversation items to display

groupBy - DashboardGroupBy

Which column to use to group the dashboard

sortBy - DashboardSortBy

Which column to use to sort the dashboard

view - DashboardView

How shoud the dashboard display the tickets

ticketView - TicketView

Which tickets to return. All or just some

ticketDisplay - DashboardTicketDisplay

Which tickets to return. All or just some

fieldIds - [FormFieldUrn!]

Which fields to display

filters - DashboardSettingsFiltersInput

Which filters to apply to the dashboard

Example
{
  "shouldWrap": true,
  "lastConversationCount": 987.65,
  "groupBy": "PRIORITY",
  "sortBy": "PRIORITY_ASCENDING",
  "view": "KANBAN",
  "ticketView": "CREATED_TICKETS",
  "ticketDisplay": "SIDE_RIGHT",
  "fieldIds": [FormFieldUrn],
  "filters": DashboardSettingsFiltersInput
}

DashboardSortBy

Description

Which field to use to sort the dashboard columns

Values
Enum Value Description

PRIORITY_ASCENDING

PRIORITY_DESCENDING

CREATED_DATE_ASCENDING

CREATED_DATE_DESCENDING

LAST_RESPONSE_DATE_ASCENDING

LAST_RESPONSE_DATE_DESCENDING

TICKET_NUMBER_ASCENDING

TICKET_NUMBER_DESCENDING

MANUAL

Example
"PRIORITY_ASCENDING"

DashboardTicketDisplay

Description

Where should the new ticket field show up

Values
Enum Value Description

SIDE_RIGHT

MODAL

Example
"SIDE_RIGHT"

DashboardTicketState

Fields
Field Name Description
locationIndex - Float Location index where to store the ticket state
ticketStateId - TicketStateUrn The id of the state
label - String The label to override the state
ticketState - TicketState!
Example
{
  "locationIndex": 123.45,
  "ticketStateId": TicketStateUrn,
  "label": "abc123",
  "ticketState": TicketState
}

DashboardTicketStateInput

Fields
Input Field Description
locationIndex - Float

Location index where to store the ticket state

ticketStateId - TicketStateUrn

The id of the state

label - String

The label to override the state

Example
{
  "locationIndex": 123.45,
  "ticketStateId": TicketStateUrn,
  "label": "abc123"
}

DashboardUrn

Description

DashboardUrn created URN.

Example
DashboardUrn

DashboardView

Description

Should format should the dashboard look like

Values
Enum Value Description

KANBAN

KANBAN_WRAPPED

WALL

COMPACT

Example
"KANBAN"

DatePresets

Description

Date Presets.

Values
Enum Value Description

TODAY

CURRENT_WEEK

LAST_7_DAYS

LAST_30_DAYS

THIS_MONTH

THIS_YEAR

Example
"TODAY"

DateTimeISO

Description

A date-time string at UTC, such as 2007-12-03T10:15:30Z, compliant with the date-time format outlined in section 5.6 of the RFC 3339 profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar.This scalar is serialized to a string in ISO 8601 format and parsed from a string in ISO 8601 format.

Example
DateTimeISO

DayOfWeek

Description

Which day of the week

Values
Enum Value Description

MONDAY

TUESDAY

WEDNESDAY

THURSDAY

FRIDAY

SATURDAY

SUNDAY

Example
"MONDAY"

DeflectionTicketStatusAssignment

Description

To which status bucket should tickets that are waiting deflection be assigned?

Values
Enum Value Description

CHAT_REQUESTED

DEFLECTION_WAITING

Example
"CHAT_REQUESTED"

DisplayFormSource

Description

The source of the form

Values
Enum Value Description

END_CHAT

ACTION

PORTAL

EMOJI

WORKFLOW

Example
"END_CHAT"

DisplayText

Fields
Field Name Description
rawText - String
sections - Boolean
Example
{"rawText": "xyz789", "sections": false}

DisplayTextInput

Fields
Input Field Description
rawText - String
sections - Boolean
Example
{"rawText": "xyz789", "sections": false}

DueDateType

Description

Represents the type of due date.

Values
Enum Value Description

SLA_FIRST_RESPONSE

SLA_TIME_TO_UPDATE

SLA_REQUESTER_WAIT_TIME

Example
"SLA_FIRST_RESPONSE"

ExternalForm

Fields
Field Name Description
id - Urn
name - String
hasChildren - Boolean
isSelected - Boolean
Example
{
  "id": Urn,
  "name": "abc123",
  "hasChildren": false,
  "isSelected": true
}

FeatureFlags

Fields
Field Name Description
active - [String!]
Example
{"active": ["xyz789"]}

Feedback

Fields
Field Name Description
type - FeedbackType
customMessage - String
shouldAllowComments - Boolean
responses - [FeedbackResponse!]
Example
{
  "type": "NONE",
  "customMessage": "xyz789",
  "shouldAllowComments": true,
  "responses": [FeedbackResponse]
}

FeedbackInput

Fields
Input Field Description
type - FeedbackType
customMessage - String
shouldAllowComments - Boolean
responses - [FeedbackResponseInput!]
Example
{
  "type": "NONE",
  "customMessage": "xyz789",
  "shouldAllowComments": true,
  "responses": [FeedbackResponseInput]
}

FeedbackResponse

Fields
Field Name Description
value - Float!
message - String
Example
{"value": 123.45, "message": "abc123"}

FeedbackResponseInput

Fields
Input Field Description
value - Float!
message - String
Example
{"value": 123.45, "message": "abc123"}

FeedbackType

Description

Feedback seletor type

Values
Enum Value Description

NONE

THUMBS

FACES

CES

NPS

Example
"NONE"

FieldTypedReplaceableValue

Fields
Field Name Description
value - FieldTypedValueBase!
replacements - [FormFieldReplacement!]
Example
{
  "value": FieldTypedValueBase,
  "replacements": [FormFieldReplacement]
}

FieldTypedReplaceableValueInput

Fields
Input Field Description
value - FieldTypedValueBaseInput!
replacements - [FormFieldReplacementInput!]
Example
{
  "value": FieldTypedValueBaseInput,
  "replacements": [FormFieldReplacementInput]
}

FieldTypedValue

Fields
Field Name Description
type - FormFieldType!
displayValue - String
string - String
boolean - Boolean
date - DateTimeISO
number - Float
options - [String!]
files - [FieldTypedValueFile!]
fieldId - Urn!
Example
{
  "type": "TEXT",
  "displayValue": "abc123",
  "string": "xyz789",
  "boolean": true,
  "date": DateTimeISO,
  "number": 987.65,
  "options": ["abc123"],
  "files": [FieldTypedValueFile],
  "fieldId": Urn
}

FieldTypedValueBase

Fields
Field Name Description
type - FormFieldType!
displayValue - String
string - String
boolean - Boolean
date - DateTimeISO
number - Float
options - [String!]
files - [FieldTypedValueFile!]
Example
{
  "type": "TEXT",
  "displayValue": "xyz789",
  "string": "xyz789",
  "boolean": true,
  "date": DateTimeISO,
  "number": 123.45,
  "options": ["abc123"],
  "files": [FieldTypedValueFile]
}

FieldTypedValueBaseInput

Fields
Input Field Description
type - FormFieldType!
displayValue - String
string - String
boolean - Boolean
date - DateTimeISO
number - Float
options - [String!]
files - [FieldTypedValueFileInput!]
Example
{
  "type": "TEXT",
  "displayValue": "xyz789",
  "string": "xyz789",
  "boolean": true,
  "date": DateTimeISO,
  "number": 987.65,
  "options": ["xyz789"],
  "files": [FieldTypedValueFileInput]
}

FieldTypedValueFile

Fields
Field Name Description
filename - String
title - String
size - Float
contentType - String
url - String
contextId - Urn
Example
{
  "filename": "abc123",
  "title": "abc123",
  "size": 987.65,
  "contentType": "xyz789",
  "url": "abc123",
  "contextId": Urn
}

FieldTypedValueFileInput

Fields
Input Field Description
filename - String
title - String
size - Float
contentType - String
url - String
contextId - Urn
Example
{
  "filename": "abc123",
  "title": "xyz789",
  "size": 987.65,
  "contentType": "xyz789",
  "url": "xyz789",
  "contextId": Urn
}

FieldTypedValueInput

Fields
Input Field Description
type - FormFieldType!
displayValue - String
string - String
boolean - Boolean
date - DateTimeISO
number - Float
options - [String!]
files - [FieldTypedValueFileInput!]
fieldId - Urn!
Example
{
  "type": "TEXT",
  "displayValue": "abc123",
  "string": "abc123",
  "boolean": false,
  "date": DateTimeISO,
  "number": 123.45,
  "options": ["abc123"],
  "files": [FieldTypedValueFileInput],
  "fieldId": Urn
}

Float

Description

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

Example
123.45

Form

Fields
Field Name Description
name - String!
type - FormType
description - String
isCreatePrivate - Boolean
deflection - FormDeflectionSettings
externalFormId - FormExternalUrn
userGroupIds - [UserGroupUrn!]
actionSettings - ActionSettings
tags - [String!]
jobFunctions - [JobFunction!]
iconUrl - String
shouldCreateOnOnboarding - Boolean
permissions - [PermissionAssignment!] A collection of permissions for this form controlling who can access, edit, and execute it.
id - FormUrn!
fields - [FormFieldDescriptor!]!
workflowId - WorkflowUrn
hasAutomation - Boolean!
workflow - Workflow
exampleInput - FormWebhookExample
modifiedDate - DateTimeISO
createdDate - DateTimeISO
userGroups - Workflow
currentUserPermissions - [PermissionAction!]
Example
{
  "name": "xyz789",
  "type": "DEFAULT",
  "description": "abc123",
  "isCreatePrivate": true,
  "deflection": FormDeflectionSettings,
  "externalFormId": FormExternalUrn,
  "userGroupIds": [UserGroupUrn],
  "actionSettings": ActionSettings,
  "tags": ["xyz789"],
  "jobFunctions": ["CUSTOMER_SUPPORT"],
  "iconUrl": "xyz789",
  "shouldCreateOnOnboarding": false,
  "permissions": [PermissionAssignment],
  "id": FormUrn,
  "fields": [FormFieldDescriptor],
  "workflowId": WorkflowUrn,
  "hasAutomation": false,
  "workflow": Workflow,
  "exampleInput": FormWebhookExample,
  "modifiedDate": DateTimeISO,
  "createdDate": DateTimeISO,
  "userGroups": Workflow,
  "currentUserPermissions": ["EXECUTE"]
}

FormCloneInput

Fields
Input Field Description
name - String!
type - FormType
description - String
isCreatePrivate - Boolean
deflection - FormDeflectionSettingsInput
externalFormId - FormExternalUrn
userGroupIds - [UserGroupUrn!]
actionSettings - ActionSettingsInput
tags - [String!]
jobFunctions - [JobFunction!]
iconUrl - String
shouldCreateOnOnboarding - Boolean
permissions - [PermissionAssignmentInput!]

A collection of permissions for this form controlling who can access, edit, and execute it.

newName - String
Example
{
  "name": "abc123",
  "type": "DEFAULT",
  "description": "xyz789",
  "isCreatePrivate": false,
  "deflection": FormDeflectionSettingsInput,
  "externalFormId": FormExternalUrn,
  "userGroupIds": [UserGroupUrn],
  "actionSettings": ActionSettingsInput,
  "tags": ["xyz789"],
  "jobFunctions": ["CUSTOMER_SUPPORT"],
  "iconUrl": "xyz789",
  "shouldCreateOnOnboarding": true,
  "permissions": [PermissionAssignmentInput],
  "newName": "abc123"
}

FormDeflectionSettings

Fields
Field Name Description
isEnabled - Boolean
identity - Urn
Example
{"isEnabled": true, "identity": Urn}

FormDeflectionSettingsInput

Fields
Input Field Description
isEnabled - Boolean
identity - Urn
Example
{"isEnabled": true, "identity": Urn}

FormExternalUrn

Description

FormExternalUrn created URN.

Example
FormExternalUrn

FormField

Fields
Field Name Description
id - Urn!
name - String!
placeholder - String
isSystemField - Boolean!
isRequired - Boolean
defaultValue - FieldTypedValue
description - String
type - FormFieldType!
visibility - FormFieldVisibility!
options - [FormFieldOption!]
optionsSettings - FormFieldOptionSettings
levels - [String!]
userGroupIds - [UserGroupUrn!]
asyncObjectType - AsyncObjectType
isTemplate - Boolean
permissions - [PermissionAssignment!] A collection of permissions for this object controlling who can access, edit, and execute it.
currentUserPermissions - [PermissionAction!]
Example
{
  "id": Urn,
  "name": "xyz789",
  "placeholder": "xyz789",
  "isSystemField": false,
  "isRequired": false,
  "defaultValue": FieldTypedValue,
  "description": "abc123",
  "type": "TEXT",
  "visibility": "REUSABLE",
  "options": [FormFieldOption],
  "optionsSettings": FormFieldOptionSettings,
  "levels": ["abc123"],
  "userGroupIds": [UserGroupUrn],
  "asyncObjectType": "USER",
  "isTemplate": false,
  "permissions": [PermissionAssignment],
  "currentUserPermissions": ["EXECUTE"]
}

FormFieldDescriptor

Fields
Field Name Description
fieldId - FormFieldUrn
isRequired - Boolean
isRequiredForAgent - Boolean
name - String
description - String
agentText - String
requestorText - String
defaultValue - FieldTypedReplaceableValue
placeholder - String
Example
{
  "fieldId": FormFieldUrn,
  "isRequired": true,
  "isRequiredForAgent": false,
  "name": "abc123",
  "description": "xyz789",
  "agentText": "abc123",
  "requestorText": "abc123",
  "defaultValue": FieldTypedReplaceableValue,
  "placeholder": "abc123"
}

FormFieldDescriptorInput

Fields
Input Field Description
fieldId - FormFieldUrn
isRequired - Boolean
isRequiredForAgent - Boolean
name - String
description - String
agentText - String
requestorText - String
defaultValue - FieldTypedReplaceableValueInput
placeholder - String
Example
{
  "fieldId": FormFieldUrn,
  "isRequired": true,
  "isRequiredForAgent": false,
  "name": "abc123",
  "description": "abc123",
  "agentText": "abc123",
  "requestorText": "xyz789",
  "defaultValue": FieldTypedReplaceableValueInput,
  "placeholder": "abc123"
}

FormFieldExecuteDynamicFields

Fields
Field Name Description
fields - [FormFieldDescriptor!]!
Example
{"fields": [FormFieldDescriptor]}

FormFieldExecuteDynamicFieldsInput

Fields
Input Field Description
formId - FormUrn
values - [FormFieldExecuteDynamicFieldsInputField!]!
workflow - WorkflowInput

If specified, will execute this workflow on the form instead of the default.

Example
{
  "formId": FormUrn,
  "values": [FormFieldExecuteDynamicFieldsInputField],
  "workflow": WorkflowInput
}

FormFieldExecuteDynamicFieldsInputField

Fields
Input Field Description
fieldId - FormFieldUrn!
value - FieldTypedValueBaseInput
Example
{
  "fieldId": FormFieldUrn,
  "value": FieldTypedValueBaseInput
}

FormFieldInput

Fields
Input Field Description
name - String!
description - String
placeholder - String
type - FormFieldType!
options - [FormFieldOptionInput!]
levels - [String!]
userGroupIds - [UserGroupUrn!]
visibility - FormFieldVisibility!
isTemplate - Boolean
permissions - [PermissionAssignmentInput!]

A collection of permissions for this object controlling who can access, edit, and execute it.

Example
{
  "name": "abc123",
  "description": "xyz789",
  "placeholder": "abc123",
  "type": "TEXT",
  "options": [FormFieldOptionInput],
  "levels": ["xyz789"],
  "userGroupIds": [UserGroupUrn],
  "visibility": "REUSABLE",
  "isTemplate": false,
  "permissions": [PermissionAssignmentInput]
}

FormFieldOption

Fields
Field Name Description
label - String!
description - String
value - String
dynamicChoiceContext - String
children - [FormFieldOption!]
Example
{
  "label": "abc123",
  "description": "abc123",
  "value": "xyz789",
  "dynamicChoiceContext": "xyz789",
  "children": [FormFieldOption]
}

FormFieldOptionInput

Fields
Input Field Description
label - String!
description - String
value - String
dynamicChoiceContext - String
children - [FormFieldOptionInput!]
Example
{
  "label": "xyz789",
  "description": "xyz789",
  "value": "abc123",
  "dynamicChoiceContext": "abc123",
  "children": [FormFieldOptionInput]
}

FormFieldOptionSettings

Fields
Field Name Description
emptyOptionsMessage - String
dynamicChoiceContext - String
Example
{
  "emptyOptionsMessage": "abc123",
  "dynamicChoiceContext": "abc123"
}

FormFieldReplacement

Fields
Field Name Description
groupId - Urn!
fieldId - Urn!
replacement - String!
Example
{
  "groupId": Urn,
  "fieldId": Urn,
  "replacement": "abc123"
}

FormFieldReplacementInput

Fields
Input Field Description
groupId - Urn!
fieldId - Urn!
replacement - String!
Example
{
  "groupId": Urn,
  "fieldId": Urn,
  "replacement": "xyz789"
}

FormFieldTemplate

Fields
Field Name Description
template - String
parameters - [FormFieldTemplateParameter!]
Example
{
  "template": "abc123",
  "parameters": [FormFieldTemplateParameter]
}

FormFieldTemplateParameter

Fields
Field Name Description
key - String
path - String
Example
{
  "key": "xyz789",
  "path": "xyz789"
}

FormFieldType

Description

Represents the status of the ticket

Values
Enum Value Description

TEXT

URL

EMAIL

FILES

SEARCH_TEXT

LONG_TEXT

DROPDOWN

ASYNC_DROPDOWN

MULTI_LEVEL_DROPDOWN

MULTI_SELECT_DROPDOWN

CHECKBOXES

BOOLEAN

NUMBER

DECIMAL

DATE

TIME

DATE_TIME

USER

USERS

PASSWORD

JSON

WORKFLOW

WORKFLOW_TICKET

Example
"TEXT"

FormFieldUrn

Description

FormFieldUrn created URN.

Example
FormFieldUrn

FormFieldVisibility

Description

Visibility type for a form field.

Values
Enum Value Description

REUSABLE

PRIVATE

Example
"REUSABLE"

FormInput

Fields
Input Field Description
name - String!
type - FormType
description - String
isCreatePrivate - Boolean
deflection - FormDeflectionSettingsInput
externalFormId - FormExternalUrn
userGroupIds - [UserGroupUrn!]
actionSettings - ActionSettingsInput
tags - [String!]
jobFunctions - [JobFunction!]
iconUrl - String
shouldCreateOnOnboarding - Boolean
permissions - [PermissionAssignmentInput!]

A collection of permissions for this form controlling who can access, edit, and execute it.

fields - [FormFieldDescriptorInput!]!
workflowId - WorkflowUrn
Example
{
  "name": "abc123",
  "type": "DEFAULT",
  "description": "xyz789",
  "isCreatePrivate": false,
  "deflection": FormDeflectionSettingsInput,
  "externalFormId": FormExternalUrn,
  "userGroupIds": [UserGroupUrn],
  "actionSettings": ActionSettingsInput,
  "tags": ["xyz789"],
  "jobFunctions": ["CUSTOMER_SUPPORT"],
  "iconUrl": "xyz789",
  "shouldCreateOnOnboarding": false,
  "permissions": [PermissionAssignmentInput],
  "fields": [FormFieldDescriptorInput],
  "workflowId": WorkflowUrn
}

FormType

Description

Type of form

Values
Enum Value Description

DEFAULT

ACTION

INBOUND_WEBHOOK

TEMPLATE

Example
"DEFAULT"

FormUrn

Description

FormUrn created URN.

Example
FormUrn

FormWebhookExample

Fields
Field Name Description
body - String
headers - Map
method - String
ipAddress - String
Example
{
  "body": "abc123",
  "headers": Map,
  "method": "abc123",
  "ipAddress": "xyz789"
}

HandleType

Description

The type of handle

Values
Enum Value Description

EMAIL

PHONE

SLACK

MICROSOFT

MICROSOFT_TEAMS

ZENDESK

INTERCOM

GITHUB

ROCKET_CHAT

SCIM_EXTERNAL_ID

SERVICE_NOW

Example
"EMAIL"

HandleUrn

Description

HandleUrn created URN.

Example
HandleUrn

HoldInput

Fields
Input Field Description
note - String

Any additional notes.

Example
{"note": "abc123"}

HolidayCountry

Fields
Field Name Description
name - String
id - String
Example
{
  "name": "abc123",
  "id": "xyz789"
}

HoursOfOperations

Fields
Field Name Description
startMinute - Float
endMinute - Float
dayOfWeek - DayOfWeek
Example
{"startMinute": 123.45, "endMinute": 123.45, "dayOfWeek": "MONDAY"}

HoursOfOperationsInput

Fields
Input Field Description
startMinute - Float
endMinute - Float
dayOfWeek - DayOfWeek
Example
{"startMinute": 987.65, "endMinute": 987.65, "dayOfWeek": "MONDAY"}

HubData

Fields
Field Name Description
name - String!
isSameAsSource - Boolean!
Example
{"name": "xyz789", "isSameAsSource": true}

HubSpokeDisable

Fields
Input Field Description
sourceId - Urn
Example
{"sourceId": Urn}

HubSpokeEnable

Fields
Input Field Description
destinationToken - String!
sourceId - Urn
Example
{
  "destinationToken": "abc123",
  "sourceId": Urn
}

HubSpokeStatus

Fields
Field Name Description
forwardingTo - HubSpokeStatusForward
forwardedFrom - [HubSpokeStatusForward!]!
Example
{
  "forwardingTo": HubSpokeStatusForward,
  "forwardedFrom": [HubSpokeStatusForward]
}

HubSpokeStatusForward

Fields
Field Name Description
name - String!
id - Urn!
Example
{
  "name": "abc123",
  "id": Urn
}

HubSpokeToken

Fields
Field Name Description
token - String
Example
{"token": "abc123"}

IdentityProvider

Description

Identity provider

Values
Enum Value Description

SLACK

GOOGLE

Example
"SLACK"

IdentityProviderInput

Fields
Input Field Description
redirectUrl - String
provider - IdentityProvider!
Example
{
  "redirectUrl": "abc123",
  "provider": "SLACK"
}

IdentityProviderOptions

Fields
Field Name Description
url - String!
Example
{"url": "xyz789"}

Int

Description

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

Example
123

Integration

Fields
Field Name Description
id - IntegrationUrn!
label - String!
createdDate - DateTimeISO!
connectionUrl - String
type - IntegrationType
actions - [IntegrationActionType!]
settings - [FieldTypedValue!]
jobs - [IntegrationJobRun!]
actionPermissions - [IntegrationActionGroupPermission!]
permissions - [PermissionAssignment!] A collection of permissions for this form controlling who can access, edit, and execute it.
currentUserPermissions - [PermissionAction!]
Example
{
  "id": IntegrationUrn,
  "label": "abc123",
  "createdDate": DateTimeISO,
  "connectionUrl": "xyz789",
  "type": "SLACK",
  "actions": ["CREATE_TICKET"],
  "settings": [FieldTypedValue],
  "jobs": [IntegrationJobRun],
  "actionPermissions": [IntegrationActionGroupPermission],
  "permissions": [PermissionAssignment],
  "currentUserPermissions": ["EXECUTE"]
}

IntegrationActionGroupPermission

Fields
Field Name Description
groupIds - [UserGroupUrn!]!
action - IntegrationActionType!
Example
{"groupIds": [UserGroupUrn], "action": "CREATE_TICKET"}

IntegrationActionGroupPermissionInput

Fields
Input Field Description
groupIds - [UserGroupUrn!]!
action - IntegrationActionType!
Example
{"groupIds": [UserGroupUrn], "action": "CREATE_TICKET"}

IntegrationActionType

Description

The types of actions that this integration can form

Values
Enum Value Description

CREATE_TICKET

EXECUTE

USER_DATA_PROVIDER

ARTICLE_PROVIDER

ANSWER_PROVIDER

LLM_PROVIDER

Example
"CREATE_TICKET"

IntegrationData

Fields
Field Name Description
id - Urn!
sourceIdentity - Urn!
url - String
isDefault - Boolean
label - String!
iconUrl - String
type - IntegrationType
groups - [IntegrationDataValueGroup!]!
Example
{
  "id": Urn,
  "sourceIdentity": Urn,
  "url": "xyz789",
  "isDefault": false,
  "label": "xyz789",
  "iconUrl": "abc123",
  "type": "SLACK",
  "groups": [IntegrationDataValueGroup]
}

IntegrationDataGroupType

Description

The types of actions that this integration can form

Values
Enum Value Description

CONTACT

ORGANIZATION

Example
"CONTACT"

IntegrationDataValue

Fields
Field Name Description
label - String!
text - String
value - String
type - IntegrationValueType!
isDefaultDisplayed - Boolean!
Example
{
  "label": "abc123",
  "text": "abc123",
  "value": "xyz789",
  "type": "LINK",
  "isDefaultDisplayed": true
}

IntegrationDataValueGroup

Fields
Field Name Description
label - String!
type - IntegrationDataGroupType
values - [IntegrationDataValue!]!
links - [IntegrationDataValueLink!]
Example
{
  "label": "abc123",
  "type": "CONTACT",
  "values": [IntegrationDataValue],
  "links": [IntegrationDataValueLink]
}

IntegrationJobRun

Fields
Field Name Description
name - String!
description - String!
startDate - DateTimeISO
completedDate - DateTimeISO
comments - String
status - IntegrationJobRunStatus!
Example
{
  "name": "abc123",
  "description": "xyz789",
  "startDate": DateTimeISO,
  "completedDate": DateTimeISO,
  "comments": "xyz789",
  "status": "PENDING"
}

IntegrationJobRunStatus

Description

The status of the integration job.

Values
Enum Value Description

PENDING

The integration job is pending or has not started yet.

STARTED

The integration job has started and is currently running.

COMPLETED

The integration job has completed successfully.

ERROR

The integration job has errored and failed to complete.
Example
"PENDING"

IntegrationSettingsInput

Fields
Input Field Description
id - IntegrationUrn!
label - String
settings - [FieldTypedValueInput!]
actionPermissions - [IntegrationActionGroupPermissionInput!]
permissions - [PermissionAssignmentInput!]

A collection of permissions for this form controlling who can access, edit, and execute it.

Example
{
  "id": IntegrationUrn,
  "label": "abc123",
  "settings": [FieldTypedValueInput],
  "actionPermissions": [
    IntegrationActionGroupPermissionInput
  ],
  "permissions": [PermissionAssignmentInput]
}

IntegrationSettingsMicrosoftTeamsAssociation

Fields
Input Field Description
token - String!
type - MicrosoftTeamsAssociationType!
Example
{"token": "abc123", "type": "TEAM"}

IntegrationType

Description

The type of integration

Values
Enum Value Description

SLACK

SLACK_BOT

SLACK_AGENT

ZENDESK

INTERCOM

FRESHDESK

ATLASSIAN

GITHUB

GITHUB_APP

MICROSOFT_TEAMS

SALESFORCE

SERVICE_NOW

WORKATO

ZAPIER

ONE_LOGIN

OKTA

HUBSPOT

INTEGROMAT

SERVICE

ROCKET_CHAT

APPROVALS

Example
"SLACK"

IntegrationUrn

Description

IntegrationUrn created URN.

Example
IntegrationUrn

IntegrationValueLinkIcon

Description

The of icon controlling the integration

Values
Enum Value Description

PROFILE

EXTERNAL

LINKEDIN

TWITTER

FACEBOOK

Example
"PROFILE"

IntegrationValueType

Description

The type of integration

Values
Enum Value Description

LINK

TEXT

EMAIL

PHONE

TIMEZONE

DATE

TIME

DATE_TIME

Example
"LINK"

IntegrationView

Fields
Field Name Description
id - IntegrationUrn!
title - String!
submit - String!
fields - [FormField!]!
Example
{
  "id": IntegrationUrn,
  "title": "abc123",
  "submit": "xyz789",
  "fields": [FormField]
}

IntergrationFormSubmit

Fields
Input Field Description
id - Urn
values - [FieldTypedValueInput!]
Example
{
  "id": Urn,
  "values": [FieldTypedValueInput]
}

JobFunction

Description

The type of user job function

Values
Enum Value Description

CUSTOMER_SUPPORT

CUSTOMER_SUCCESS

ENGINEERING

FINANCE

HUMAN_RESOURCES

INFORMATION_TECHNOLOGY

LEGAL

PARTNERSHIPS

PRODUCT

REVENUE_OPERATIONS

SALES

FOUNDER

SECURITY

OTHER

OTHER_INTERNAL

Example
"CUSTOMER_SUPPORT"

LogErrorInput

Fields
Input Field Description
name - String!
message - String!
stack - String!
code - String
innerError - LogErrorInput
data - Map
Example
{
  "name": "abc123",
  "message": "xyz789",
  "stack": "xyz789",
  "code": "xyz789",
  "innerError": LogErrorInput,
  "data": Map
}

LogLevel

Description

Log levels

Values
Enum Value Description

TRACE

Helpful for tracing

DEBUG

Default log level

INFO

Something informational

WARNING

Something problematic that is not an error.

ERROR

An error occured

FATAL

A fatal error occured
Example
"TRACE"

LogLineInput

Fields
Input Field Description
message - String!
level - LogLevel!
timestamp - DateTimeISO!
applicationSessionId - String!
component - String
data - Map
error - LogErrorInput
Example
{
  "message": "xyz789",
  "level": "TRACE",
  "timestamp": DateTimeISO,
  "applicationSessionId": "abc123",
  "component": "xyz789",
  "data": Map,
  "error": LogErrorInput
}

LoginError

Fields
Field Name Description
message - String!
code - String!
Example
{
  "message": "abc123",
  "code": "xyz789"
}

LoginResult

Types
Union Types

LoginError

Session

Example
LoginError

LoginType

Description

The type of login possible for the user.

Values
Enum Value Description

NONE

ENABLED

Example
"NONE"

LogsInput

Fields
Input Field Description
lines - [LogLineInput!]
metrics - [MetricInput!]
Example
{
  "lines": [LogLineInput],
  "metrics": [MetricInput]
}

MCPServer

Description

MCP Server

Fields
Field Name Description
name - String
permissions - [Permission!]! The set of allowed permissions
availableActionsIds - [FormUrn!]! The set of allowed permissions
availableTools - [ArtificialIntelligenceAgentTool!]! The tools that can be used by this MCP Server
id - MCPServerUrn! The identifier of the MCP Server
Example
{
  "name": "xyz789",
  "permissions": ["SUPER_ADMIN"],
  "availableActionsIds": [FormUrn],
  "availableTools": [ArtificialIntelligenceAgentTool],
  "id": MCPServerUrn
}

MCPServerInput

Fields
Input Field Description
name - String
permissions - [Permission!]!

The set of allowed permissions

availableActionsIds - [FormUrn!]!

The set of allowed permissions

availableTools - [ArtificialIntelligenceAgentToolInput!]!

The tools that can be used by this MCP Server

Example
{
  "name": "abc123",
  "permissions": ["SUPER_ADMIN"],
  "availableActionsIds": [FormUrn],
  "availableTools": [ArtificialIntelligenceAgentToolInput]
}

MCPServerUrl

Description

MCP Server url

Fields
Field Name Description
url - String! The secure url of the MCP server
Example
{"url": "abc123"}

MCPServerUrn

Description

MCPServerUrn created URN.

Example
MCPServerUrn

Map

Description

Standard key value string pair

Example
Map

MetricInput

Fields
Input Field Description
path - [String!]!
timestamp - DateTimeISO!
Example
{
  "path": ["abc123"],
  "timestamp": DateTimeISO
}

MetricsDashboard

Fields
Field Name Description
name - String!
settings - MetricsDashboardSettings!
permissions - [PermissionAssignment!] A collection of permissions for this dashboard
id - MetricsDashboardUrn!
installationId - AppInstallUrn!
creatorId - Urn!
creator - User!
currentUserPermissionAction - PermissionAction!
Example
{
  "name": "xyz789",
  "settings": MetricsDashboardSettings,
  "permissions": [PermissionAssignment],
  "id": MetricsDashboardUrn,
  "installationId": AppInstallUrn,
  "creatorId": Urn,
  "creator": User,
  "currentUserPermissionAction": "EXECUTE"
}

MetricsDashboardData

Example
{
  "rows": [MetricsDashboardDataRow],
  "columns": [MetricsDashboardDataColumn],
  "labels": [MetricsDashboardDataLabel],
  "dataSource": "TICKETS"
}

MetricsDashboardDataAvailableColumns

Fields
Field Name Description
columns - [MetricsDashboardDataColumnWithSource!]!
Example
{"columns": [MetricsDashboardDataColumnWithSource]}

MetricsDashboardDataColumn

Fields
Field Name Description
id - FormFieldUrn!
field - FormField!
Example
{
  "id": FormFieldUrn,
  "field": FormField
}

MetricsDashboardDataColumnWithSource

Fields
Field Name Description
columns - [MetricsDashboardDataColumn!]!
dataSource - MetricsDashboardGraphDataSource
Example
{
  "columns": [MetricsDashboardDataColumn],
  "dataSource": "TICKETS"
}

MetricsDashboardDataLabel

Fields
Field Name Description
id - String!
fieldId - FormFieldUrn!
label - String!
Example
{
  "id": "abc123",
  "fieldId": FormFieldUrn,
  "label": "xyz789"
}

MetricsDashboardDataResult

Fields
Field Name Description
data - MetricsDashboardData!
Example
{"data": MetricsDashboardData}

MetricsDashboardDataRow

Fields
Field Name Description
id - String!
values - [String]!
Example
{
  "id": "xyz789",
  "values": ["xyz789"]
}

MetricsDashboardGraph

Example
{
  "id": MetricsDashboardGraphUrn,
  "type": "TABLE",
  "dataSource": "TICKETS",
  "title": "xyz789",
  "locationX": 123.45,
  "locationY": 987.65,
  "width": 123.45,
  "height": 987.65,
  "dimensions": [MetricsDashboardGraphDimension],
  "metrics": [MetricsDashboardGraphMetric],
  "filters": MetricsDashboardGraphFilterGroup,
  "sort": [MetricsDashboardGraphSort]
}

MetricsDashboardGraphDataSource

Description

Data Source

Values
Enum Value Description

TICKETS

SLA

TAGS

FEEDBACK

Example
"TICKETS"

MetricsDashboardGraphDimension

Fields
Field Name Description
fieldId - FormFieldUrn!
label - String
format - MetricsDashboardGraphDimensionFormat
Example
{
  "fieldId": FormFieldUrn,
  "label": "xyz789",
  "format": "YEAR"
}

MetricsDashboardGraphDimensionFormat

Description

Dashboard graph dimension format

Values
Enum Value Description

YEAR

YEAR_MONTH

YEAR_MONTH_DAY

YEAR_MONTH_DAY_HOUR

YEAR_MONTH_DAY_HOUR_MINUTE

HOUR

HOUR_MINUTE

DAY_OF_WEEK

UTC_HOUR

UTC_HOUR_MINUTE

UTC_DAY_OF_WEEK

Example
"YEAR"

MetricsDashboardGraphDimensionInput

Fields
Input Field Description
fieldId - FormFieldUrn!
label - String
format - MetricsDashboardGraphDimensionFormat
Example
{
  "fieldId": FormFieldUrn,
  "label": "xyz789",
  "format": "YEAR"
}

MetricsDashboardGraphFilter

Fields
Field Name Description
fieldId - FormFieldUrn!
comparer - Comparison
value - FieldTypedValueBase
Example
{
  "fieldId": FormFieldUrn,
  "comparer": "EQUAL",
  "value": FieldTypedValueBase
}

MetricsDashboardGraphFilterGroup

Example
{
  "type": "AND",
  "children": [MetricsDashboardGraphFilterGroupChild]
}

MetricsDashboardGraphFilterGroupChild

Fields
Field Name Description
filter - MetricsDashboardGraphFilter
group - MetricsDashboardGraphFilterGroup
Example
{
  "filter": MetricsDashboardGraphFilter,
  "group": MetricsDashboardGraphFilterGroup
}

MetricsDashboardGraphFilterGroupChildInput

Fields
Input Field Description
filter - MetricsDashboardGraphFilterInput
group - MetricsDashboardGraphFilterGroupInput
Example
{
  "filter": MetricsDashboardGraphFilterInput,
  "group": MetricsDashboardGraphFilterGroupInput
}

MetricsDashboardGraphFilterGroupInput

Example
{
  "type": "AND",
  "children": [MetricsDashboardGraphFilterGroupChildInput]
}

MetricsDashboardGraphFilterGroupType

Description

Group Relationship Type

Values
Enum Value Description

AND

OR

Example
"AND"

MetricsDashboardGraphFilterInput

Fields
Input Field Description
fieldId - FormFieldUrn!
comparer - Comparison
value - FieldTypedValueBaseInput
Example
{
  "fieldId": FormFieldUrn,
  "comparer": "EQUAL",
  "value": FieldTypedValueBaseInput
}

MetricsDashboardGraphInput

Example
{
  "id": MetricsDashboardGraphUrn,
  "type": "TABLE",
  "dataSource": "TICKETS",
  "title": "xyz789",
  "locationX": 987.65,
  "locationY": 123.45,
  "width": 123.45,
  "height": 123.45,
  "dimensions": [MetricsDashboardGraphDimensionInput],
  "metrics": [MetricsDashboardGraphMetricInput],
  "filters": MetricsDashboardGraphFilterGroupInput,
  "sort": [MetricsDashboardGraphSortInput]
}

MetricsDashboardGraphMetric

Fields
Field Name Description
fieldId - FormFieldUrn!
aggregation - MetricsDashboardGraphTypeAggregation!
label - String
display - MetricsDashboardGraphTypeDisplayType
Example
{
  "fieldId": FormFieldUrn,
  "aggregation": "SUM",
  "label": "abc123",
  "display": "NUMBER"
}

MetricsDashboardGraphMetricInput

Fields
Input Field Description
fieldId - FormFieldUrn!
aggregation - MetricsDashboardGraphTypeAggregation!
label - String
display - MetricsDashboardGraphTypeDisplayType
Example
{
  "fieldId": FormFieldUrn,
  "aggregation": "SUM",
  "label": "xyz789",
  "display": "NUMBER"
}

MetricsDashboardGraphSort

Fields
Field Name Description
fieldId - FormFieldUrn!
direction - MetricsDashboardSortDirection!
Example
{"fieldId": FormFieldUrn, "direction": "ASCENDING"}

MetricsDashboardGraphSortInput

Fields
Input Field Description
fieldId - FormFieldUrn!
direction - MetricsDashboardSortDirection!
Example
{"fieldId": FormFieldUrn, "direction": "ASCENDING"}

MetricsDashboardGraphTemplate

Fields
Field Name Description
id - MetricsDashboardGraphUrn!
type - MetricsDashboardGraphType!
dataSource - MetricsDashboardGraphDataSource!
title - String!
locationX - Float!
locationY - Float!
width - Float!
height - Float!
dimensions - [MetricsDashboardGraphDimension!]
metrics - [MetricsDashboardGraphMetric!]
filters - MetricsDashboardGraphFilterGroup
sort - [MetricsDashboardGraphSort!]
description - String!
categories - [String!]!
Example
{
  "id": MetricsDashboardGraphUrn,
  "type": "TABLE",
  "dataSource": "TICKETS",
  "title": "xyz789",
  "locationX": 123.45,
  "locationY": 123.45,
  "width": 123.45,
  "height": 123.45,
  "dimensions": [MetricsDashboardGraphDimension],
  "metrics": [MetricsDashboardGraphMetric],
  "filters": MetricsDashboardGraphFilterGroup,
  "sort": [MetricsDashboardGraphSort],
  "description": "abc123",
  "categories": ["xyz789"]
}

MetricsDashboardGraphType

Description

Dashboard graph type

Values
Enum Value Description

TABLE

PIE_CHART

BAR_GRAPH

LINE_GRAPH

TIME_SERIES

COUNT

Example
"TABLE"

MetricsDashboardGraphTypeAggregation

Description

Dashboard graph metric aggregation

Values
Enum Value Description

SUM

AVERAGE

COUNT

COUNT_DISTINCT

MIN

MAX

MEDIAN

Example
"SUM"

MetricsDashboardGraphTypeDisplayType

Description

Dashboard graph display type

Values
Enum Value Description

NUMBER

FLOAT

PERCENTAGE

CURRENCY

DURATION

Example
"NUMBER"

MetricsDashboardGraphUrn

Description

MetricsDashboardGraphUrn created URN.

Example
MetricsDashboardGraphUrn

MetricsDashboardInput

Fields
Input Field Description
name - String!
settings - MetricsDashboardSettingsInput!
permissions - [PermissionAssignmentInput!]

A collection of permissions for this dashboard

Example
{
  "name": "abc123",
  "settings": MetricsDashboardSettingsInput,
  "permissions": [PermissionAssignmentInput]
}

MetricsDashboardSettings

Fields
Field Name Description
graphs - [MetricsDashboardGraph!]!
Example
{"graphs": [MetricsDashboardGraph]}

MetricsDashboardSettingsInput

Fields
Input Field Description
graphs - [MetricsDashboardGraphInput!]!
Example
{"graphs": [MetricsDashboardGraphInput]}

MetricsDashboardSortDirection

Description

Dashboard graph sort direction

Values
Enum Value Description

ASCENDING

DESCENDING

Example
"ASCENDING"

MetricsDashboardUrn

Description

MetricsDashboardUrn created URN.

Example
MetricsDashboardUrn

MetricsDashboardWithData

Fields
Field Name Description
dashboard - MetricsDashboard!
data - [MetricsDashboardData!]!
Example
{
  "dashboard": MetricsDashboard,
  "data": [MetricsDashboardData]
}

MetricsDataInput

Fields
Input Field Description
startDate - DateTimeISO!
endDate - DateTimeISO

Date when to stop filtering. If not specified, goes until today.

priorities - [TicketPriority!]

Priorities to filter by.

queueIds - [QueueUrn!]

Queue ids to filter by.

assigneeIds - [Urn!]

Assignee ids to filter by.

requesterIds - [Urn!]

Requester ids to filter by.

formIds - [FormUrn!]

Request form ids to filter by.

conversationSourceIds - [Urn!]

Channel or email source Ids

fieldIds - [FormFieldUrn!]!
dataSource - MetricsDashboardGraphDataSource!
Example
{
  "startDate": DateTimeISO,
  "endDate": DateTimeISO,
  "priorities": ["CRITICAL"],
  "queueIds": [QueueUrn],
  "assigneeIds": [Urn],
  "requesterIds": [Urn],
  "formIds": [FormUrn],
  "conversationSourceIds": [Urn],
  "fieldIds": [FormFieldUrn],
  "dataSource": "TICKETS"
}

MetricsInput

Fields
Input Field Description
startDate - DateTimeISO!
endDate - DateTimeISO

Date when to stop filtering. If not specified, goes until today.

priorities - [TicketPriority!]

Priorities to filter by.

queueIds - [QueueUrn!]

Queue ids to filter by.

assigneeIds - [Urn!]

Assignee ids to filter by.

requesterIds - [Urn!]

Requester ids to filter by.

formIds - [FormUrn!]

Request form ids to filter by.

conversationSourceIds - [Urn!]

Channel or email source Ids

id - MetricsDashboardUrn
Example
{
  "startDate": DateTimeISO,
  "endDate": DateTimeISO,
  "priorities": ["CRITICAL"],
  "queueIds": [QueueUrn],
  "assigneeIds": [Urn],
  "requesterIds": [Urn],
  "formIds": [FormUrn],
  "conversationSourceIds": [Urn],
  "id": MetricsDashboardUrn
}

MicrosoftTeamsAssociationType

Description

The type of Microsoft association

Values
Enum Value Description

TEAM

VENDOR

Example
"TEAM"

OkResult

Fields
Field Name Description
ok - Boolean! Returns if the operation was successful.
Example
{"ok": true}

OnboardingProfile

Fields
Field Name Description
jobFunction - JobFunction
channelMode - ChannelMode
isEmojiEnabled - Boolean
shouldCreateDemoChannel - Boolean
isChannelMenuEnabled - Boolean
installedWorkflowServiceId - WorkflowServiceUrn
isSelectedFoqalTicketing - Boolean
lastStep - OnboardingStep
applicationIconUrl - String
applicationName - String
homeStepsCompleted - [String!]
stepsCompleted - [String!]
artificialIntelligenceWorkflowServiceId - WorkflowServiceUrn
isExternalSupport - Boolean
Example
{
  "jobFunction": "CUSTOMER_SUPPORT",
  "channelMode": "THREADED",
  "isEmojiEnabled": false,
  "shouldCreateDemoChannel": false,
  "isChannelMenuEnabled": false,
  "installedWorkflowServiceId": WorkflowServiceUrn,
  "isSelectedFoqalTicketing": false,
  "lastStep": "PICK_ROLE",
  "applicationIconUrl": "xyz789",
  "applicationName": "xyz789",
  "homeStepsCompleted": ["xyz789"],
  "stepsCompleted": ["abc123"],
  "artificialIntelligenceWorkflowServiceId": WorkflowServiceUrn,
  "isExternalSupport": true
}

OnboardingProfileInput

Fields
Input Field Description
jobFunction - JobFunction
channelMode - ChannelMode
isEmojiEnabled - Boolean
shouldCreateDemoChannel - Boolean
isChannelMenuEnabled - Boolean
installedWorkflowServiceId - WorkflowServiceUrn
isSelectedFoqalTicketing - Boolean
lastStep - OnboardingStep
applicationIconUrl - String
applicationName - String
homeStepsCompleted - [String!]
stepsCompleted - [String!]
artificialIntelligenceWorkflowServiceId - WorkflowServiceUrn
Example
{
  "jobFunction": "CUSTOMER_SUPPORT",
  "channelMode": "THREADED",
  "isEmojiEnabled": true,
  "shouldCreateDemoChannel": true,
  "isChannelMenuEnabled": false,
  "installedWorkflowServiceId": WorkflowServiceUrn,
  "isSelectedFoqalTicketing": true,
  "lastStep": "PICK_ROLE",
  "applicationIconUrl": "abc123",
  "applicationName": "xyz789",
  "homeStepsCompleted": ["xyz789"],
  "stepsCompleted": ["abc123"],
  "artificialIntelligenceWorkflowServiceId": WorkflowServiceUrn
}

OnboardingStep

Description

Step executed by onboarding

Values
Enum Value Description

PICK_ROLE

CONTACT_MODE

Example
"PICK_ROLE"

Permission

Description

Types of permissions

Values
Enum Value Description

SUPER_ADMIN

SUPER_ADMINISTRATOR_REPORTS

ADMINISTRATOR

GROUP_ADMINISTRATOR

REPORTS

ADMINISTRATOR_REPORTS

LOGIN

ARTICLE_READ

ARTICLE_READ_PUBLIC

ARTICLE_MODIFY

TICKETS_MODIFY

TICKETS_COMMENT

TICKETS_READ

TICKETS_READ_ALL

TICKETS_READ_SELF

TICKET_CREATE

TICKET_CREATE_PUBLIC

TICKET_CREATE_GUEST

TICKET_STATE_MODIFY

TICKET_APPROVALS_MODIFY

TICKET_TASK_MODIFY

CHATS_READ

CHATS_MODIFY

CHATS_READ_ALL

CHATS_MODIFY_ALL

COMPOSED_MESSAGES

USERS_READ

USERS_CREATE

USERS_WRITE

GROUPS_READ

GROUPS_WRITE

GROUPS_CREATE_GUEST

READ_INTEGRATION

REGISTER_INTEGRATION

IMPERSONATE

INTEGRATION_TESTING

Example
"SUPER_ADMIN"

PermissionAction

Description

Type of action that the user is able to perform.

Values
Enum Value Description

EXECUTE

READ

MODIFY

Example
"EXECUTE"

PermissionAssignment

Description

Permission assignments specify a mapping between a user or group and an object

Fields
Field Name Description
action - PermissionAction! The type of permission
assigneeId - Urn
objectId - Urn
Example
{
  "action": "EXECUTE",
  "assigneeId": Urn,
  "objectId": Urn
}

PermissionAssignmentInput

Description

Permission assignments specify a mapping between a user or group and an object

Fields
Input Field Description
action - PermissionAction!

The type of permission

assigneeId - Urn
objectId - Urn
Example
{
  "action": "EXECUTE",
  "assigneeId": Urn,
  "objectId": Urn
}

PingEvent

Fields
Field Name Description
action - PortalEventType!
Example
{"action": "CONVERSATION_NEW"}

PlanEntitlementUrn

Description

PlanEntitlementUrn created URN.

Example
PlanEntitlementUrn

PongEvent

Fields
Field Name Description
action - PortalEventType!
Example
{"action": "CONVERSATION_NEW"}

Portal

Fields
Field Name Description
id - PortalUrn! Id of the portal.
installationId - AppInstallUrn! Id of the installation.
title - String Title to display for the portal.
welcomeMessage - String The welcome greeting.
chatToken - String If a chat token is specified, use the token to configure the web chat.
permissions - [Permission!]! Your users permissions associated with this portal.
publicPermissions - [Permission!]! The public permissions allowed by this portal settings.
guestPermissions - [Permission!]! The guest permissions allowed by this portal settings.
isSharedChannelGuest - Boolean Should guests coming from a shared be considered guests or public?
guestAnswerProviderId - Urn The guest answer provider (All logged in users).
publicAnswerProviderId - Urn The public answer provider (Unauthenticated users).
publicFormIds - [FormUrn!] The forms which are allowed to be created by the public.
guestFormIds - [FormUrn!] The forms which are allowed to be created by logged in guests.
domains - [String!] Portal domain names.
portalIndexProvider - PortalIndexProvider If an index provier was selected.
indexArticleId - ArticleUrn The default page that should show when anyone goes to /answers.
isAIEnabled - Boolean Whether AI module is enabled for this portal
billing - PortalBilling Billing information.
entitlementIds - [PlanEntitlementUrn!] Company Entitlements
banner - PortalBanner Banner message.
singleSignOn - PortalSingleSignOn Single Sign on Settings
userProvisioning - PortalUserProvisioning SCIM settings
signIn - PortalSigninSettings Signin settings.
aiFeatures - ArtificialIntelligenceSettingsFeatures AI Settings.
navigation - PortalSettingsNavigation Portal navigation links.
unsafeDomain - PortalSettingsUnsafeDomain Portal settings for logging into the unsafe domain.
Example
{
  "id": PortalUrn,
  "installationId": AppInstallUrn,
  "title": "abc123",
  "welcomeMessage": "abc123",
  "chatToken": "abc123",
  "permissions": ["SUPER_ADMIN"],
  "publicPermissions": ["SUPER_ADMIN"],
  "guestPermissions": ["SUPER_ADMIN"],
  "isSharedChannelGuest": true,
  "guestAnswerProviderId": Urn,
  "publicAnswerProviderId": Urn,
  "publicFormIds": [FormUrn],
  "guestFormIds": [FormUrn],
  "domains": ["abc123"],
  "portalIndexProvider": "OPEN_AI",
  "indexArticleId": ArticleUrn,
  "isAIEnabled": false,
  "billing": PortalBilling,
  "entitlementIds": [PlanEntitlementUrn],
  "banner": PortalBanner,
  "singleSignOn": PortalSingleSignOn,
  "userProvisioning": PortalUserProvisioning,
  "signIn": PortalSigninSettings,
  "aiFeatures": ArtificialIntelligenceSettingsFeatures,
  "navigation": PortalSettingsNavigation,
  "unsafeDomain": PortalSettingsUnsafeDomain
}

PortalBanner

Fields
Field Name Description
message - String The message to display.
linkUrl - String Link redirecting to.
type - PortalBannerType The type of banner
expirationDate - DateTimeISO Banner expiration date.
Example
{
  "message": "abc123",
  "linkUrl": "abc123",
  "type": "DANGER",
  "expirationDate": DateTimeISO
}

PortalBannerType

Description

The type of banner

Values
Enum Value Description

DANGER

WARNING

INFO

Example
"DANGER"

PortalBilling

Fields
Field Name Description
isSetup - Boolean Has billing been setup
purchasedUserCount - Float The number of purchased users.
availableSeats - Float The number of available seats to use.
Example
{"isSetup": true, "purchasedUserCount": 987.65, "availableSeats": 987.65}

PortalBillingOrder

Fields
Input Field Description
lines - [PortalBillingOrderLine!]!

Line items of what to order

Example
{"lines": [PortalBillingOrderLine]}

PortalBillingOrderComplete

Fields
Field Name Description
redirectUrl - String The url to redirect to to complete the order.
errorMessage - String An error if one occurred.
Example
{
  "redirectUrl": "xyz789",
  "errorMessage": "abc123"
}

PortalBillingOrderLine

Fields
Input Field Description
quantity - Float

Quantity of items

encryptedPriceId - String!

The price id encrypted.

Example
{
  "quantity": 123.45,
  "encryptedPriceId": "abc123"
}

PortalBillingPayment

Fields
Field Name Description
date - DateTimeISO! The date of the payment.
amount - Float! The amount of the payment.
receiptUrl - String The url of the receipt.
currency - String! The currency.
status - PortalPaymentStatus! The status of the payment.
Example
{
  "date": DateTimeISO,
  "amount": 123.45,
  "receiptUrl": "xyz789",
  "currency": "xyz789",
  "status": "ERROR"
}

PortalBillingPayments

Fields
Field Name Description
payments - [PortalBillingPayment!]! Current account subscriptions.
Example
{"payments": [PortalBillingPayment]}

PortalBillingProfile

Fields
Field Name Description
redirectUrl - String Redirect URL to customer portal if already setup and need to redirect to management page.
sessionId - String The unique customer session id used to validate requests from Stripe.
pricingTableId - String Stripe Price table id
currentUserEmail - String Current users email
publishableKey - String Stripe Publishable key
defaultQuantity - Float Default number of users
tiers - [PortalBillingTier!] Checkout tier options
subscriptions - [PortalBillingSubscription!] Current account subscriptions.
Example
{
  "redirectUrl": "abc123",
  "sessionId": "abc123",
  "pricingTableId": "xyz789",
  "currentUserEmail": "xyz789",
  "publishableKey": "abc123",
  "defaultQuantity": 987.65,
  "tiers": [PortalBillingTier],
  "subscriptions": [PortalBillingSubscription]
}

PortalBillingSubscription

Fields
Field Name Description
encryptedSubscriptionId - String! The encrypted id of the subscription.
status - String! The name of the plan.
seatCount - Float! The number of seats with this subscription.
startDate - DateTimeISO The date the subscription starts.
endDate - DateTimeISO The date the subscription ended or will end.
canceledDate - DateTimeISO If the subscription is canceled, this is the canceled date.
nextRenewalDate - DateTimeISO The date the subscription renews or ends.
discount - Float The discount amount.
tier - PortalBillingTier! The tier of this subscription.
price - PortalBillingTierPrice! The price of this subscription.
Example
{
  "encryptedSubscriptionId": "abc123",
  "status": "xyz789",
  "seatCount": 123.45,
  "startDate": DateTimeISO,
  "endDate": DateTimeISO,
  "canceledDate": DateTimeISO,
  "nextRenewalDate": DateTimeISO,
  "discount": 987.65,
  "tier": PortalBillingTier,
  "price": PortalBillingTierPrice
}

PortalBillingTier

Fields
Field Name Description
encryptedTierId - String! The id of the plan.
name - String! The name of the plan.
description - String! The name of the plan.
benefits - [String!]! The benefits of this plan.
excludedBenefits - [String!] The benefits not in this plan.
prices - [PortalBillingTierPrice!]! The prices for this tier.
Example
{
  "encryptedTierId": "abc123",
  "name": "xyz789",
  "description": "xyz789",
  "benefits": ["abc123"],
  "excludedBenefits": ["xyz789"],
  "prices": [PortalBillingTierPrice]
}

PortalBillingTierDuration

Description

The duration of a billing tier

Values
Enum Value Description

YEAR

MONTH

Example
"YEAR"

PortalBillingTierPrice

Fields
Field Name Description
encryptedPriceId - String! The price id encrypted.
price - Float! The price.
currency - String! The currency.
numberOfUsers - Float! The number of users included in price.
minimumNumberOfUsers - Float! The minumim number of users required for this price.
duration - PortalBillingTierDuration! The duration of this plan.
isRecommended - Boolean The recommended price
Example
{
  "encryptedPriceId": "abc123",
  "price": 123.45,
  "currency": "abc123",
  "numberOfUsers": 123.45,
  "minimumNumberOfUsers": 987.65,
  "duration": "YEAR",
  "isRecommended": true
}

PortalChatEvent

Fields
Field Name Description
action - PortalEventType!
chatId - Urn!
chat - Chat
Example
{
  "action": "CONVERSATION_NEW",
  "chatId": Urn,
  "chat": Chat
}

PortalChatResyncEvent

Fields
Field Name Description
action - PortalEventType!
chatId - Urn!
Example
{"action": "CONVERSATION_NEW", "chatId": Urn}

PortalEvent

PortalEventType

Description

The type of event being sent.

Values
Enum Value Description

CONVERSATION_NEW

CONVERSATION_IGNORED

CONVERSATION_ASSIGNED

CONVERSATION_DELETED

STATUS_CHANGED

MESSAGE_NEW

MESSAGE_EDITED

MESSAGE_DELETED

MESSAGE_REMOVED

MESSAGE_REDACTED

MESSAGE_STATUS

USER_CONNECTED

USER_DISCONNECTED

USER_RECONNECTED

NOTE_ADDED

SYSTEM_MESSAGE

REACTION_ADDED

REACTION_REMOVED

RESYNC

PING

PONG

REGISTER

SUCCESS

PARTICIPANTS_ADDED

PARTICIPANTS_REMOVED

SNOOZE_STARTED

SNOOZE_STOPPED

HOLD_STARTED

HOLD_STOPPED

TICKET_STATE_CHANGED

PRIORITY_CHANGED

TICKET_FIELDS_CHANGED

PARTICIPANT_MARK_READ

PARTICIPANT_MARK_UNREAD

TASK_CREATED

TASK_UPDATED

TASK_DELETED

Example
"CONVERSATION_NEW"

PortalHoldEvent

Fields
Field Name Description
action - PortalEventType!
chatId - Urn!
Example
{"action": "CONVERSATION_NEW", "chatId": Urn}

PortalIndexProvider

Description

Index used for portal

Values
Enum Value Description

OPEN_AI

CUSTOM

NONE

Example
"OPEN_AI"

PortalMessageAttachment

Fields
Field Name Description
urlSha256 - String!
altText - String!
imageUrl - String!
title - String!
mimeType - String!
Example
{
  "urlSha256": "abc123",
  "altText": "xyz789",
  "imageUrl": "xyz789",
  "title": "xyz789",
  "mimeType": "xyz789"
}

PortalMessageEvent

Fields
Field Name Description
action - PortalEventType!
chatId - Urn!
messageId - Urn!
sourceMessageIds - [Urn!]!
date - DateTimeISO!
message - RichBody!
status - TicketMessageStatus
originalBody - RichBody
isDeleted - Boolean
redactedDate - DateTimeISO
type - TicketMessageType!
sender - PortalSender
attachments - [PortalMessageAttachment!]
articles - [TicketMessageArticle!]
reactions - [TicketMessageReaction!] The collection of people which reacted to this message.
Example
{
  "action": "CONVERSATION_NEW",
  "chatId": Urn,
  "messageId": Urn,
  "sourceMessageIds": [Urn],
  "date": DateTimeISO,
  "message": RichBody,
  "status": TicketMessageStatus,
  "originalBody": RichBody,
  "isDeleted": false,
  "redactedDate": DateTimeISO,
  "type": "USER_MESSAGE",
  "sender": PortalSender,
  "attachments": [PortalMessageAttachment],
  "articles": [TicketMessageArticle],
  "reactions": [TicketMessageReaction]
}

PortalNoteAddedEvent

Fields
Field Name Description
action - PortalEventType!
chatId - Urn!
date - DateTimeISO!
message - RichBody!
messageId - Urn!
sourceMessageIds - [Urn!]!
sender - PortalSender
attachments - [PortalMessageAttachment!]
type - TicketMessageType!
Example
{
  "action": "CONVERSATION_NEW",
  "chatId": Urn,
  "date": DateTimeISO,
  "message": RichBody,
  "messageId": Urn,
  "sourceMessageIds": [Urn],
  "sender": PortalSender,
  "attachments": [PortalMessageAttachment],
  "type": "USER_MESSAGE"
}

PortalParticipantActionEvent

Fields
Field Name Description
action - PortalEventType!
chatId - Urn!
date - DateTimeISO!
Example
{
  "action": "CONVERSATION_NEW",
  "chatId": Urn,
  "date": DateTimeISO
}

PortalParticipantEvent

Fields
Field Name Description
action - PortalEventType!
chatId - Urn!
date - DateTimeISO!
note - RichBody!
chat - Chat
participants - [PortalSender!]
Example
{
  "action": "CONVERSATION_NEW",
  "chatId": Urn,
  "date": DateTimeISO,
  "note": RichBody,
  "chat": Chat,
  "participants": [PortalSender]
}

PortalPaymentStatus

Description

The status of the payment.

Values
Enum Value Description

ERROR

PROCESSING

SUCCEEDED

Example
"ERROR"

PortalReactionEvent

Fields
Field Name Description
action - PortalEventType!
chatId - Urn!
messageId - Urn!
sender - PortalSender
reaction - String!
Example
{
  "action": "CONVERSATION_NEW",
  "chatId": Urn,
  "messageId": Urn,
  "sender": PortalSender,
  "reaction": "abc123"
}

PortalRegisterEvent

Fields
Field Name Description
action - PortalEventType!
sessionToken - String!
url - String!
Example
{
  "action": "CONVERSATION_NEW",
  "sessionToken": "abc123",
  "url": "xyz789"
}

PortalRequestSettings

Fields
Input Field Description
shouldGetAllLinks - Boolean

Session duration

Example
{"shouldGetAllLinks": false}

PortalSender

Fields
Field Name Description
id - Urn!
name - String!
iconUrl - String!
type - SenderType!
isCurrentUser - Boolean!
Example
{
  "id": Urn,
  "name": "abc123",
  "iconUrl": "abc123",
  "type": "AGENT",
  "isCurrentUser": true
}

PortalSettingsIcon

Description

Which icons should be available.

Values
Enum Value Description

WEBSITE

LINKEDIN

TWITTER

FACEBOOK

SUPPORT

STATUS

HOMEPAGE

CODE

SECURITY

LEGAL

Example
"WEBSITE"

PortalSettingsInput

Fields
Input Field Description
title - String!

Title to display for the portal.

welcomeMessage - String!

The welcome greeting.

publicPermissions - [Permission!]!

Users public permissions.

guestPermissions - [Permission!]!

Guest user permissions.

portalIndexProvider - PortalIndexProvider

The welcome greeting.

publicFormIds - [FormUrn!]

The forms which are allowed to be created by the public.

guestAnswerProviderId - Urn

The guest answer provider (All logged in users).

publicAnswerProviderId - Urn

The public answer provider (Unauthenticated users).

isSharedChannelGuest - Boolean

Should guests coming from a shared be considered guests or public?

guestFormIds - [FormUrn!]

The forms which are allowed to be created by logged in guests.

indexArticleId - ArticleUrn

The default page that should show when anyone goes to /answers.

isAIEnabled - Boolean

Whether AI module is enabled for this portal

singleSignOn - PortalSingleSignOnInput

Single Sign on Settings

userProvisioning - PortalUserProvisioningInput

SCIM settings

signIn - PortalSigninSettingsInput

Signin settings.

navigation - PortalSettingsNavigationInput

Portal navigation links.

Example
{
  "title": "abc123",
  "welcomeMessage": "xyz789",
  "publicPermissions": ["SUPER_ADMIN"],
  "guestPermissions": ["SUPER_ADMIN"],
  "portalIndexProvider": "OPEN_AI",
  "publicFormIds": [FormUrn],
  "guestAnswerProviderId": Urn,
  "publicAnswerProviderId": Urn,
  "isSharedChannelGuest": true,
  "guestFormIds": [FormUrn],
  "indexArticleId": ArticleUrn,
  "isAIEnabled": false,
  "singleSignOn": PortalSingleSignOnInput,
  "userProvisioning": PortalUserProvisioningInput,
  "signIn": PortalSigninSettingsInput,
  "navigation": PortalSettingsNavigationInput
}

PortalSettingsLinkInput

Fields
Input Field Description
icon - PortalSettingsIcon

Portal visible navigation links.

text - String

Title to display for the portal.

url - String

Title to display for the portal.

visibility - PortalSettingsLinkVisibility

Title to display for the portal.

Example
{
  "icon": "WEBSITE",
  "text": "xyz789",
  "url": "abc123",
  "visibility": "PUBLIC"
}

PortalSettingsLinkVisibility

Description

Where should a link be visible.

Values
Enum Value Description

PUBLIC

INTERNAL

EVERYONE

Example
"PUBLIC"

PortalSettingsNavigation

Fields
Field Name Description
links - [PortalSettingsLink!] Portal visible navigation links.
Example
{"links": [PortalSettingsLink]}

PortalSettingsNavigationInput

Fields
Input Field Description
links - [PortalSettingsLinkInput!]

Portal visible navigation links.

Example
{"links": [PortalSettingsLinkInput]}

PortalSettingsUnsafeDomain

Fields
Field Name Description
loginValidationUrl - String Url used to see if the user is currently logged into the unsafe domain.
Example
{"loginValidationUrl": "xyz789"}

PortalSigninSettings

Fields
Field Name Description
allowedSigninMethods - [AllowedSignInMethods!] Which methods a user is allowed to use to sign in.
sessionDuration - Float Session duration
defaultSignInMethod - AllowedSignInMethods Which method should Foqal try to login by default
Example
{
  "allowedSigninMethods": ["SLACK"],
  "sessionDuration": 987.65,
  "defaultSignInMethod": "SLACK"
}

PortalSigninSettingsInput

Fields
Input Field Description
allowedSigninMethods - [AllowedSignInMethods!]

Which methods a user is allowed to use to sign in.

sessionDuration - Float

Session duration

defaultSignInMethod - AllowedSignInMethods

Which method should Foqal try to login by default

Example
{
  "allowedSigninMethods": ["SLACK"],
  "sessionDuration": 987.65,
  "defaultSignInMethod": "SLACK"
}

PortalSingleSignOn

Fields
Field Name Description
isEnabled - Boolean Whether SSO is enabled
loginRedirectUrl - String IDP Redirect URL
identityProviderMetadata - String IDP metadata
providerLoginUrl - String Foqal SP Login Url
Example
{
  "isEnabled": false,
  "loginRedirectUrl": "xyz789",
  "identityProviderMetadata": "abc123",
  "providerLoginUrl": "abc123"
}

PortalSingleSignOnInput

Fields
Input Field Description
isEnabled - Boolean

Whether SSO is enabled

loginRedirectUrl - String

IDP Redirect URL

identityProviderMetadata - String

IDP metadata

Example
{
  "isEnabled": true,
  "loginRedirectUrl": "xyz789",
  "identityProviderMetadata": "abc123"
}

PortalSnoozeEvent

Fields
Field Name Description
action - PortalEventType!
chatId - Urn!
Example
{"action": "CONVERSATION_NEW", "chatId": Urn}

PortalSubscriptionChange

Fields
Input Field Description
encryptedSubscriptionId - String!

The price id encrypted.

encryptedPriceId - String

The encrypted price id if we want to upgrade/downgrade the tier.

quantity - Float

Quantity of items

Example
{
  "encryptedSubscriptionId": "xyz789",
  "encryptedPriceId": "xyz789",
  "quantity": 987.65
}

PortalSuccessEvent

Fields
Field Name Description
action - PortalEventType!
responseTo - PortalEventType!
isOk - Boolean!
Example
{"action": "CONVERSATION_NEW", "responseTo": "CONVERSATION_NEW", "isOk": false}

PortalTaskUpdatedEvent

Fields
Field Name Description
action - PortalEventType!
chatId - Urn!
id - TicketTaskUrn!
task - TicketTask
actor - PortalSender
Example
{
  "action": "CONVERSATION_NEW",
  "chatId": Urn,
  "id": TicketTaskUrn,
  "task": TicketTask,
  "actor": PortalSender
}

PortalTicketChanged

Fields
Field Name Description
action - PortalEventType!
chatId - Urn!
changedFields - [PortalTicketChangedField!]
Example
{
  "action": "CONVERSATION_NEW",
  "chatId": Urn,
  "changedFields": [PortalTicketChangedField]
}

PortalTicketChangedField

Fields
Field Name Description
fieldId - FormFieldUrn!
previous - FieldTypedValueBase
current - FieldTypedValueBase
Example
{
  "fieldId": FormFieldUrn,
  "previous": FieldTypedValueBase,
  "current": FieldTypedValueBase
}

PortalUrn

Description

PortalUrn created URN.

Example
PortalUrn

PortalUserEvent

Fields
Field Name Description
action - PortalEventType!
chatId - Urn!
id - Urn!
name - String!
iconUrl - String!
Example
{
  "action": "CONVERSATION_NEW",
  "chatId": Urn,
  "id": Urn,
  "name": "abc123",
  "iconUrl": "abc123"
}

PortalUserProvisioning

Fields
Field Name Description
administratorGroupId - UserGroupUrn An user added to this group will be added as an administrator.
providerSCIMUrl - String Foqal SCIM endpoint
Example
{
  "administratorGroupId": UserGroupUrn,
  "providerSCIMUrl": "xyz789"
}

PortalUserProvisioningInput

Fields
Input Field Description
administratorGroupId - UserGroupUrn

An user added to this group will be added as an administrator.

Example
{"administratorGroupId": UserGroupUrn}

Queue

Fields
Field Name Description
name - String!
description - String
channelTags - [String!]!
userAssignmentType - AssignmentType
integrationIds - [IntegrationUrn!]!
emailAliasIds - [ChannelEmailUrn!]!
permissions - [PermissionAssignment!] A collection of permissions for this object controlling who can access, edit, and execute it.
id - QueueUrn!
members - [QueueMember!]!
isDefault - Boolean
currentUserPermissions - [PermissionAction!]
Example
{
  "name": "abc123",
  "description": "xyz789",
  "channelTags": ["abc123"],
  "userAssignmentType": "NONE",
  "integrationIds": [IntegrationUrn],
  "emailAliasIds": [ChannelEmailUrn],
  "permissions": [PermissionAssignment],
  "id": QueueUrn,
  "members": [QueueMember],
  "isDefault": false,
  "currentUserPermissions": ["EXECUTE"]
}

QueueFilters

Fields
Input Field Description
shouldFilterMyQueues - Boolean
Example
{"shouldFilterMyQueues": true}

QueueInput

Fields
Input Field Description
name - String!
description - String
channelTags - [String!]!
userAssignmentType - AssignmentType
integrationIds - [IntegrationUrn!]!
emailAliasIds - [ChannelEmailUrn!]!
permissions - [PermissionAssignmentInput!]

A collection of permissions for this object controlling who can access, edit, and execute it.

members - [QueueMemberInput!]!
Example
{
  "name": "xyz789",
  "description": "xyz789",
  "channelTags": ["abc123"],
  "userAssignmentType": "NONE",
  "integrationIds": [IntegrationUrn],
  "emailAliasIds": [ChannelEmailUrn],
  "permissions": [PermissionAssignmentInput],
  "members": [QueueMemberInput]
}

QueueMember

Fields
Field Name Description
userId - Urn
memberId - Urn
role - QueueMemberRole!
user - User
group - UserGroup
Example
{
  "userId": Urn,
  "memberId": Urn,
  "role": "ASSIGNEE",
  "user": User,
  "group": UserGroup
}

QueueMemberInput

Fields
Input Field Description
userId - Urn
memberId - Urn
role - QueueMemberRole!
Example
{
  "userId": Urn,
  "memberId": Urn,
  "role": "ASSIGNEE"
}

QueueMemberRole

Description

The role of the user in the queue

Values
Enum Value Description

ASSIGNEE

OBSERVER

Example
"ASSIGNEE"

QueueUrn

Description

QueueUrn created URN.

Example
QueueUrn

RequiredField

Description

Which field is required

Values
Enum Value Description

TAGS

TICKET_NOTES

Example
"TAGS"

RichBody

Fields
Field Name Description
html - String
plaintext - String
markdown - String
Example
{
  "html": "xyz789",
  "plaintext": "xyz789",
  "markdown": "abc123"
}

RichBodyInput

Fields
Input Field Description
html - String
plaintext - String
markdown - String
Example
{
  "html": "abc123",
  "plaintext": "xyz789",
  "markdown": "xyz789"
}

RoutingPolicyUrn

Description

RoutingPolicyUrn created URN.

Example
RoutingPolicyUrn

SearchFiltersInput

Fields
Input Field Description
startDate - DateTimeISO
endDate - DateTimeISO
status - TicketStatus
priority - TicketPriority
tags - [String!]
formIds - [FormUrn!]
requestorId - Urn
creatorId - Urn
assignedAgentId - Urn
sourceIds - [Urn!]
queueIds - [QueueUrn!]
Example
{
  "startDate": DateTimeISO,
  "endDate": DateTimeISO,
  "status": "OPEN",
  "priority": "CRITICAL",
  "tags": ["xyz789"],
  "formIds": [FormUrn],
  "requestorId": Urn,
  "creatorId": Urn,
  "assignedAgentId": Urn,
  "sourceIds": [Urn],
  "queueIds": [QueueUrn]
}

SearchSortBy

Description

Which field to use to sort the search results

Values
Enum Value Description

PRIORITY_ASCENDING

PRIORITY_DESCENDING

CREATED_DATE_ASCENDING

CREATED_DATE_DESCENDING

RELEVANCE

Example
"PRIORITY_ASCENDING"

SendChannelInviteInput

Description

Input type for sending a channel invitation to a new user

Fields
Input Field Description
name - String!

The name of the person being invited

email - String!

The email address of the person being invited

companyName - String!

The company name of the person being invited

inviteId - ChannelInviteUrn!

The unique identifier for this channel invitation

Example
{
  "name": "abc123",
  "email": "xyz789",
  "companyName": "xyz789",
  "inviteId": ChannelInviteUrn
}

SendFromType

Description

Who to send the message as

Values
Enum Value Description

AGENT

The message should be sent as the default Agent user

ME

The message should be sent as me

USER

The message should be sent as the user specified
Example
"AGENT"

SenderType

Description

The type of sender sending the requets.

Values
Enum Value Description

AGENT

USER

BOT

SYSTEM

Example
"AGENT"

Session

Fields
Field Name Description
id - UserSessionUrn!
userId - UserUrn!
createdAt - DateTimeISO!
modifiedAt - DateTimeISO!
headers - Map!
cookies - Map!
permissions - [Permission!]!
user - User!
Example
{
  "id": UserSessionUrn,
  "userId": UserUrn,
  "createdAt": DateTimeISO,
  "modifiedAt": DateTimeISO,
  "headers": Map,
  "cookies": Map,
  "permissions": ["SUPER_ADMIN"],
  "user": User
}

SessionSocketConnection

Fields
Field Name Description
sessionToken - String!
socketUrl - String!
Example
{
  "sessionToken": "xyz789",
  "socketUrl": "abc123"
}

Settings

Fields
Field Name Description
agentsIds - [Urn!]
agents - [User!]
adminIds - [Urn!]
admins - [User!]
customization - SettingsCustomization
identities - [Urn!]
channelSlack - SettingsChannelSlack
channelEmail - SettingsChannelEmail
channelWebChat - SettingsChannelWebChat
feedback - Feedback
time - SettingsTime
channels - SettingsChannels
sla - SettingsSLA
customFields - SettingsCustomFields
artificialIntelligence - SettingsArtificialIntelligence
groupAdmins - SettingsGroupAdmins
Example
{
  "agentsIds": [Urn],
  "agents": [User],
  "adminIds": [Urn],
  "admins": [User],
  "customization": SettingsCustomization,
  "identities": [Urn],
  "channelSlack": SettingsChannelSlack,
  "channelEmail": SettingsChannelEmail,
  "channelWebChat": SettingsChannelWebChat,
  "feedback": Feedback,
  "time": SettingsTime,
  "channels": SettingsChannels,
  "sla": SettingsSLA,
  "customFields": SettingsCustomFields,
  "artificialIntelligence": SettingsArtificialIntelligence,
  "groupAdmins": SettingsGroupAdmins
}

SettingsAiChannelSettings

Fields
Field Name Description
isDefaultEnabled - Boolean
Example
{"isDefaultEnabled": true}

SettingsAiChannelSettingsInput

Fields
Input Field Description
isDefaultEnabled - Boolean
Example
{"isDefaultEnabled": true}

SettingsAiDeflection

Fields
Field Name Description
message - DisplayText
confirmButtonText - String
rejectButtonText - String
deflectionTicketStatusAssignment - DeflectionTicketStatusAssignment
Example
{
  "message": DisplayText,
  "confirmButtonText": "abc123",
  "rejectButtonText": "abc123",
  "deflectionTicketStatusAssignment": "CHAT_REQUESTED"
}

SettingsAiDeflectionInput

Fields
Input Field Description
message - DisplayTextInput
confirmButtonText - String
rejectButtonText - String
deflectionTicketStatusAssignment - DeflectionTicketStatusAssignment
Example
{
  "message": DisplayTextInput,
  "confirmButtonText": "abc123",
  "rejectButtonText": "abc123",
  "deflectionTicketStatusAssignment": "CHAT_REQUESTED"
}

SettingsArtificialIntelligence

Fields
Field Name Description
deflection - SettingsAiDeflection
channelSettings - SettingsAiChannelSettings
Example
{
  "deflection": SettingsAiDeflection,
  "channelSettings": SettingsAiChannelSettings
}

SettingsArtificialIntelligenceInput

Fields
Input Field Description
deflection - SettingsAiDeflectionInput
channelSettings - SettingsAiChannelSettingsInput
Example
{
  "deflection": SettingsAiDeflectionInput,
  "channelSettings": SettingsAiChannelSettingsInput
}

SettingsChannelEmail

Fields
Field Name Description
footer - String The email footer added to the bottom of each email.
feedbackIntroduction - String The email feedback introduction.
shouldSendFeedback - Boolean Should feedback also be sent via email.
emails - [SettingsChannelEmailAlias!]! The list of email aliases
Example
{
  "footer": "xyz789",
  "feedbackIntroduction": "xyz789",
  "shouldSendFeedback": false,
  "emails": [SettingsChannelEmailAlias]
}

SettingsChannelEmailAlias

Fields
Field Name Description
id - ChannelEmailUrn! The id of the email alias.
originalDestinationEmail - String The original destination email.
verifiedDate - DateTimeISO The date this email was verified
isDefault - Boolean Is this email the default
Example
{
  "id": ChannelEmailUrn,
  "originalDestinationEmail": "xyz789",
  "verifiedDate": DateTimeISO,
  "isDefault": true
}

SettingsChannelEmailInput

Fields
Input Field Description
footer - String

The email footer added to the bottom of each email.

feedbackIntroduction - String

The email feedback introduction.

shouldSendFeedback - Boolean

Should feedback also be sent via email.

Example
{
  "footer": "abc123",
  "feedbackIntroduction": "abc123",
  "shouldSendFeedback": false
}

SettingsChannelSlack

Fields
Field Name Description
name - String
iconUrl - String
introduction - DisplayText
offHoursIntroduction - DisplayText
shouldDisplayAgentJoin - Boolean
ignoreTicketsFromEmailDomains - [String!]
channelMode - ChannelMode
formIds - [FormUrn!]
messageActionFormIds - [FormUrn!]
approvedBotIds - [UserUrn!]
requestFormText - String
shouldAllowUsersAddParticipants - Boolean
ticketCreatedTemplate - String
slaTierId - RoutingPolicyUrn
emojiActions - [ChatSettingsEmojiAction!]
canFillOutForm - Boolean
Example
{
  "name": "abc123",
  "iconUrl": "xyz789",
  "introduction": DisplayText,
  "offHoursIntroduction": DisplayText,
  "shouldDisplayAgentJoin": true,
  "ignoreTicketsFromEmailDomains": [
    "abc123"
  ],
  "channelMode": "THREADED",
  "formIds": [FormUrn],
  "messageActionFormIds": [FormUrn],
  "approvedBotIds": [UserUrn],
  "requestFormText": "xyz789",
  "shouldAllowUsersAddParticipants": false,
  "ticketCreatedTemplate": "abc123",
  "slaTierId": RoutingPolicyUrn,
  "emojiActions": [ChatSettingsEmojiAction],
  "canFillOutForm": false
}

SettingsChannelSlackInput

Fields
Input Field Description
name - String
iconUrl - String
introduction - DisplayTextInput
offHoursIntroduction - DisplayTextInput
shouldDisplayAgentJoin - Boolean
ignoreTicketsFromEmailDomains - [String!]
channelMode - ChannelMode
formIds - [FormUrn!]
messageActionFormIds - [FormUrn!]
approvedBotIds - [UserUrn!]
requestFormText - String
shouldAllowUsersAddParticipants - Boolean
ticketCreatedTemplate - String
slaTierId - RoutingPolicyUrn
emojiActions - [ChatSettingsEmojiActionInput!]
canFillOutForm - Boolean
Example
{
  "name": "xyz789",
  "iconUrl": "abc123",
  "introduction": DisplayTextInput,
  "offHoursIntroduction": DisplayTextInput,
  "shouldDisplayAgentJoin": false,
  "ignoreTicketsFromEmailDomains": [
    "xyz789"
  ],
  "channelMode": "THREADED",
  "formIds": [FormUrn],
  "messageActionFormIds": [FormUrn],
  "approvedBotIds": [UserUrn],
  "requestFormText": "abc123",
  "shouldAllowUsersAddParticipants": true,
  "ticketCreatedTemplate": "xyz789",
  "slaTierId": RoutingPolicyUrn,
  "emojiActions": [ChatSettingsEmojiActionInput],
  "canFillOutForm": true
}

SettingsChannelWebChat

Fields
Field Name Description
allowedHosts - [String!] The list of hosts from which chat is allowed.
isReferrerCheckRequired - Boolean Is a referrer check required to validate host.
name - String! The name of the chat site. This is only visible for configurations and in the app source.
welcomeMessage - String The default welcome message a user sees when they first open chat.
avatarUrl - String The default avatar url.
id - WebChatConfigurationUrn! Chat configuration id.
chatScript - String! The default avatar url.
publicSigningKey - String! The key used to sign the user token
Example
{
  "allowedHosts": ["abc123"],
  "isReferrerCheckRequired": false,
  "name": "xyz789",
  "welcomeMessage": "abc123",
  "avatarUrl": "abc123",
  "id": WebChatConfigurationUrn,
  "chatScript": "abc123",
  "publicSigningKey": "xyz789"
}

SettingsChannelWebChatInput

Fields
Input Field Description
allowedHosts - [String!]

The list of hosts from which chat is allowed.

isReferrerCheckRequired - Boolean

Is a referrer check required to validate host.

name - String!

The name of the chat site. This is only visible for configurations and in the app source.

welcomeMessage - String

The default welcome message a user sees when they first open chat.

avatarUrl - String

The default avatar url.

Example
{
  "allowedHosts": ["xyz789"],
  "isReferrerCheckRequired": true,
  "name": "abc123",
  "welcomeMessage": "abc123",
  "avatarUrl": "xyz789"
}

SettingsChannels

Fields
Field Name Description
channelTags - [String!]
Example
{"channelTags": ["abc123"]}

SettingsChannelsInput

Fields
Input Field Description
channelTags - [String!]
Example
{"channelTags": ["abc123"]}

SettingsCustomFields

Fields
Field Name Description
formIds - FormUrn
messageActionFormIds - FormUrn
Example
{
  "formIds": FormUrn,
  "messageActionFormIds": FormUrn
}

SettingsCustomization

Fields
Field Name Description
tags - [String!]
requiredCloseFields - [RequiredField!]
allowOverrideTicketsGroups - [UserGroupUrn!]
Example
{
  "tags": ["abc123"],
  "requiredCloseFields": ["TAGS"],
  "allowOverrideTicketsGroups": [UserGroupUrn]
}

SettingsCustomizationInput

Fields
Input Field Description
tags - [String!]
requiredCloseFields - [RequiredField!]
allowOverrideTicketsGroups - [UserGroupUrn!]
Example
{
  "tags": ["xyz789"],
  "requiredCloseFields": ["TAGS"],
  "allowOverrideTicketsGroups": [UserGroupUrn]
}

SettingsGroupAdmins

Fields
Field Name Description
isEnabled - Boolean! Is the group admin (teams) feature enabled
Example
{"isEnabled": false}

SettingsGroupAdminsInput

Fields
Input Field Description
isEnabled - Boolean!

Is the group admin (teams) feature enabled

Example
{"isEnabled": false}

SettingsSLA

Fields
Field Name Description
severityLabels - [String!]
defaultSeverityIndex - Float
defaultSLAPolicyId - RoutingPolicyUrn
tiers - [SettingsSLATier!]
Example
{
  "severityLabels": ["abc123"],
  "defaultSeverityIndex": 987.65,
  "defaultSLAPolicyId": RoutingPolicyUrn,
  "tiers": [SettingsSLATier]
}

SettingsSLAInput

Fields
Input Field Description
severityLabels - [String!]
defaultSeverityIndex - Float
defaultSLAPolicyIndex - Float
tiers - [SettingsSLATierInput!]
Example
{
  "severityLabels": ["xyz789"],
  "defaultSeverityIndex": 987.65,
  "defaultSLAPolicyIndex": 987.65,
  "tiers": [SettingsSLATierInput]
}

SettingsSLATier

Fields
Field Name Description
id - RoutingPolicyUrn
name - String
description - String
values - [SettingsSLATierValue!]
Example
{
  "id": RoutingPolicyUrn,
  "name": "xyz789",
  "description": "abc123",
  "values": [SettingsSLATierValue]
}

SettingsSLATierInput

Fields
Input Field Description
id - RoutingPolicyUrn
name - String
description - String
values - [SettingsSLATierValueInput!]
Example
{
  "id": RoutingPolicyUrn,
  "name": "abc123",
  "description": "xyz789",
  "values": [SettingsSLATierValueInput]
}

SettingsSLATierMetricValue

Fields
Field Name Description
metric - SlaMetric
value - Float
shouldAccountHoursOfOperation - Boolean
Example
{
  "metric": "TIME_TO_FIRST_RESPONSE",
  "value": 123.45,
  "shouldAccountHoursOfOperation": true
}

SettingsSLATierMetricValueInput

Fields
Input Field Description
metric - SlaMetric
value - Float
shouldAccountHoursOfOperation - Boolean
Example
{
  "metric": "TIME_TO_FIRST_RESPONSE",
  "value": 987.65,
  "shouldAccountHoursOfOperation": true
}

SettingsSLATierValue

Fields
Field Name Description
policies - [SettingsSLATierMetricValue!]
Example
{"policies": [SettingsSLATierMetricValue]}

SettingsSLATierValueInput

Fields
Input Field Description
policies - [SettingsSLATierMetricValueInput!]
Example
{"policies": [SettingsSLATierMetricValueInput]}

SettingsTime

Fields
Field Name Description
timezone - String
holidayCountryCode - String
hoursOfOperations - [HoursOfOperations!]
Example
{
  "timezone": "abc123",
  "holidayCountryCode": "abc123",
  "hoursOfOperations": [HoursOfOperations]
}

SettingsTimeInput

Fields
Input Field Description
timezone - String
holidayCountryCode - String
hoursOfOperations - [HoursOfOperationsInput!]
Example
{
  "timezone": "xyz789",
  "holidayCountryCode": "abc123",
  "hoursOfOperations": [HoursOfOperationsInput]
}

SlaMetric

Description

SLA Metric

Values
Enum Value Description

TIME_TO_FIRST_RESPONSE

TIME_TO_UPDATE

REQUESTER_WAIT_TIME

Example
"TIME_TO_FIRST_RESPONSE"

SnoozeInput

Fields
Input Field Description
note - String

Any additional notes.

date - DateTimeISO

What time should the chat be made visible again.

Example
{
  "note": "xyz789",
  "date": DateTimeISO
}

StartChatInput

Fields
Input Field Description
to - [Urn!]!

Who to send the messages to

sendFrom - SendFromType!

Who to send the message from.

sendFromUserId - Urn

Which user to send the message from. You must have the Impersonate permission to use this feature.

body - String!

The body of the ticket message.

attachmentTokens - [String!]

Attachment tokens list.

scheduledDate - DateTimeISO

If you want to send this message in the future, set a future date.

action - TicketInput

After firing the message and creating the ticket, schedule an action to also fire.

Example
{
  "to": [Urn],
  "sendFrom": "AGENT",
  "sendFromUserId": Urn,
  "body": "abc123",
  "attachmentTokens": ["abc123"],
  "scheduledDate": DateTimeISO,
  "action": TicketInput
}

String

Description

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

Example
"abc123"

SupportChannel

Fields
Field Name Description
name - String
url - String
isAccepted - Boolean
Example
{
  "name": "abc123",
  "url": "abc123",
  "isAccepted": false
}

Ticket

Fields
Field Name Description
id - TicketUrn!
ticketNumber - Float
chatId - Urn
subject - String
description - String
createdDate - DateTimeISO!
modifiedDate - DateTimeISO!
closedDate - DateTimeISO
assignedDate - DateTimeISO
firstResponseDate - DateTimeISO
lastResponseDate - DateTimeISO
currentUserLastReadDate - DateTimeISO
hasUnreadByCurrentUser - Boolean
tags - [String!]!
status - TicketStatus!
severityIndex - Float
priority - TicketPriority!
creatorId - Urn!
creator - User!
assigneeId - Urn
assignee - User
messages - [TicketMessage!]
customFields - [CustomField!]
formId - Urn Form id.
form - Form Form or request type
ticketStateId - TicketStateUrn!
state - TicketState Ticket state
tasks - [TicketTask!] Ticket tasks
queueId - QueueUrn
queue - Queue
requestorId - Urn!
requestor - User!
dueDates - [TicketDueDate!]
customContextValues - [TicketCustomContextValue!]
messageCount - Float
source - ChatSource
artificialIntelligence - ArtificialIntelligenceValues
Example
{
  "id": TicketUrn,
  "ticketNumber": 987.65,
  "chatId": Urn,
  "subject": "abc123",
  "description": "xyz789",
  "createdDate": DateTimeISO,
  "modifiedDate": DateTimeISO,
  "closedDate": DateTimeISO,
  "assignedDate": DateTimeISO,
  "firstResponseDate": DateTimeISO,
  "lastResponseDate": DateTimeISO,
  "currentUserLastReadDate": DateTimeISO,
  "hasUnreadByCurrentUser": false,
  "tags": ["abc123"],
  "status": "OPEN",
  "severityIndex": 123.45,
  "priority": "CRITICAL",
  "creatorId": Urn,
  "creator": User,
  "assigneeId": Urn,
  "assignee": User,
  "messages": [TicketMessage],
  "customFields": [CustomField],
  "formId": Urn,
  "form": Form,
  "ticketStateId": TicketStateUrn,
  "state": TicketState,
  "tasks": [TicketTask],
  "queueId": QueueUrn,
  "queue": Queue,
  "requestorId": Urn,
  "requestor": User,
  "dueDates": [TicketDueDate],
  "customContextValues": [TicketCustomContextValue],
  "messageCount": 987.65,
  "source": ChatSource,
  "artificialIntelligence": ArtificialIntelligenceValues
}

TicketCustomContextUrn

Description

TicketCustomContextUrn created URN.

Example
TicketCustomContextUrn

TicketCustomContextValue

Fields
Field Name Description
id - TicketCustomContextUrn!
label - String!
description - String!
displayType - IntegrationValueType!
displayText - String!
value - FieldTypedValue!
Example
{
  "id": TicketCustomContextUrn,
  "label": "xyz789",
  "description": "abc123",
  "displayType": "LINK",
  "displayText": "xyz789",
  "value": FieldTypedValue
}

TicketDueDate

Fields
Field Name Description
type - DueDateType!
dueDate - DateTimeISO!
startedDate - DateTimeISO
completedDate - DateTimeISO
comments - String
Example
{
  "type": "SLA_FIRST_RESPONSE",
  "dueDate": DateTimeISO,
  "startedDate": DateTimeISO,
  "completedDate": DateTimeISO,
  "comments": "abc123"
}

TicketEditMessageInput

Fields
Input Field Description
body - String

The body of the ticket message.

schedule - TicketMessageScheduleInput

The schedule configurations of the message.

Example
{
  "body": "xyz789",
  "schedule": TicketMessageScheduleInput
}

TicketFilters

Fields
Input Field Description
startDate - DateTimeISO

The start date of the tickets.

endDate - DateTimeISO

The end date of the tickets.

statuses - TicketStatus

The status of the ticket.

assigneeId - Urn

The id of the user that its assigned to.

creatorId - Urn

The id of the user that created the ticket.

limit - Float

The number of results to return.

Example
{
  "startDate": DateTimeISO,
  "endDate": DateTimeISO,
  "statuses": "OPEN",
  "assigneeId": Urn,
  "creatorId": Urn,
  "limit": 123.45
}

TicketInput

Fields
Input Field Description
subject - String

Subject of the ticket.

description - String

Description of the ticket.

formId - FormUrn

Form id.

customFields - [CustomFieldValueInput!]

The custom fields.

customField - CustomFieldValueInput

The updated custom field

priority - TicketPriority

Priority of the ticket

tags - [String!]

Ticket tags.

requestorId - Urn

The id of the requestor.

Example
{
  "subject": "abc123",
  "description": "abc123",
  "formId": FormUrn,
  "customFields": [CustomFieldValueInput],
  "customField": CustomFieldValueInput,
  "priority": "CRITICAL",
  "tags": ["xyz789"],
  "requestorId": Urn
}

TicketMessage

Fields
Field Name Description
id - TicketMessageUrn! The id of the ticket message
type - TicketMessageType! Ticket message type
ticketId - TicketUrn The id of the ticket
createdDate - DateTimeISO! Date the message was sent.
creatorId - Urn The id user which created the ticket message.
messageIds - [Urn!] Other ids for this message.
creator - User The user which created the ticket message.
body - RichBody! Ticket message body
originalBody - RichBody Original message body if deleted or updated.
isDeleted - Boolean If the message was deleted.
redactedDate - DateTimeISO If message was redacted, when was it redacted.
reactions - [TicketMessageReaction!] The collection of people which reacted to this message.
attachments - [TicketMessageAttachment!] The collection of attachments to this message.
articles - [TicketMessageArticle!] The list of attachment articles.
schedule - TicketMessageSchedule Information about the scheduling of the message.
status - TicketMessageStatus Message status.
extensions - TicketMessageExtensions Audit log entry if this message is associated with an audit log
Example
{
  "id": TicketMessageUrn,
  "type": "USER_MESSAGE",
  "ticketId": TicketUrn,
  "createdDate": DateTimeISO,
  "creatorId": Urn,
  "messageIds": [Urn],
  "creator": User,
  "body": RichBody,
  "originalBody": RichBody,
  "isDeleted": false,
  "redactedDate": DateTimeISO,
  "reactions": [TicketMessageReaction],
  "attachments": [TicketMessageAttachment],
  "articles": [TicketMessageArticle],
  "schedule": TicketMessageSchedule,
  "status": TicketMessageStatus,
  "extensions": TicketMessageExtensions
}

TicketMessageArticle

Fields
Field Name Description
id - ArticleUrn! The id of the article.
portalId - PortalUrn! The id of the portal.
previewText - String The text to preview.
title - String! The title of the article.
iconUrl - String The Icon url.
Example
{
  "id": ArticleUrn,
  "portalId": PortalUrn,
  "previewText": "xyz789",
  "title": "abc123",
  "iconUrl": "abc123"
}

TicketMessageArticleInput

Fields
Input Field Description
id - ArticleUrn!

The id of the article.

portalId - PortalUrn!

The id of the portal.

previewText - String

The text to preview.

title - String!

The title of the article.

iconUrl - String

The Icon url.

Example
{
  "id": ArticleUrn,
  "portalId": PortalUrn,
  "previewText": "abc123",
  "title": "abc123",
  "iconUrl": "xyz789"
}

TicketMessageAttachment

Fields
Field Name Description
urlSha256 - String The sha256 of the private url.
url - String! The url used to download the attachment.
previewImage - String The url of an imaged to see a preview of the attachment.
title - String The title of the attachment.
fileName - String The filename of the attachment.
mimeType - String The mime type of the attachment.
Example
{
  "urlSha256": "abc123",
  "url": "abc123",
  "previewImage": "abc123",
  "title": "xyz789",
  "fileName": "xyz789",
  "mimeType": "xyz789"
}

TicketMessageAttachmentReferenceInput

Fields
Input Field Description
urlSha256 - String

If a draft was used, what is the draft id that was used?

Example
{"urlSha256": "abc123"}

TicketMessageExtensionError

Fields
Field Name Description
error - String The error message
name - String The error message
data - Map Any additional data
Example
{
  "error": "abc123",
  "name": "abc123",
  "data": Map
}

TicketMessageExtensionWorkflowStep

Fields
Field Name Description
stepId - WorkflowStepUrn The step id
workflowId - WorkflowUrn The containing workflow id
stepName - String The name of the step
isSuccess - Boolean Whether the step was successful
logs - [TicketMessageWorkflowStepLog!] The individual messages for the step
Example
{
  "stepId": WorkflowStepUrn,
  "workflowId": WorkflowUrn,
  "stepName": "xyz789",
  "isSuccess": true,
  "logs": [TicketMessageWorkflowStepLog]
}

TicketMessageExtensions

Fields
Field Name Description
workflowStep - TicketMessageExtensionWorkflowStep Workflow step audit messagse
error - TicketMessageExtensionError The error if an error occured
embeddedLink - TicketMessageExtensionEmbeddedLink The embedded link if an embedded link is present
Example
{
  "workflowStep": TicketMessageExtensionWorkflowStep,
  "error": TicketMessageExtensionError,
  "embeddedLink": TicketMessageExtensionEmbeddedLink
}

TicketMessageInput

Fields
Input Field Description
scheduledDate - DateTimeISO

The optional date when to send the message.

body - String

The body of the ticket message.

attachmentTokens - [String!]

Attachment tokens list.

attachmentReferences - [TicketMessageAttachmentReferenceInput!]

The collection of previous attachments.

articles - [TicketMessageArticleInput!]

The list of attachment articles

draftId - TicketMessageUrn

If a draft was used, what is the draft id that was used?

Example
{
  "scheduledDate": DateTimeISO,
  "body": "xyz789",
  "attachmentTokens": ["xyz789"],
  "attachmentReferences": [
    TicketMessageAttachmentReferenceInput
  ],
  "articles": [TicketMessageArticleInput],
  "draftId": TicketMessageUrn
}

TicketMessageReaction

Fields
Field Name Description
reaction - String! The type of ticket reaction.
creatorId - Urn! The id user which created the message reaction.
isCreatedByCurrentUser - Boolean! Is this reaction created by the current user.
creator - User! The user which created the message reaction.
Example
{
  "reaction": "abc123",
  "creatorId": Urn,
  "isCreatedByCurrentUser": false,
  "creator": User
}

TicketMessageReactionInput

Fields
Input Field Description
reaction - String!

The type of ticket reaction.

messageId - Urn!

The id of the message.

chatId - Urn!

The id of the chat.

Example
{
  "reaction": "abc123",
  "messageId": Urn,
  "chatId": Urn
}

TicketMessageSchedule

Fields
Field Name Description
date - DateTimeISO The date and time to which the message was scheduled to.
Example
{"date": DateTimeISO}

TicketMessageScheduleInput

Fields
Input Field Description
date - DateTimeISO

The date and time to which the message will be scheduled to.

Example
{"date": DateTimeISO}

TicketMessageStatus

Fields
Field Name Description
status - TicketMessageStatusType Status of the actual message sent
lines - [TicketMessageStatusLine!] Error message of the ticket
Example
{"status": "ERROR", "lines": [TicketMessageStatusLine]}

TicketMessageStatusLine

Fields
Field Name Description
error - String Error message of the ticket
sourceName - String Source name
date - DateTimeISO Latest update date.
Example
{
  "error": "abc123",
  "sourceName": "xyz789",
  "date": DateTimeISO
}

TicketMessageStatusType

Description

Ticket message status

Values
Enum Value Description

ERROR

An error occured sending the message

SUCCESS

The message sent successfully
Example
"ERROR"

TicketMessageType

Description

The type of ticket

Values
Enum Value Description

USER_MESSAGE

Message from the end user

AGENT_MESSAGE

Message from the agent

DRAFT

COMMENT

Private comment

SYSTEM_MESSAGE

Automatic system message

INFORMATION

Informational comment

TRIGGERED

Message triggered by the system and visible to the end user.

AUDIT_LOG

SCHEDULED

Scheduled message from the agent

AI_GENERATED

Example
"USER_MESSAGE"

TicketMessageUrn

Description

TicketMessageUrn created URN.

Example
TicketMessageUrn

TicketMessageWorkflowStepLog

Fields
Field Name Description
message - String The message
data - Map Any additional data
Example
{
  "message": "abc123",
  "data": Map
}

TicketNoteInput

Fields
Input Field Description
scheduledDate - DateTimeISO

The optional date when to send the message.

body - String!

The body of the ticket message.

attachmentTokens - [String!]

Attachment tokens list.

attachmentReferences - [TicketMessageAttachmentReferenceInput!]

The collection of previous attachments.

draftId - TicketMessageUrn

If a draft was used, what is the draft id that was used?

Example
{
  "scheduledDate": DateTimeISO,
  "body": "abc123",
  "attachmentTokens": ["abc123"],
  "attachmentReferences": [
    TicketMessageAttachmentReferenceInput
  ],
  "draftId": TicketMessageUrn
}

TicketPriority

Description

Represents the priority of the ticket

Values
Enum Value Description

CRITICAL

HIGH

MEDIUM

LOW

Example
"CRITICAL"

TicketState

Fields
Field Name Description
name - String! The name of the ticket state
description - String The description of the ticket state
ticketStatuses - [TicketStatus!]! The ticket statuses that are automatically associated with this state
chatStatuses - [ChatStatus!]! The conversation statuses that are automatically associated with this state
isDefault - Boolean Is the column default when creating a new dashboard.
id - TicketStateUrn! The id of the ticket state
Example
{
  "name": "xyz789",
  "description": "abc123",
  "ticketStatuses": ["OPEN"],
  "chatStatuses": ["CONNECTED"],
  "isDefault": false,
  "id": TicketStateUrn
}

TicketStateInput

Fields
Input Field Description
name - String!

The name of the ticket state

description - String

The description of the ticket state

ticketStatuses - [TicketStatus!]!

The ticket statuses that are automatically associated with this state

chatStatuses - [ChatStatus!]!

The conversation statuses that are automatically associated with this state

isDefault - Boolean

Is the column default when creating a new dashboard.

Example
{
  "name": "abc123",
  "description": "abc123",
  "ticketStatuses": ["OPEN"],
  "chatStatuses": ["CONNECTED"],
  "isDefault": false
}

TicketStateUrn

Description

TicketStateUrn created URN.

Example
TicketStateUrn

TicketStatus

Description

Represents the status of the ticket

Values
Enum Value Description

OPEN

IGNORED

HOLD

CLOSED

REOPENED

DEFLECTION

SNOOZE

Example
"OPEN"

TicketTask

Fields
Field Name Description
ticketId - TicketUrn!
name - String
description - String
dueDate - DateTimeISO
assigneeId - Urn
status - TicketTaskState!
id - TicketTaskUrn!
assignee - User
isAssignedToCurrentUser - Boolean
createdDate - DateTimeISO!
modifiedDate - DateTimeISO!
Example
{
  "ticketId": TicketUrn,
  "name": "abc123",
  "description": "abc123",
  "dueDate": DateTimeISO,
  "assigneeId": Urn,
  "status": "OPEN",
  "id": TicketTaskUrn,
  "assignee": User,
  "isAssignedToCurrentUser": false,
  "createdDate": DateTimeISO,
  "modifiedDate": DateTimeISO
}

TicketTaskFilters

Fields
Input Field Description
ticketId - TicketUrn!
status - TicketTaskState!
Example
{"ticketId": TicketUrn, "status": "OPEN"}

TicketTaskInput

Fields
Input Field Description
ticketId - TicketUrn!
name - String
description - String
dueDate - DateTimeISO
assigneeId - Urn
status - TicketTaskState!
Example
{
  "ticketId": TicketUrn,
  "name": "abc123",
  "description": "xyz789",
  "dueDate": DateTimeISO,
  "assigneeId": Urn,
  "status": "OPEN"
}

TicketTaskState

Description

Represents the state of a ticket task

Values
Enum Value Description

OPEN

IN_PROGRESS

ON_HOLD

FINISHED

REJECTED

NOT_APPLICABLE

Example
"OPEN"

TicketTaskUrn

Description

TicketTaskUrn created URN.

Example
TicketTaskUrn

TicketUrn

Description

TicketUrn created URN.

Example
TicketUrn

TicketView

Description

Specifies which results to return

Values
Enum Value Description

CREATED_TICKETS

Created tickets

MY_TICKETS

Tickets assigned to me or waiting for help (MY_TICKETS)

MY_QUEUES

Tickets assigned to users in my queues.

ALL

If allowed, shows all the tickets for the current workspace across all queues.
Example
"CREATED_TICKETS"

Token

Description

The token object.

Fields
Field Name Description
id - Urn! The id of the user.
name - String The users full name.
createdDate - DateTimeISO
permissions - [Permission!]
Example
{
  "id": Urn,
  "name": "abc123",
  "createdDate": DateTimeISO,
  "permissions": ["SUPER_ADMIN"]
}

TokenIntegrationInput

Fields
Input Field Description
userId - UserUrn!
Example
{"userId": UserUrn}

TokenIntegrationToken

Fields
Field Name Description
token - String!
Example
{"token": "abc123"}

TokenRequestInput

Fields
Input Field Description
permissions - [Permission!]!
name - String!
Example
{
  "permissions": ["SUPER_ADMIN"],
  "name": "xyz789"
}

TokenResponse

Fields
Field Name Description
permissions - [Permission!]!
token - String!
Example
{
  "permissions": ["SUPER_ADMIN"],
  "token": "abc123"
}

UnsafeDomainLogin

Fields
Field Name Description
url - String!
Example
{"url": "xyz789"}

Urn

Description

Urn

Example
Urn

User

Description

The user object.

Fields
Field Name Description
id - Urn! The id of the user.
aliasIds - [Urn!]! The other ids of this user. This is a short term property until users are moved to canonical ids.
name - String The users full name.
firstName - String The users first name.
lastName - String The users last name.
emailAddresses - [String!] The users email addresses. Use Handles instead
avatarUrl - String The users avatar url.
isVerified - Boolean Returns true if the user has been verified.
isCurrentlyLoggedInUser - Boolean Returns true if this user is the one invoking this request.
group - String The group of the user. This is either the company, the department, or something similar
userGroups - [UserGroup!]!
role - UserRole
loginType - LoginType
organizationId - CompanyUrn The organization ID the user belongs to.
organization - Company
handles - [UserHandle!]
Example
{
  "id": Urn,
  "aliasIds": [Urn],
  "name": "abc123",
  "firstName": "abc123",
  "lastName": "abc123",
  "emailAddresses": ["xyz789"],
  "avatarUrl": "xyz789",
  "isVerified": true,
  "isCurrentlyLoggedInUser": true,
  "group": "xyz789",
  "userGroups": [UserGroup],
  "role": "AGENT",
  "loginType": "NONE",
  "organizationId": CompanyUrn,
  "organization": Company,
  "handles": [UserHandle]
}

UserGroup

Fields
Field Name Description
name - String!
description - String
profile - UserGroupProfile
userIds - [Urn!]!
administratorUserIds - [Urn!]
id - UserGroupUrn!
users - [User!]!
administrators - [User!]!
Example
{
  "name": "abc123",
  "description": "xyz789",
  "profile": UserGroupProfile,
  "userIds": [Urn],
  "administratorUserIds": [Urn],
  "id": UserGroupUrn,
  "users": [User],
  "administrators": [User]
}

UserGroupInput

Fields
Input Field Description
name - String!
description - String
profile - UserGroupProfileInput
userIds - [Urn!]!
administratorUserIds - [Urn!]
Example
{
  "name": "abc123",
  "description": "xyz789",
  "profile": UserGroupProfileInput,
  "userIds": [Urn],
  "administratorUserIds": [Urn]
}

UserGroupProfile

Fields
Field Name Description
channelIds - [Urn!]
templateWorkflowIds - [WorkflowUrn!]
integrationIds - [IntegrationUrn!]
channelMode - ChannelMode
isEmojiEnabled - Boolean
isChannelMenuEnabled - Boolean
tagId - AppInstallChannelTagUrn
Example
{
  "channelIds": [Urn],
  "templateWorkflowIds": [WorkflowUrn],
  "integrationIds": [IntegrationUrn],
  "channelMode": "THREADED",
  "isEmojiEnabled": false,
  "isChannelMenuEnabled": true,
  "tagId": AppInstallChannelTagUrn
}

UserGroupProfileInput

Fields
Input Field Description
channelIds - [Urn!]
templateWorkflowIds - [WorkflowUrn!]
integrationIds - [IntegrationUrn!]
channelMode - ChannelMode
isEmojiEnabled - Boolean
isChannelMenuEnabled - Boolean
tagId - AppInstallChannelTagUrn
Example
{
  "channelIds": [Urn],
  "templateWorkflowIds": [WorkflowUrn],
  "integrationIds": [IntegrationUrn],
  "channelMode": "THREADED",
  "isEmojiEnabled": false,
  "isChannelMenuEnabled": false,
  "tagId": AppInstallChannelTagUrn
}

UserGroupUpdate

Fields
Input Field Description
groupId - UserGroupUrn!
userId - Urn!
action - UserGroupUpdateAction!
Example
{
  "groupId": UserGroupUrn,
  "userId": Urn,
  "action": "ADD"
}

UserGroupUpdateAction

Description

Group membership update type

Values
Enum Value Description

ADD

REMOVE

ADD_ADMINISTRATOR

REMOVE_ADMINISTRATOR

Example
"ADD"

UserGroupUpdateInput

Fields
Input Field Description
updates - [UserGroupUpdate!]!
Example
{"updates": [UserGroupUpdate]}

UserGroupUrn

Description

UserGroupUrn created URN.

Example
UserGroupUrn

UserHandle

Description

The user handle.

Fields
Field Name Description
id - HandleUrn! The id of the user handle.
type - HandleType! The type of handle
email - UserHandleEmail The email handle
application - UserHandleApplication The application handle
Example
{
  "id": HandleUrn,
  "type": "EMAIL",
  "email": UserHandleEmail,
  "application": UserHandleApplication
}

UserHandleApplication

Description

The user application handle.

Fields
Field Name Description
isVerified - Boolean! If the application handle verified.
displayText - String! The text which describes the id.
editableText - String! The text which can be updated.
applicationName - String! The text which can be updated.
Example
{
  "isVerified": false,
  "displayText": "xyz789",
  "editableText": "xyz789",
  "applicationName": "abc123"
}

UserHandleEmail

Description

The user email handle.

Fields
Field Name Description
isVerified - Boolean! If the email handle is verified.
email - String! If the email address.
Example
{"isVerified": true, "email": "xyz789"}

UserIdType

Description

The type of user id returned..

Values
Enum Value Description

USER_ID

USER_HANDLE_ID

Example
"USER_ID"

UserInput

Fields
Input Field Description
firstName - String

First name of the user.

lastName - String

Last name of the user.

emailAddresses - [String!]

Email address of the user.

userType - UserType

Type of user

organizationId - CompanyUrn

Organization of the user

loginType - LoginType

Specifies if a user is allowed to login the web portal

permissions - [Permission!]

Permissions of the user, This only works for integration testing in staging. Not to be used in production

Example
{
  "firstName": "abc123",
  "lastName": "xyz789",
  "emailAddresses": ["xyz789"],
  "userType": "USER",
  "organizationId": CompanyUrn,
  "loginType": "NONE",
  "permissions": ["SUPER_ADMIN"]
}

UserPortalSettings

Fields
Field Name Description
lastOpenedDashboardId - DashboardUrn The most recent dashboard used by the user.
dashboards - [UserPortalSettingsDashboard!] The list of dashboards settings with order nad pinned status
chatSections - [ChatSectionDisplayInput!] The list of chat sections which should be displayed.
Example
{
  "lastOpenedDashboardId": DashboardUrn,
  "dashboards": [UserPortalSettingsDashboard],
  "chatSections": [ChatSectionDisplayInput]
}

UserPortalSettingsDashboard

Fields
Field Name Description
dashboardId - DashboardUrn! The id of the dashboard
isPinned - Boolean! Wheather the dashboard has been pinned
dashboard - Dashboard! The dashboard settings
permission - PermissionAction! The type of permissions the user has to this dashboard
Example
{
  "dashboardId": DashboardUrn,
  "isPinned": false,
  "dashboard": Dashboard,
  "permission": "EXECUTE"
}

UserPortalSettingsDashboardInput

Fields
Input Field Description
dashboardId - DashboardUrn!

The id of the dashboard

isPinned - Boolean!

Wheather the dashboard has been pinned

Example
{"dashboardId": DashboardUrn, "isPinned": true}

UserPortalSettingsInput

Fields
Input Field Description
dashboards - [UserPortalSettingsDashboardInput!]

The list of dashboards settings

chatSections - [ChatSectionDisplay!]

The list of chat sections which should be displayed.

Example
{
  "dashboards": [UserPortalSettingsDashboardInput],
  "chatSections": [ChatSectionDisplay]
}

UserPortalSettingsOpenedDashboardInput

Fields
Input Field Description
lastOpenedDashboardId - DashboardUrn

The most recent dashboard used by the user.

Example
{"lastOpenedDashboardId": DashboardUrn}

UserResults

Fields
Field Name Description
count - Int
nextPageToken - String
results - [User!]!
Example
{
  "count": 123,
  "nextPageToken": "xyz789",
  "results": [User]
}

UserRole

Description

Represents the role this user has.

Values
Enum Value Description

AGENT

ADMINISTRATOR

GUEST

Example
"AGENT"

UserSessionUrn

Description

UserSessionUrn created URN.

Example
UserSessionUrn

UserSettings

Fields
Field Name Description
assignmentPreference - AgentAssignmentPreference Should this user get assigned tickets
sounds - UserSoundSettings Sound settings for the user
userFlags - Map Flags which indicate default ui user properties such as default theme and if tour has been seen.
Example
{
  "assignmentPreference": "AVAILABLE",
  "sounds": UserSoundSettings,
  "userFlags": Map
}

UserSettingsInput

Fields
Input Field Description
assignmentPreference - AgentAssignmentPreference

Should this user get assigned tickets

sounds - UserSoundSettingsInput

Sound settings for the user

userFlags - Map

Flags which indicate default ui user properties such as default theme and if tour has been seen.

Example
{
  "assignmentPreference": "AVAILABLE",
  "sounds": UserSoundSettingsInput,
  "userFlags": Map
}

UserSoundSettings

Fields
Field Name Description
message - AgentSoundPreference Sound notification on new message
chat - AgentSoundPreference Sound notification on new chat.
Example
{"message": "NONE", "chat": "NONE"}

UserSoundSettingsInput

Fields
Input Field Description
message - AgentSoundPreference

Sound notification on new message

chat - AgentSoundPreference

Sound notification on new chat.

Example
{"message": "NONE", "chat": "NONE"}

UserTicketStatus

Description

Ticket status that is unique to the user such as unread or unsnoozed.

Values
Enum Value Description

READ

UNREAD

SLA_UPCOMING

SLA_UPCOMING_SOON

SLA_EXPIRED

LAST_MESSAGE_FROM_USER

LAST_MESSAGE_FROM_AGENT

UNASSIGNED_OR_MINE

Example
"READ"

UserType

Description

Represents the type of user.

Values
Enum Value Description

USER

TOKEN

SLACK_USER

SLACK_BOT

GRAND_CUSTOMER

MICROSOFT_USER

MICROSOFT_GUEST

INTERCOM

GITHUB

ZENDESK

ROCKET_CHAT

SCIM

Example
"USER"

UserUrn

Description

UserUrn created URN.

Example
UserUrn

UsersFilters

Description

The filter of roles per user.

Fields
Input Field Description
roles - [UserRole!]

The roles to filter

organizationId - CompanyUrn
Example
{"roles": ["AGENT"], "organizationId": CompanyUrn}

UsersQueryProperties

Description

The options for the user query.

Fields
Input Field Description
userIdType - UserIdType

The type of user id to return

Example
{"userIdType": "USER_ID"}

WebChatConfigurationUrn

Description

WebChatConfigurationUrn created URN.

Example
WebChatConfigurationUrn

Workflow

Fields
Field Name Description
name - String
description - String
iconUrl - String
id - WorkflowUrn!
createdDate - DateTimeISO
modifiedDate - DateTimeISO
workflowVersionId - WorkflowUrn!
steps - [WorkflowStep!]
triggers - [WorkflowTrigger!]
template - WorkflowTemplate
isLatestPublished - Boolean
Example
{
  "name": "abc123",
  "description": "xyz789",
  "iconUrl": "abc123",
  "id": WorkflowUrn,
  "createdDate": DateTimeISO,
  "modifiedDate": DateTimeISO,
  "workflowVersionId": WorkflowUrn,
  "steps": [WorkflowStep],
  "triggers": [WorkflowTrigger],
  "template": WorkflowTemplate,
  "isLatestPublished": true
}

WorkflowAutomaticFollowUp

Fields
Input Field Description
step - WorkflowAutomaticFollowUpStep!
stepAction - WorkflowAutomaticFollowupStepAction!
executeAction - WorkflowAutomaticFollowupExecuteTrigger!
Example
{
  "step": WorkflowAutomaticFollowUpStep,
  "stepAction": "SEND_MESSAGE",
  "executeAction": "NO_USER_MESSAGE"
}

WorkflowAutomaticFollowUpStep

Fields
Input Field Description
id - String!
duration - Float!
action - WorkflowAutomaticFollowupStepAction!
message - WorkflowStepParameterInput
Example
{
  "id": "xyz789",
  "duration": 987.65,
  "action": "SEND_MESSAGE",
  "message": WorkflowStepParameterInput
}

WorkflowAutomaticFollowupExecuteTrigger

Description

The type of condition action that checks if a user is counted for automatic followup workflow steps.

Values
Enum Value Description

NO_USER_MESSAGE

NO_AGENT_MESSAGE

NO_MESSAGE_USER_INCLUDE_GROUP

NO_MESSAGE_USER_EXCLUDE_GROUP

CUSTOM

Example
"NO_USER_MESSAGE"

WorkflowAutomaticFollowupStepAction

Description

The action to take used by the automatic followup workflow steps.

Values
Enum Value Description

SEND_MESSAGE

CUSTOM_STEP

Example
"SEND_MESSAGE"

WorkflowCondition

Fields
Input Field Description
comparison - Comparison
fieldId - FormFieldUrn
stepId - WorkflowStepUrn
value - FieldTypedValueInput
replacement - [FormFieldReplacementInput!]
Example
{
  "comparison": "EQUAL",
  "fieldId": FormFieldUrn,
  "stepId": WorkflowStepUrn,
  "value": FieldTypedValueInput,
  "replacement": [FormFieldReplacementInput]
}

WorkflowConditionMapping

Fields
Input Field Description
mapping - [WorkflowConditionValue!]!
valueType - FormFieldType!
Example
{"mapping": [WorkflowConditionValue], "valueType": "TEXT"}

WorkflowConditionValue

Fields
Input Field Description
conditions - [WorkflowCondition!]!
value - FieldTypedValueInput!
Example
{
  "conditions": [WorkflowCondition],
  "value": FieldTypedValueInput
}

WorkflowFormField

Description

A workflow form field representing a standard form field, possibly with a schema.

Fields
Field Name Description
id - Urn!
name - String!
placeholder - String
isSystemField - Boolean!
isRequired - Boolean
defaultValue - FieldTypedValue
description - String
type - FormFieldType!
visibility - FormFieldVisibility!
options - [FormFieldOption!]
optionsSettings - FormFieldOptionSettings
levels - [String!]
userGroupIds - [UserGroupUrn!]
asyncObjectType - AsyncObjectType
isTemplate - Boolean
permissions - [PermissionAssignment!] A collection of permissions for this object controlling who can access, edit, and execute it.
currentUserPermissions - [PermissionAction!]
schema - WorkflowFormFieldSchema The schema for this form field, if applicable.
Example
{
  "id": Urn,
  "name": "xyz789",
  "placeholder": "abc123",
  "isSystemField": false,
  "isRequired": false,
  "defaultValue": FieldTypedValue,
  "description": "abc123",
  "type": "TEXT",
  "visibility": "REUSABLE",
  "options": [FormFieldOption],
  "optionsSettings": FormFieldOptionSettings,
  "levels": ["abc123"],
  "userGroupIds": [UserGroupUrn],
  "asyncObjectType": "USER",
  "isTemplate": false,
  "permissions": [PermissionAssignment],
  "currentUserPermissions": ["EXECUTE"],
  "schema": WorkflowFormFieldSchema
}

WorkflowFormFieldArray

Description

A workflow form field representing an array of items.

Fields
Field Name Description
label - String The label for the form field.
description - String A description of the form field, shown to users as help text.
type - WorkflowJsonSchemaType! The type of this field (always 'array').
items - WorkflowFormFieldValueUnion!
Example
{
  "label": "xyz789",
  "description": "xyz789",
  "type": "RECORD",
  "items": WorkflowFormFieldSchema
}

WorkflowFormFieldMap

Description

A workflow form field representing a map of key-value pairs.

Fields
Field Name Description
label - String The label for the form field.
description - String A description of the form field, shown to users as help text.
type - WorkflowJsonSchemaType!
keys - WorkflowFormFieldValueUnion!
values - WorkflowFormFieldValueUnion!
Example
{
  "label": "xyz789",
  "description": "xyz789",
  "type": "RECORD",
  "keys": WorkflowFormFieldSchema,
  "values": WorkflowFormFieldSchema
}

WorkflowFormFieldRecord

Description

A workflow form field representing a record (object) with named fields.

Fields
Field Name Description
label - String The label for the form field.
description - String A description of the form field, shown to users as help text.
type - WorkflowJsonSchemaType!
fields - [WorkflowFormField!]!
Example
{
  "label": "abc123",
  "description": "abc123",
  "type": "RECORD",
  "fields": [WorkflowFormField]
}

WorkflowFormFieldSchema

Description

A workflow form field representing a root schema object.

Fields
Field Name Description
label - String The label for the form field.
description - String A description of the form field, shown to users as help text.
type - WorkflowJsonSchemaType!
root - WorkflowFormFieldValueUnion!
Example
{
  "label": "abc123",
  "description": "xyz789",
  "type": "RECORD",
  "root": WorkflowFormFieldSchema
}

WorkflowFormFieldValueUnion

WorkflowFunctionWithParameters

Fields
Input Field Description
function - ActionFunction
parameters - [String!]!
Example
{
  "function": "REGEXP_MATCH",
  "parameters": ["abc123"]
}

WorkflowInput

Fields
Input Field Description
name - String
description - String
iconUrl - String
steps - [WorkflowStepInput!]
template - WorkflowTemplateInput
Example
{
  "name": "abc123",
  "description": "xyz789",
  "iconUrl": "xyz789",
  "steps": [WorkflowStepInput],
  "template": WorkflowTemplateInput
}

WorkflowJsonSchemaType

Description

What type of value?

Values
Enum Value Description

RECORD

A record (object) type, with named fields.

ARRAY

An array type, representing a list of items.

MAP

A map type, representing key-value pairs.

SCHEMA

A schema type, representing a root schema object.
Example
"RECORD"

WorkflowReference

Fields
Field Name Description
referenceId - Urn!
workflowId - WorkflowUrn
workflow - Workflow
Example
{
  "referenceId": Urn,
  "workflowId": WorkflowUrn,
  "workflow": Workflow
}

WorkflowService

Description

A workflow service, including its actions, connection details, integrations, and options.

Fields
Field Name Description
id - WorkflowServiceUrn! The unique URN identifier for the workflow service.
name - String! The name of the workflow service.
longDescription - String A long description of the workflow service.
shortDescription - String A short description of the workflow service.
searchHighlight - String A highlighted search snippet for the workflow service.
iconUrl - String The URL for the service's icon.
squareIconUrl - String The URL for the service's square icon.
tags - [String!] Tags associated with the workflow service.
actionTypes - [IntegrationActionType!] Action types supported by the workflow service.
connection - WorkflowServiceConnection Connection configuration for the workflow service.
actions - [WorkflowServiceAction!] Actions that can be performed by the workflow service.
installedIntegrationIds - [IntegrationUrn!]! URNs of installed integrations for this service.
installedIntegrations - [Integration!]! Installed integration objects for this service.
options - [WorkflowServiceOptionGroup!]! Option groups available for this workflow service.
learnMore - WorkflowServiceLearnMore Links and resources to learn more about the workflow service.
Example
{
  "id": WorkflowServiceUrn,
  "name": "xyz789",
  "longDescription": "xyz789",
  "shortDescription": "xyz789",
  "searchHighlight": "xyz789",
  "iconUrl": "abc123",
  "squareIconUrl": "abc123",
  "tags": ["abc123"],
  "actionTypes": ["CREATE_TICKET"],
  "connection": WorkflowServiceConnection,
  "actions": [WorkflowServiceAction],
  "installedIntegrationIds": [IntegrationUrn],
  "installedIntegrations": [Integration],
  "options": [WorkflowServiceOptionGroup],
  "learnMore": WorkflowServiceLearnMore
}

WorkflowServiceAction

Description

Represents an action that can be performed by a workflow service, including its inputs, outputs, and allowed children.

Fields
Field Name Description
id - Urn! The unique URN identifier for the action.
name - String! The name of the action.
description - String! A description of the action.
tags - [String!] Tags associated with the action for categorization or filtering.
displayTemplate - FormFieldTemplate Template for displaying the form fields for this action.
input - [WorkflowFormField!] Input fields required to perform the action.
output - [WorkflowServiceOutputParameter!] Output parameters produced by the action.
allowedChildren - [WorkflowServiceChildAction!] Child actions that are allowed as part of this action.
contextTypes - [ActionContextType!] The context types in which this action can be executed.
integrations - [IntegrationData!] Integrations associated with this action.
Example
{
  "id": Urn,
  "name": "xyz789",
  "description": "xyz789",
  "tags": ["xyz789"],
  "displayTemplate": FormFieldTemplate,
  "input": [WorkflowFormField],
  "output": [WorkflowServiceOutputParameter],
  "allowedChildren": [WorkflowServiceChildAction],
  "contextTypes": ["TICKET"],
  "integrations": [IntegrationData]
}

WorkflowServiceActionChildUrn

Description

WorkflowServiceActionChildUrn created URN.

Example
WorkflowServiceActionChildUrn

WorkflowServiceActionOutputUrn

Description

WorkflowServiceActionOutputUrn created URN.

Example
WorkflowServiceActionOutputUrn

WorkflowServiceActionUrn

Description

WorkflowServiceActionUrn created URN.

Example
WorkflowServiceActionUrn

WorkflowServiceApiUrn

Description

WorkflowServiceApiUrn created URN.

Example
WorkflowServiceApiUrn

WorkflowServiceChildAction

Description

Describes a child action that can be performed as part of a workflow service action.

Fields
Field Name Description
id - WorkflowServiceActionChildUrn!
label - String!
description - String!
allowedActionIds - [WorkflowServiceActionUrn!]
output - [WorkflowServiceOutputParameter!]
Example
{
  "id": WorkflowServiceActionChildUrn,
  "label": "xyz789",
  "description": "abc123",
  "allowedActionIds": [WorkflowServiceActionUrn],
  "output": [WorkflowServiceOutputParameter]
}

WorkflowServiceChildActionInput

Description

Input type for specifying a child action for a workflow service action.

Fields
Input Field Description
id - WorkflowServiceActionChildUrn!
label - String!
description - String!
allowedActionIds - [WorkflowServiceActionUrn!]
output - [WorkflowServiceOutputParameterInput!]
Example
{
  "id": WorkflowServiceActionChildUrn,
  "label": "abc123",
  "description": "abc123",
  "allowedActionIds": [WorkflowServiceActionUrn],
  "output": [WorkflowServiceOutputParameterInput]
}

WorkflowServiceChoiceFilterInput

Description

Input for filtering workflow service choices based on context, integration, and current values.

Fields
Input Field Description
context - String!

The context in which the choice is being made.

integrationId - IntegrationUrn!

The integration URN to filter choices by.

query - String

A search query to filter choices.

value - [String!]

The current selected values for the choice field.

currentValues - [FieldTypedValueInput!]!

Current values for other fields, used for dynamic filtering.

Example
{
  "context": "xyz789",
  "integrationId": IntegrationUrn,
  "query": "abc123",
  "value": ["xyz789"],
  "currentValues": [FieldTypedValueInput]
}

WorkflowServiceChoiceOptions

Description

Options available for a workflow service choice field.

Fields
Field Name Description
options - [FormFieldOption!]! The available options for the choice field.
Example
{"options": [FormFieldOption]}

WorkflowServiceConnection

Description

Connection configuration for a workflow service, supporting multiple connection types.

Fields
Field Name Description
name - String! The name of the connection method.
buttonText - String Text for the connection button, if applicable.
apiKey - WorkflowServiceConnectionApiKey API key connection details, if required.
oauth - WorkflowServiceConnectionOAuth OAuth connection details, if required.
manual - WorkflowServiceConnectionManual Manual connection details, if required.
url - WorkflowServiceConnectionUrl URL-based connection details, if required.
Example
{
  "name": "xyz789",
  "buttonText": "abc123",
  "apiKey": WorkflowServiceConnectionApiKey,
  "oauth": WorkflowServiceConnectionOAuth,
  "manual": WorkflowServiceConnectionManual,
  "url": WorkflowServiceConnectionUrl
}

WorkflowServiceConnectionApiKey

Description

API key connection details for a workflow service, extending manual connection with API key specifics.

Fields
Field Name Description
instructions - String! Instructions for setting up the manual connection.
input - [WorkflowFormField!] Input fields required for the manual connection.
apiKeyFieldName - String The name of the API key field required for the connection.
placeholder - String Placeholder text for the API key input field.
isRequired - Boolean Whether the API key is required for the connection.
Example
{
  "instructions": "xyz789",
  "input": [WorkflowFormField],
  "apiKeyFieldName": "xyz789",
  "placeholder": "xyz789",
  "isRequired": false
}

WorkflowServiceConnectionManual

Description

Manual connection details for a workflow service, including instructions and input fields.

Fields
Field Name Description
instructions - String! Instructions for setting up the manual connection.
input - [WorkflowFormField!] Input fields required for the manual connection.
Example
{
  "instructions": "xyz789",
  "input": [WorkflowFormField]
}

WorkflowServiceConnectionOAuth

Description

OAuth connection details for a workflow service, including instructions and input fields.

Fields
Field Name Description
instructions - String! Instructions for setting up the OAuth connection.
input - [WorkflowFormField!] Input fields required for the OAuth connection.
Example
{
  "instructions": "xyz789",
  "input": [WorkflowFormField]
}

WorkflowServiceConnectionUrl

Description

URL-based connection details for a workflow service.

Fields
Field Name Description
url - String! The URL to use for the connection.
Example
{"url": "abc123"}

WorkflowServiceFilters

Description

Filters for querying workflow services, such as installed status and action type.

Fields
Input Field Description
isOnlyInstalled - Boolean

Whether to only include installed workflow services.

type - ActionContextType

Filter by action context type.

actionTypes - [IntegrationActionType!]

Filter by supported integration action types.

Example
{"isOnlyInstalled": true, "type": "TICKET", "actionTypes": ["CREATE_TICKET"]}

WorkflowServiceInstallApiKeyInput

Description

Input for installing a workflow service using an API key.

Fields
Input Field Description
input - [FieldTypedValueInput!]!

Input values required for manual installation.

apiKey - String!

The API key value required for installation.

Example
{
  "input": [FieldTypedValueInput],
  "apiKey": "abc123"
}

WorkflowServiceInstallInput

Description

Input for installing a workflow service, supporting multiple authentication methods.

Fields
Input Field Description
id - WorkflowServiceUrn!

The unique URN identifier for the workflow service to install.

integrationId - IntegrationUrn

If this integration is already installed and you want to replace an existing integraiton, you can provide the integration ID here.

apiKey - WorkflowServiceInstallApiKeyInput

API key installation input, if required.

manual - WorkflowServiceInstallManualInput

Manual installation input, if required.

oauth - WorkflowServiceInstallOAuthInput

OAuth installation input, if required.

Example
{
  "id": WorkflowServiceUrn,
  "integrationId": IntegrationUrn,
  "apiKey": WorkflowServiceInstallApiKeyInput,
  "manual": WorkflowServiceInstallManualInput,
  "oauth": WorkflowServiceInstallOAuthInput
}

WorkflowServiceInstallManualInput

Description

Input for installing a workflow service using manual authentication.

Fields
Input Field Description
input - [FieldTypedValueInput!]!

Input values required for manual installation.

Example
{"input": [FieldTypedValueInput]}

WorkflowServiceInstallOAuthInput

Description

Input for installing a workflow service using OAuth authentication.

Fields
Input Field Description
input - [FieldTypedValueInput!]!

Input values required for OAuth installation.

redirectUrl - String

The redirect URL to use after OAuth installation, if applicable.

Example
{
  "input": [FieldTypedValueInput],
  "redirectUrl": "xyz789"
}

WorkflowServiceInstallResult

Description

Result of installing a workflow service, including a redirect URL if applicable.

Fields
Field Name Description
ok - Boolean! Returns if the operation was successful.
redirectUrl - String The redirect URL to use after installation, if applicable.
integrationId - IntegrationUrn The integration id that was installed.
Example
{
  "ok": false,
  "redirectUrl": "abc123",
  "integrationId": IntegrationUrn
}

WorkflowServiceLearnMore

Description

Links and resources to learn more about a workflow service, such as website, terms, and privacy policy.

Fields
Field Name Description
websiteUrl - String The URL for the service's website.
termsOfServiceUrl - String The URL for the service's terms of service.
privacyPolicyUrl - String The URL for the service's privacy policy.
dataProtectionUrl - String The URL for the service's data protection policy.
securityCenterUrl - String The URL for the service's security center.
supportCenterUrl - String The URL for the service's support center.
Example
{
  "websiteUrl": "abc123",
  "termsOfServiceUrl": "xyz789",
  "privacyPolicyUrl": "xyz789",
  "dataProtectionUrl": "xyz789",
  "securityCenterUrl": "xyz789",
  "supportCenterUrl": "xyz789"
}

WorkflowServiceOption

Description

A single option for a workflow service, including instructions and input fields.

Fields
Field Name Description
instructions - String Instructions for the option, shown to the user.
input - WorkflowFormField Input field associated with this option.
Example
{
  "instructions": "xyz789",
  "input": WorkflowFormField
}

WorkflowServiceOptionGroup

Description

A group of options for a workflow service, with a title and description.

Fields
Field Name Description
title - String The title of the option group.
description - String A description of the option group.
options - [WorkflowServiceOption!]! The options included in this group.
Example
{
  "title": "xyz789",
  "description": "abc123",
  "options": [WorkflowServiceOption]
}

WorkflowServiceOutputParameter

Description

Describes an output parameter for a workflow service action.

Fields
Field Name Description
id - WorkflowServiceActionOutputUrn! The unique URN identifier for the output parameter.
name - String! The name of the output parameter.
description - String! A description of the output parameter.
type - FormFieldType! The type of the output parameter.
options - [FormFieldOption!] Options for the output parameter, if applicable (e.g., for dropdowns).
Example
{
  "id": WorkflowServiceActionOutputUrn,
  "name": "abc123",
  "description": "abc123",
  "type": "TEXT",
  "options": [FormFieldOption]
}

WorkflowServiceOutputParameterInput

Description

Input type for specifying an output parameter for a workflow service action.

Fields
Input Field Description
id - WorkflowServiceActionOutputUrn!

The unique URN identifier for the output parameter.

name - String!

The name of the output parameter.

description - String!

A description of the output parameter.

type - FormFieldType!

The type of the output parameter.

options - [FormFieldOptionInput!]

Options for the output parameter, if applicable (e.g., for dropdowns).

Example
{
  "id": WorkflowServiceActionOutputUrn,
  "name": "abc123",
  "description": "xyz789",
  "type": "TEXT",
  "options": [FormFieldOptionInput]
}

WorkflowServiceSignedWebhook

Description

A signed webhook URL for a workflow service.

Fields
Field Name Description
url - String! The signed webhook URL.
Example
{"url": "xyz789"}

WorkflowServiceTestInput

Description

Input for testing a workflow service action by specifying integration, service, action, and parameters.

Fields
Input Field Description
integrationId - IntegrationUrn

The URN of the integration to use for the test. Optional.

service - Map!

The workflow service object, typically as a raw configuration map.

actionId - WorkflowServiceActionUrn

The URN of the workflow service action to test. Either actionId or apiId must be provided.

apiId - WorkflowServiceApiUrn

The URN of the workflow service API to test. Either actionId or apiId must be provided.

parameters - Map!

Parameters to use in the workflow service action test, as a key/value map.

ticketId - String

The ticket ID associated with the test, if required. This may be a ticket URN or ticket number as a string.

Example
{
  "integrationId": IntegrationUrn,
  "service": Map,
  "actionId": WorkflowServiceActionUrn,
  "apiId": WorkflowServiceApiUrn,
  "parameters": Map,
  "ticketId": "xyz789"
}

WorkflowServiceTestLogResult

Description

Result of running a workflow service action test.

Fields
Field Name Description
api - String! The name of the API.
log - Map! Any additional metadata.
Example
{
  "api": "abc123",
  "log": Map
}

WorkflowServiceTestResult

Description

Result of running a workflow service action test.

Fields
Field Name Description
data - Map The data returned from the execution of the workflow service action.
output - [Map!] The data returned from output of an action if an action is used.
logs - [WorkflowServiceTestLogResult!] Any error information or log data generated from the test execution.
Example
{
  "data": Map,
  "output": [Map],
  "logs": [WorkflowServiceTestLogResult]
}

WorkflowServiceUrn

Description

WorkflowServiceUrn created URN.

Example
WorkflowServiceUrn

WorkflowServiceWebhookPollResponse

Description

Response to polling a workflow service webhook, indicating if a form was found.

Fields
Field Name Description
isFound - Boolean! Whether the webhook form was found.
formId - FormUrn The form URN associated with the webhook, if found.
Example
{"isFound": false, "formId": FormUrn}

WorkflowServiceWebhookRequest

Description

Input for requesting a workflow service webhook, including detachment and form ID.

Fields
Input Field Description
isDetached - Boolean!

Whether the webhook should be detached (standalone).

formId - FormUrn

The form URN associated with the webhook, if any.

Example
{"isDetached": false, "formId": FormUrn}

WorkflowStep

Fields
Field Name Description
id - WorkflowStepUrn
name - String!
description - String
serviceId - Urn
integrationId - IntegrationUrn
actionId - Urn!
parameters - [WorkflowStepParameter!]
output - [WorkflowStepOutputParameter!]
allowedChildren - [WorkflowServiceChildAction!]
action - WorkflowServiceAction
service - WorkflowService
children - [WorkflowStepGroup!]
Example
{
  "id": WorkflowStepUrn,
  "name": "xyz789",
  "description": "abc123",
  "serviceId": Urn,
  "integrationId": IntegrationUrn,
  "actionId": Urn,
  "parameters": [WorkflowStepParameter],
  "output": [WorkflowStepOutputParameter],
  "allowedChildren": [WorkflowServiceChildAction],
  "action": WorkflowServiceAction,
  "service": WorkflowService,
  "children": [WorkflowStepGroup]
}

WorkflowStepGroup

Fields
Field Name Description
groupId - WorkflowServiceActionChildUrn!
children - [WorkflowStep!]
Example
{
  "groupId": WorkflowServiceActionChildUrn,
  "children": [WorkflowStep]
}

WorkflowStepGroupInput

Fields
Input Field Description
groupId - WorkflowServiceActionChildUrn!
children - [WorkflowStepInput!]
Example
{
  "groupId": WorkflowServiceActionChildUrn,
  "children": [WorkflowStepInput]
}

WorkflowStepInput

Fields
Input Field Description
id - WorkflowStepUrn
name - String!
description - String
serviceId - Urn
integrationId - IntegrationUrn
actionId - Urn!
parameters - [WorkflowStepParameterInput!]
output - [WorkflowStepOutputParameterInput!]
allowedChildren - [WorkflowServiceChildActionInput!]
children - [WorkflowStepGroupInput!]
Example
{
  "id": WorkflowStepUrn,
  "name": "xyz789",
  "description": "abc123",
  "serviceId": Urn,
  "integrationId": IntegrationUrn,
  "actionId": Urn,
  "parameters": [WorkflowStepParameterInput],
  "output": [WorkflowStepOutputParameterInput],
  "allowedChildren": [WorkflowServiceChildActionInput],
  "children": [WorkflowStepGroupInput]
}

WorkflowStepKeyValueParameterInput

Fields
Input Field Description
value - FieldTypedValueInput!
replacement - [FormFieldReplacementInput!]
key - String!
children - [WorkflowStepKeyValueParameterInput!]
Example
{
  "value": FieldTypedValueInput,
  "replacement": [FormFieldReplacementInput],
  "key": "xyz789",
  "children": [WorkflowStepKeyValueParameterInput]
}

WorkflowStepOutputParameter

Fields
Field Name Description
id - WorkflowServiceActionOutputUrn
name - String!
description - String!
type - FormFieldType!
Example
{
  "id": WorkflowServiceActionOutputUrn,
  "name": "xyz789",
  "description": "abc123",
  "type": "TEXT"
}

WorkflowStepOutputParameterInput

Fields
Input Field Description
id - WorkflowServiceActionOutputUrn
name - String!
description - String!
type - FormFieldType!
Example
{
  "id": WorkflowServiceActionOutputUrn,
  "name": "abc123",
  "description": "xyz789",
  "type": "TEXT"
}

WorkflowStepParameter

Fields
Field Name Description
value - FieldTypedValue!
replacement - [FormFieldReplacement!]
Example
{
  "value": FieldTypedValue,
  "replacement": [FormFieldReplacement]
}

WorkflowStepParameterInput

Fields
Input Field Description
value - FieldTypedValueInput!
replacement - [FormFieldReplacementInput!]
Example
{
  "value": FieldTypedValueInput,
  "replacement": [FormFieldReplacementInput]
}

WorkflowStepUrn

Description

WorkflowStepUrn created URN.

Example
WorkflowStepUrn

WorkflowTemplate

Fields
Field Name Description
type - WorkflowTriggerType!
tags - [String!]
jobFunctions - [JobFunction!]
publishedDate - DateTimeISO
formId - FormUrn
instructions - String
placeholders - [WorkflowTemplateField!]
Example
{
  "type": "CHANNEL_TAG",
  "tags": ["abc123"],
  "jobFunctions": ["CUSTOMER_SUPPORT"],
  "publishedDate": DateTimeISO,
  "formId": FormUrn,
  "instructions": "xyz789",
  "placeholders": [WorkflowTemplateField]
}

WorkflowTemplateField

Fields
Field Name Description
description - String
stepId - WorkflowStepUrn!
fieldId - Urn
Example
{
  "description": "xyz789",
  "stepId": WorkflowStepUrn,
  "fieldId": Urn
}

WorkflowTemplateFieldInput

Fields
Input Field Description
description - String
stepId - WorkflowStepUrn!
fieldId - Urn
Example
{
  "description": "xyz789",
  "stepId": WorkflowStepUrn,
  "fieldId": Urn
}

WorkflowTemplateInput

Fields
Input Field Description
type - WorkflowTriggerType!
tags - [String!]
jobFunctions - [JobFunction!]
publishedDate - DateTimeISO
formId - FormUrn
instructions - String
placeholders - [WorkflowTemplateFieldInput!]
Example
{
  "type": "CHANNEL_TAG",
  "tags": ["abc123"],
  "jobFunctions": ["CUSTOMER_SUPPORT"],
  "publishedDate": DateTimeISO,
  "formId": FormUrn,
  "instructions": "abc123",
  "placeholders": [WorkflowTemplateFieldInput]
}

WorkflowTrigger

Fields
Field Name Description
type - WorkflowTriggerType!
referenceId - Urn
value - WorkflowTriggerValue
text - String
Example
{
  "type": "CHANNEL_TAG",
  "referenceId": Urn,
  "value": WorkflowTriggerValue,
  "text": "abc123"
}

WorkflowTriggerInput

Fields
Input Field Description
type - WorkflowTriggerType!
referenceId - Urn
value - WorkflowTriggerValueInput
text - String
Example
{
  "type": "CHANNEL_TAG",
  "referenceId": Urn,
  "value": WorkflowTriggerValueInput,
  "text": "abc123"
}

WorkflowTriggerType

Values
Enum Value Description

CHANNEL_TAG

REQUEST_TYPE

ACTION

EMOJI

EMAIL

WEB_CHAT

INBOUND_WEBHOOK

WORKSPACE_ACTION

INTEGRATION

Example
"CHANNEL_TAG"

WorkflowTriggerValue

Fields
Field Name Description
emoji - WorkflowTriggerValueEmoji
Example
{"emoji": WorkflowTriggerValueEmoji}

WorkflowTriggerValueEmoji

Fields
Field Name Description
scopeId - Urn!
scopeText - String!
emoji - String!
Example
{
  "scopeId": Urn,
  "scopeText": "xyz789",
  "emoji": "abc123"
}

WorkflowTriggerValueEmojiInput

Fields
Input Field Description
scopeId - Urn!
scopeText - String!
emoji - String!
Example
{
  "scopeId": Urn,
  "scopeText": "xyz789",
  "emoji": "xyz789"
}

WorkflowTriggerValueInput

Fields
Input Field Description
emoji - WorkflowTriggerValueEmojiInput
Example
{"emoji": WorkflowTriggerValueEmojiInput}

WorkflowUrn

Description

WorkflowUrn created URN.

Example
WorkflowUrn

WorkflowVersion

Fields
Field Name Description
name - String
description - String
iconUrl - String
id - WorkflowVersionUrn!
createdDate - DateTimeISO
modifiedDate - DateTimeISO
publishedById - Urn
publishedBy - User User who created the article
isLatestPublished - Boolean
Example
{
  "name": "xyz789",
  "description": "abc123",
  "iconUrl": "xyz789",
  "id": WorkflowVersionUrn,
  "createdDate": DateTimeISO,
  "modifiedDate": DateTimeISO,
  "publishedById": Urn,
  "publishedBy": User,
  "isLatestPublished": true
}

WorkflowVersionUrn

Description

WorkflowVersionUrn created URN.

Example
WorkflowVersionUrn

WorkflowVersions

Fields
Field Name Description
name - String
description - String
iconUrl - String
versions - [WorkflowVersion!]!
Example
{
  "name": "xyz789",
  "description": "xyz789",
  "iconUrl": "abc123",
  "versions": [WorkflowVersion]
}

WorkflowsFilterInput

Fields
Input Field Description
name - String
description - String
iconUrl - String
shouldReturnTemplates - Boolean
Example
{
  "name": "xyz789",
  "description": "xyz789",
  "iconUrl": "abc123",
  "shouldReturnTemplates": true
}

Workspace

Fields
Field Name Description
installationId - AppInstallUrn! The id of the workspace
name - String! The name of the workspace
Example
{
  "installationId": AppInstallUrn,
  "name": "abc123"
}

WorkspaceEvent

Fields
Field Name Description
eventTypeId - WorkspaceEventTypeUrn!
workflowId - WorkflowUrn!
Example
{
  "eventTypeId": WorkspaceEventTypeUrn,
  "workflowId": WorkflowUrn
}

WorkspaceEventInput

Fields
Input Field Description
eventTypeId - WorkspaceEventTypeUrn!
workflowId - WorkflowUrn!
Example
{
  "eventTypeId": WorkspaceEventTypeUrn,
  "workflowId": WorkflowUrn
}

WorkspaceEventType

Fields
Field Name Description
id - WorkspaceEventTypeUrn!
label - String!
description - String
workflowType - ActionContextType!
input - [WorkspaceEventTypeInput!]
Example
{
  "id": WorkspaceEventTypeUrn,
  "label": "abc123",
  "description": "abc123",
  "workflowType": "TICKET",
  "input": [WorkspaceEventTypeInput]
}

WorkspaceEventTypeInput

Fields
Field Name Description
id - Urn!
label - String
description - String
input - [FormField!]!
Example
{
  "id": Urn,
  "label": "abc123",
  "description": "xyz789",
  "input": [FormField]
}

WorkspaceEventTypeUrn

Description

WorkspaceEventTypeUrn created URN.

Example
WorkspaceEventTypeUrn