API Object Structures

This page lists common objects returned by Wix Answers APIs. Not all fields are present every time the object is returned; the presence of a field depends on:
  • The method's object structure response level: The response level of an object structure can be one of the following:
    • Public: Returns all public level parameters.
    • Restricted: Returns all public level parameters, as well as restricted parameters, which are relevant to the logged-in user who called the method.
    • Extended: Returns all parameters, including public, restricted, and extended level parameters. Wix Answers returns extended objects to agents and administrators.
  • A defined value: A parameter is not returned if it holds no value.
  • Site configuration: Some parameters, such as custom fields, are returned only if they are defined for your site.
Note
See Common Elements in API Payloads / Objects, including the note about undocumented parameters. For information about the main connections between objects, see Wix Answers Data Overview.

Article Object

Represents an article.
Object field name
Description 
Format
Response Level
id
Article ID
Public
categoryId
Category associated with the article
Public
brandId
Brand ID
Public
type
Integer
Public
locale
Language of the article
Language code string (for example: 'de')
Public
primaryLocale
Primary locale of the Wix Answers account
Language code string (for example: 'de')
Public
status
Integer
Public
author
Article creator
Public
relatedTicketsCount
Number of tickets that the article has marked as related
Integer
Public
position
Default sort order

Used in the Help Center when viewing a category.
Integer
Public
resolution

Included only when relevant
Integer
Public
title
Article title
String
Public
content
Article HTML content

See note about HTML Markup at the introduction to Article APIs.

Does not include comments.
String
Public
draftTitle
Draft article title

The same as title if there are no unpublished changes
String
Extended
draftContent
Draft article HTML content

The same as content if there are no unpublished changes
String
Extended
contentLastUpdateDate
Last time article content was updated
Extended
lastOpenTask
The last task opened for this article
Extended
openTasksCount
Number of tasks opened for the article
Integer
Extended
phrases
List of phrases associated with the article

Used when searching in the Help Center or using the API

Note: Currently, phrases do not appear, and cannot be managed, in the Help Center or the Wix Answers App. However, if phrases are attached to articles, they are .

You can manage an article's phrases using the API; see Update Article Phrases.
List of strings
Restricted
lastUpdatedBy
Most recent article editor
Extended
handledByUserIds
List of all users that created or edited the article
List of GUIDs
Extended
multilingual
Whether there are translations
Boolean
Public
firstPublishDate
Time article was first published
Public
lastPublishDate
Time article was last published
Public
creationDate
Time this record was created
Public
lastMessageId
Last chat message associated with thi


labels
List of labels attached to the article
Public
translations
List of article translations, each one a structure containing:

* title (string)
* locale (language code string)
* url (string): URL of article translation
* status (integer): See status, above
List of structures
Public
importId
Import batch process

Public
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
{
    "id":"e932c0a3-ee6a-6e9b-43cf-b3a990f6ee6a",
    "categoryId":"bd948e62-a3fd-4cf0-87f3-ee6a0ae7f3fa",
    "type":100,
    "locale":"en",
    "status":10,
    "author":{ @User object },
    "relatedTicketsCount":1,
    "position":1,
    "resolution":120,
    "title":"How to Play Go",
    "content":"HTML content",
    "draftTitle":"How to Play Go",
    "draftContent":"Draft HTML content",
    "contentLastUpdateDate":1568193387000,
    "openTasksCount":0,
    "lastUpdatedBy":{ @User object },
    "handledByUserIds":["123"],
    "multilingual":false,
    "firstPublishDate":1568181779000,
    "lastPublishDate":1568193387000,
    "creationDate":1568180889000,
    "labels":[{ @Label object }],
    "translations":[{
        "title":"How to Play Go",
        "locale":"en",
        "url":"https://domain/en/article/how-to-play-go",
        "status":10
    }]
}

Counter Object

A counter object contains a counter associated with another object, such as an article or category. The counter can be, for example, the number of category followers, or the number of people who found an article helpful.
Object field name
Description
Format
itemId
The object to which the counter is attached
itemType
The attached object type (the object to which this counter is attached)

Integer
counterType
Integer
locale
Language of item
Language code string (for example: 'de')
value
Value for this counter

For example, the number of likes or followers.
Integer
1
2
3
4
5
6
7
{
    "itemId":"e932c0a3-6e9b-43cf-b3a9-ee6a90f6ee6a",
    "itemType":10,
    "counterType":10,
    "locale":"en",
    "value":3
}

Label Object

Used for articles and tickets. Agents can assign one or more labels to an article, and then filter articles using the labels.
Object field name
Description
Format
id
Label ID
name
Label name
String
sortOrder
Default sort order of this label when viewing the item to which labels are attached

Used in the Help Center when viewing the item.
Integer
1
2
3
4
5
{
    "id":"e932c0a3-6e9b-43cf-b3a9-ee6a90f6ee6a",
    "name":"Label Name",
    "sortOrder":0,
}

Article Version Object

Represents a specific version of an article.
Object field name
Description
Format
Response Level
id
Version ID
Public
itemId
The article ID
Public
type
Always 300 (Article)
300
Public
createdByUser
User who created the version
Public
locale
Article language
Public
content
The version's HTML content

See note about HTML Markup at the introduction to Article APIs.
String
Public
publicationStatus
Integer
Public
comment
Internal comment associated with the version
String
Public
creationDate
The version creation date
Public
lastUpdateDate
The version last updated date
Public
1
2
3
4
5
6
7
8
9
10
11
{
    "id":"e932c0a3-ee6a-6e9b-43cf-b3a990f6ee6a",
    "itemId":"77bc8694-5ccf-436c-ab2b-543563a5f425",
    "type":300,
    "createdByUser": { @User object },
    "locale":"en",
    "content":"This is the version content.",
    "publicationStatus":1,
    "creationDate":1568180889000,
    "lastUpdateDate":1568180889000
}

Category Object

Represents a category. Categories are used to group or filter articles.
Object field name
Description 
Format
Response Level
id
Category ID
Public
brandId
Brand ID
Public
parentId
Category's parent category
GUID (00000000-0000-0000-0000-000000000000 for top level category)
Public
creationDate
Time this record was created
Public
lastUpdateDate
Last time this record was updated
Public
position
Default sort order

Used in the Help Center when viewing the list of categories or subcategories.
Integer
Public
locale
Category language
Public
name
Category name
String
Public
translated
Whether the category is translated to the requested language
Boolean
Public
visible
Whether the category is visible
Boolean
Public
data
Structure of:

* iconKey (string): ID of Wix Answers stock image used to represent category.
* iconSrc (string): URL of custom category image
Structure
Public
children
List of subcategories
Public
translations
List of category translations, each one a structure containing:

* title (String)
* locale (language code string)
* url (String)
List of structures
Public
publishedArticleCount
Number of published articles associated with this category
Integer
Public
draftArticleCount
Number of draft articles associated with this category
Integer
Public
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
    "id":"e932c0a3-6e9b-43cf-b3a9-ee6aee6a5b07",
    "parentId":"00000000-0000-0000-0000-000000000000",
    "creationDate":1511857328000,
    "lastUpdateDate":1533642617000,
    "position":0,
    "locale":"en",
    "name":"Getting Started",
    "visible":true,
    "data":{
        "iconKey":"phone_paused"
    },
    "children":[],
    "publishedArticleCount":8,
    "draftArticleCount":7
}

Article Comment Object

Represents an article comment.
Article Comment Tag
An article comment object does not indicate where in the article the comment appears. The article content must contain a link to the comment using the tag <span data-composite="true" data-comment-id="{comment GUID}">tagged text</span>.
Object field name
Description
Format
id
Article Comment ID
articleId
The associated article
locale
Language of the article
resolved
Whether the comment is marked as resolved
Boolean
content
The comment
String
number
Each comment in an article receives a unique number
Integer
repliesCount
Number of replies associated with this comment
Integer
participants
Agents associated with comment, a structure of:
* all (set of GUIDs): Agents associated with the comment or one of its replies, including the agent who wrote the comment
* mentioningAgentIds (set of GUIDs): Agents who mentioned other agents (including in a reply)
* mentionedAgentIds (set of GUIDs): Agents mentioned by other agents
Structure
createdBy
Agent who wrote the comment
resolvedBy
Agent who most recently resolved the comment
lastEditDate
Time the comment was most recently edited
lastResolveDate
Time the comment was most recently resolved
creationDate
Time this record was created
lastUpdateDate
Last time this record was update
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
    "id":"e932c0a3-6e9b-43cf-b3a9-ee6aee6a5b07",
    "articleId":"bd948e62-a3fd-4cf0-87f3-ee6a0ae7f3fa",
    "creationDate":1511857328000,
    "lastUpdateDate":1533642617000,
    "locale":"en",
    "content":"Check this out",
    "participants":{
      "all": { @User objects },
      "mentioningAgentIds": { @User objects },
      "mentionedAgentIds": { @User objects }
    },
    "createdBy": { @User object }
}

Article Comment Reply Object

Represents an article comment reply.
Object field name
Description
Format
id
Article Comment Reply ID
commentId
The associated article comment
content
The reply
String
createdBy
Agent who wrote the reply
lastEditDate
Time the reply was most recently edited
creationDate
Time this record was created
lastUpdateDate
Last time this record was update
1
2
3
4
5
6
7
8
{
    "id":"e932c0a3-6e9b-43cf-b3a9-ee6aee6a5b07",
    "commentId":"bd948e62-a3fd-4cf0-87f3-ee6a0ae7f3fa",
    "creationDate":1511857328000,
    "lastUpdateDate":1533642617000,
    "content":"Why?",
    "createdBy": { @User object }
}

Ticket Object

Represents a ticket. Tickets are opened as a result of several possible channels, as defined by the customer: by an email, by an agent, or as a result of a chat or phone call.
Object field name
Description 
Format
Response Level
id
Ticket ID

brandId
Brand ID
Extended
content
Ticket content
String

user
User that created the ticket, or on behalf of whom the ticket was created

deleted
Whether the ticket is deleted
Boolean
Extended
channel
The channel by which the ticket was created

See Channel.
Integer

creationDate
Time this record was created

lastUpdateDate
Last time this record was updated

userInfo
Information about the user's system
UserInfo object

channelData
Additional data, depending on the channel type

See Channel.
Structure

attachments
List of ticket attachments

ccRecipients
Current CC email addresses associated with the ticket, each one a structure of:
* email (string)
* name (string)
List of structures

The maximum is 30 CC recipients.

locale
Ticket language

ticketNumber
Ticket reference number
Integer

status
Integer
Extended
priority
Integer
Extended
assignedUser
Agent assigned to the ticket
Extended
assignedGroup
Agent group assigned to the ticket
Extended
lastAgentReplyDate
The time of the last agent reply
Extended
lastSolvedDate
The time the ticket was last solved.
Extended
lastOpenedDate
The time the ticket was last opened.
Extended
lastStatusChangeDate
The time the ticket status changed.
Extended
repliesCount
Number of ticket replies (user and agent replies, not including internal notes)
Integer

subject
Ticket subject
String

allCcUsers
All (current or previous) CC users associated with the ticket
List of  User objects
Extended
ccUserIds
CC users associated with the most recent reply
Set of GUIDs
Extended
allCcUserIds
All (current or previous) CC users associated with the ticket
Set of GUIDs
Extended
customFields
List of ticket custom field values, each one a structure of:
* <API field name> (string): The API name of the field (auto-generated)
* <Custom Field value> (format depends on the field)
Structure
Extended
labels
List of labels attached to the ticket
Extended
company
Company associated with the ticket
Extended
relatedArticleIds
List of articles that are marked as related to the ticket
List of GUIDs
Extended
assignedBy
Agent who assigned the ticket
Extended
createdByAgent
Agent who created the ticket

Relevant only for tickets created on behalf of a user.
Extended
handledByUserIds
List of user/agent IDs that have previously handled the ticket
List of GUIDs
Extended
handlingUserInfos
List of user/agent IDs that are currently handling the ticket

Each list entry is a structure of:
* user (User object): Agent handling this ticket
startHandlingTime (Unix time string): The time the agent began handling this ticket
List of structures
Extended
repliedByUserIds
List of user/agent IDs that have replied to the ticket
List of GUIDs
Extended
positiveRatedUserIds
List of users that rated the ticket positively
List of GUIDs
Extended
negativeRatedUserIds
List of users that rated the ticket negatively
List of GUIDs
Extended
hasAgentReply
Whether the ticket has a reply from an agent
Boolean

spam
Whether the ticket was marked as spam
Boolean
Extended
unauthenticated
Whether the user is unauthenticated (not registered in Wix Answers)
Boolean

initialUserEmail
Email address of user who created the ticket

This is useful if the user's email has since changed.
String
Extended
previousLocales
List of previous locales
List of language code strings
Extended
createdOnBehalf
Whether an agent created the ticket on behalf of the user
Boolean

SLA
SLA policy associated with the ticket, a structure of:
* policyID (GUID): SLA policy
* policyMetadata (structure): SLA information
* firstRespondSLA (structure): SLA data object
* respondSLA (structure): SLA data object
* resolveSLA (structure): SLA data object
Structure
Extended
snooze
Information about the snooze status of this ticket, a structure of:
* snoozeDate (Unix time string): When the ticket will automatically unsnooze
cancelOnUserReply (Boolean): Whether the ticket will unsnooze if the user replies to the ticket
* notifyOnSnoozeDate (Boolean): Whether to notify the user who snoozed the ticket (and any other people who receive notifications about this ticket) when the ticket unsnoozes
* reopenOnSnooze (Boolean): Whether to reopen the ticket when the ticket unsnoozes
* snoozedBy (user GUID): The user who set the snooze
Structure
Extended
lastReply
Last reply (user or agent, not internal note)
Extended
ratings
List of Ratings for this ticket
List of integers
Extended
hasRatingComment
Whether the ticket has any comments from rating responses
Boolean
Extended
primaryTicketId
If this ticket is a secondary ticket because it was merged into another ticket, this field identifies the primary ticket (the ticket into which this one was merged)
Extended
secondaryTicketIds
Any other tickets that have been merged into this one
List of GUIDs
Extended
companyShareable
Whether this ticket is hidden from users who normally can view this company's tickets
Boolean
Extended
importId
Import batch process 


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
{
    "id":"77bc8694-5ccf-436c-ab2b-543563a5f425",
    "locale":"en",
    "subject":"Ticket Subject",
    "content":"Ticket HTML",
    "user":{ @User object },
    "userInfo":{},
    "status":120,
    "priority":20,
    "repliesCount":2,
    "channel":130,
    "channelData":{
        "mailboxId":"12345",
        "mailboxEmail":"info@wixanswers.com"
    },
    "relatedArticleIds:["e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b07"],
    "ticketNumber":1234,
    "creationDate":1528883681793,
    "lastUpdateDate":1529515777757,
    "assignedBy":{ @Agent object },
    "assignedUser":{ @Agent object },
    "lastAgentReplyDate":1529245296000,
    "lastOpenedDate":1528910191000,
    "lastStatusChangeDate":1528910191000,
    "handledByUserIds":["e932c0a3-6e9b-43cf-b3a9-80f6ee6a5b08"],
    "repliedByUserIds":["e932c0a3-6e9b-43cf-b3a9-60f6ee6a5b09"],
    "hasAgentReply":true,
    "spam":false,
    "unauthenticated":false,
    "createdOnBehalf":false,
}

Reply Object

A reply is a response by a user or agent to a ticket. Private agent replies are called internal notes. Also see Saved Reply object.
Object field name
Description 
Format
id
Reply ID
ticketId
The ticket to which this reply is attached
content
Reply content HTML
String
type
Integer
attachments
List of reply attachments
ccRecipients
Current CC email addresses associated with the reply, each one a structure of:
* email (string)
* name (string)
List of structures
slaState
SLA policy associated with the reply, a structure of:
* policyID (GUID): SLA policy
* policyMetadata (structure): SLA Policy Metadata object
* response (structure): Response SLA state object
* resolve (structure): Target SLA state object
Structure
newTicketStatus

Relevant when the ticket status is changed when the reply is attached.
Integer
user
The user or agent that wrote the reply
userInfo
Information about the user's system
UserInfo object
channel
How the reply was created

See Channel.
Integer
webChannelData
Additional data if channel is web 

See Channel.
Structure
chatChannelData
Additional data if channel is chat 

See Channel.
Structure
widgetChannelData
Additional data if channel is widget 

See Channel.
Structure
emailChannelData
Additional data if channel is email 

See Channel.
Structure
facebookChannelData
Additional data if channel is facebook

See Channel.
Structure
twitterChannelData
Additional data if channel is twitter

See Channel.
Structure
whatsappChannelData
Additional data if channel is whatsapp

See Channel.
Structure
instagramChannelData
Additional data if channel is instagram

See Channel.
Structure
smsChannelData
Additional data if channel is sms

See Channel.
Structure
timelineItemType
For a reply, this is always 9
9
deleted
Whether this reply was deleted
Boolean
creationDate
Time this record was created
lastUpdateDate
Last time this record was updated
importId
Import batch process 

1
2
3
4
5
6
7
8
9
10
11
12
    {
      "content": "<div>Test 3</div>",
      "user": { @User object },
      "channel": 100,
      "creationDate": 1569315593065,
      "lastUpdateDate": 1569315593065,
      "userInfo": { @userInfo object },
      "id": "180b18c4-843a-4374-a022-bb63bcb97a79",
      "ticketId": "b896981d-8434-439f-9631-66f94b4f29bb",
      "type": 110,
      "timelineItemType": 9
    }

Saved Reply Object

A saved reply is not a reply. It is present contents that can be applied to the reply form in the UI. The user can then submit the contents to create a reply.
Object field name
Description
Format
id
Saved reply ID
shared
Whether the saved reply is shared (can be used by other agents)

The default is false.
Boolean
title
Reply title
String
content
Reply HTML content
String
locale
Saved reply language
shortcut
Hashtag shortcut for the reply
String, up to 25 characters
status
Integer
author
Reply author user
creationDate
Time this record was created
lastUpdateDate
Last time this record was updated
lastOpenTask
The last task opened for this article
1
2
3
4
5
6
7
8
9
10
11
12
{
    "id":"e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b07",
    "shared":true,
    "title":"Reply Title",
    "content":"HTML content",
    "locale":"en",
    "shortcut":"#shortcut",
    "status":1,
    "author":{ @User object },
    "creationDate":1568014811000,
    "lastUpdateDate":1568061353000
}

Saved Filter Object

A saved filter creates a custom view in the UI. A saved filter is composed of one or more ticket filters, each of which filters tickets by a specific criteria, such as whether the ticket has a label or was assigned by a particular agent (in the UI, these are divided into ticket filters, agent filters, call filters, and custom field filters, but in the API these are all ticket filters).
Object field name
Description
Format
id
The saved filter ID
name
Saved filter name
String, max 50 characters
type

The value System (0) is not used for saved filters.
Integer
context
Integer
locale
Language of the saved filter
filters
Ticket filters structure:

The following are relevant for tickets, only:

* channelFilters (list of structures):
  * channel (integer): See Channel.
  * ids (list of GUIDs)
* statuses (list of integers): Ticket Statuses
* priorities (list of integers): Ticket Priorities
* assigned (Boolean)
* assignedByUserIds (list of GUIDs)
* assignedByMe (Boolean)
* assignedGroupIds (list of GUIDs)
* assignedUserIds (list of GUIDs)
* assigndToMe (Boolean)
* assignedToMyGroups (Boolean)
* assignedToAnyAgent (Boolean)
* repliedByUserIds (list of GUIDs)
* repliedByMe (Boolean)
* myTickets (Boolean)
* hasRatings (Boolean)
* ratings (list of Ratings)
* hasRatingComment (Boolean)
* ratedUserIds (list of GUIDs)
* hasAllOfLabelIds (list of GUIDs)
* hasAnyOfLabelIds (list of GUIDs)
* notHasAnyOfLabelIds (list of GUIDs)
* categoryId (GUID)
* hasAgentReply (Boolean)
* spam (Boolean)
* createdOnBehalf (Boolean)
* relatedArticleIds (list of GUIDs)
* countries (list of strings)
* mailboxIds (list of GUIDs)
* companyIds (list of GUIDs)
* userIds (list of GUIDs)
* customFieldFilters (map of ticket custom field values): Each field is:
  * <API field name> (string): The API name of the field (auto-generated)
  * <Custom Field value> (format depends on the field)
* slaFilters (structure): SLA filters
* snooze (structure): ticket snooze filters
* handlingUserIds (list of GUIDs)
* handledByUserIds (list of GUIDs)
* currentlyHandled (Boolean)
* handled (Boolean)
* myHandled (Boolean)
* twitterChannelTypes (List of Integers)
* instagramChannelTypes (List of Integers)
* fromHoursAgo (integer between 1 and 8,760 (365 days))
* fromCreationDate (Date string)
* toCreationDate (Date string)
* fromLastUpdateDate (Date string)
* toLastUpdateDate (Date string)
* fromLastOpenedDate (Date string)
* toLastOpenedDate (Date string)
* fromLastStatusChangeDate (Date string)
* toLastStatusChangeDate (Date string)
* timezone (Long time zone name string, for example America/Denver)

The following are relevant for chats, only:

* myChats (Boolean)
* chatStatuses (list of integers): Chat Statuses
* activeChatParticipantIds (list of GUIDs)
* chatParticipantIds (list of GUIDs)

The following are relevant for tickets related to phone calls, only:

* callLineIds (list of GUIDs)
* callQueueIds (list of GUIDs)
* fromCallDurationSeconds (integer from 0 to 14,400 (4 hours))
* toCallDurationSeconds (integer from 0 to 14,400 (4 hours))
* fromCallWaitDurationSeconds (integer from 0 to 43,200 (12 hours))
* toCallWaitDurationSeconds (integer from 0 to 43,200 (12 hours))
* callStatuses (list of integers): Call Statuses
* callHandlingUserIds (list of GUIDs)
* callHandledByMe (Boolean)
* callHandled (Boolean)
Structure
brandFilters
Brand filters structure:

* brandId (GUID): Brand ID
* brandless (Boolean): When true, include only tickets not associated with any brand
Structure
ownerId
User who created this record
oneInboxSorts
Sort criteria of active and inactive tickets, as follows:
* activeListSortType (integer): Primary sort criteria for list of active tickets
* activeListSecondarySortType (integer): Secondary sort criteria for list of active tickets
* inactiveListSortType (integer): Primary sort criteria for list of inactive tickets
* inactiveListSecondarySort (integer): Secondary sort criteria for list of inactive tickets

For sort criteria options, see Search Tickets (Agent).
Structure
oneInboxDisplayedColumns
List of columns that appear when viewing tickets of a saved filter as a table. Each column is a structure of:
* columnName (string, required): A saved filter column name
* width (integer): column width, in pixels
List of structures
creationDate
Time this record was created
lastUpdateDate
Last time this record was updated
1
2
3
4
5
6
7
8
9
10
11
{
    "id": "e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b07",
    "name": "Spam",
    "type": 10,
    "context": 0,
    "locale": "en",
    "filters": { "spam": true },
    "ownerId": "bd948e62-a3fd-4cf0-87f3-ee6a0ae7f3fa",
    "creationDate":1524230600000,
    "lastUpdateDate":1561065255000
}

Macro Object

Macros are customizable shortcuts that allow you to apply a set of actions to a ticket with just one step.
Object field name
Description
Format
id
Macro object ID
name
Name assigned to the macro
String
description
Description assigned to the macro
String
actions
List of actions, each one a structure of:
* Action Type (integer)
* Other parameters relevant to the action. See Action Type table for more information.
List of structures
disabled
Whether the macro is enabled (true) or disabled (false)
Boolean
macroRestrictions
List of agents or groups who can/cannot view this macro in a list of enabled macros, a structure as follows:
* agentIds (list of agent GUIDs)
* groupIds (list of group GUIDs)
* restrictionMode (Integer): Whether these agents/groups can/cannot view the macro. 1 for Allow (in which case all agents/groups not listed are forbidden), or 2 for Forbid (in which case all agents/groups not listed are allowed).
* enabled (Boolean): Whether these restrictions are enabled or not

This parameter affects the endpoint described in Get All Enabled Macros.

creationDate
Time this record was created
lastUpdateDate
Time this record was last updated

CSAT Object

Wix Answers sends an email requesting a customer satisfaction rating (CSAT) after an agent solves a ticket. The user's response results in a CSAT object. See Sending Customer Satisfaction Surveys in Your Supported Channels.
Object field name
Description
Format
id
CSAT object ID
ticketId
Ticket ID
csatStatus
Status of CSAT object

The status is Waiting from when the email is sent to the user until the user responds.
* Waiting (10)
* Submitted (30)
channel
How the ticket was created

See Channel.
Integer
rating
The user Rating
Integer
comment
Any user comment, if any
String

Max 1,200 characters.
agentId
ID of the Agent whose reply prompted the request for a rating
userId
The user ID

This is not saved in Wix Answers, but is sent when calling the Customer Satisfaction Survey Submitted webhook.
creationDate
Time this record was created
lastUpdateDate
Time this record was last updated

ContentTask Object

A task that is created for an article, asking an agent to review or translate the article.
Object field name
Description
Format
id
Task ID
itemId
The item to which the task is attached
itemType
The attached item type (the object to which this task is attached)

Currently, tasks can be crated only for articles. See Item Type.
Integer
locale
Language of the item to which the task is attached
type
Integer
status
Integer
priority
Integer
createdByUser
Agent who created the task
assignedUser
Agent to whom the task is assigned. Either this or assignedGroup is set.
assignedGroup
Group to whom the task is assigned. Either this or assignedUser is set.
completedByUser
Agent who completed the task, if any
creationDate
Time this record was created
lastUpdateDate
Time this record was last updated
completionDate
Time the task was completed
description
Task description
String
notes
Task notes
List of Note objects
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
    "id":"e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b07",
    "itemId": "1234-5678",
    "itemType": 10,
    "locale": "en",
    "type": 20,
    "status": 10,
    "priority": 20,
    "createdByUser": { @User object },
    "assignedUser": { @User object },
    "creationDate": 1562843993000,
    "lastUpdateDate": 1562843993000,
    "description": "Please review!"
}

ContentTaskInfo Object

This object is a subset of the ContentTask object.
Object field name
Description
Format
id
Content Task ID
type
Integer
status
Integer
priority
Integer
createdByUserId
Agent who created the task
assignedUser
Agent to whom the task is assigned. Either this or assignedGroup is set.
assignedGroup
Agent group to whom the task is assigned. Either this or assignedUser is set.
completedByUserId
Agent who completed the task, if any
creationDate
Time this record was created
lastUpdateDate
Time this record was last updated
completionDate
Time the task was completed
1
2
3
4
5
6
7
8
9
10
{
    "id":"e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b07",
    "type": "10",
    "status": 10,
    "priority": 20,
    "createdByUserId": "bd948e62-a3fd-4cf0-87f3-ee6a0ae7f3fa",
    "assignedUser": { @User object },
    "creationDate": 1562843993000,
    "lastUpdateDate": 1562843993000
}

User Object

Represents any user (including unauthenticated users). An agent object is a superset of a user object (contains the user object fields plus additional fields).

The email address must be unique; a user object is identified by its email address.
Object field name 
Description 
Format
Response Level
id
User ID
Public
firstName
User first name
String
Public
lastName
User last name
String
Restricted
userType
Integer
Restricted
email
User email address, up to 200 characters

Must be unique to this user obect.
String
Restricted
emailStatus
Integer
Public
lastUpdateDate
Time this record was last updated
Public
profileImage
URL of user’s profile image

String
Public
signature
URL of signature

Relevant only for agents.
String
Restricted
phoneNumbers
List of phone numbers
Restricted
company
(Deprecated)
Associated company
Public
companyIds
(Deprecated)
List of associated companies
List of GUIDs
Public
companiesPermissions
List of associated companies and their permissions, as follows:
* <company GUID>
Map
Public
twitterHandle
Twitter ID
String
Public
instagramHandle
Instagram ID
String
Public
instagramImageLastUpdateDate
Time the Instagram user image was last fetched from Instagram

When the image is more than two days old, Wix Answers fetches the image again the next time the user adds a reply or adds an Instagram ticket.
Public
externalId
Relevant only for tenants supporting SSO - the external ID in the tenant’s SSO auth system
String
Public
creationDate
Time this record was created
Public
customFields
List of user custom field values, each one a structure of:
* <API field name> (string): The API name of the field (auto-generated)
* <Custom Field value> (format depends on the field)
Structure
Extended
banned
Whether the user is banned
Boolean
Extended
importId
Import batch process 

Public
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
{
    "id":"e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b07",
    "email":"user@wix.com",
    "emailStatus":0,
    "creationDate":1562843993000,
    "lastUpdateDate":1562843993000,
    "userType":2,
    "firstName":"Wix",
    "lastName":"User",
    "profileImage":"Image URL",
    "banned":false,
    "companiesPermissions": {
      "1f550b89-a12a-4169-82fd-82e4ca51f264": 2,
      "1f550b89-a12a-4169-82fd-82e4ca51f265": 1,
      "1f550b89-a12a-4169-82fd-82e4ca51f266": 0,
    }
}

UserInfo Object

Information about a user's system.
Object field name
Description
Format
ip
The user's IP address
String
userAgent

String
operatingSystemFamily

String
operatingSystemName

String
operatingSystemVersion

String
browserFamily

String
browserName

String
browserVersion

String
countryCode
Note that a country code is different from a language code
Two-letter country code string
Additional information may also be available, such as plugins, domain, organization, city, areaCode, timeZone, and so forth.
1
2
3
4
5
6
7
8
9
10
11
    {
        "ip": "91.199.119.252",
        "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:69.0) Gecko/20100101 Firefox/69.0",
        "operatingSystemFamily": "Windows",
        "operatingSystemName": "Windows",
        "operatingSystemVersion": "10.0",
        "browserFamily": "Firefox",
        "browserName": "Firefox",
        "browserVersion": "69",
        "countryCode": "IL"
    }

User Role Object

A user with a role is an agent. Roles contain a collection of permissions. Standard roles include Viewer, Agent, and Admin.
Object field name
Description
Format
id
The role ID
name
The role name
String
description
The role description
String
permissionsData
List of permissions for this role:
- permissions (list of permissions)
Structure
creationDate
Time this record was created
lastUpdateDate
Time this record was last modified
1
2
3
4
5
6
7
8
{
    "id": "e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b07",
    "name": "Custom",
    "description": "Aget Custom",
    "permissions": ["30", "40", "70"],
    "creationDate": 1568892518000,
    "lastUpdateData": 1568892518000
}

User Ban Object

Represents a user ban created by an agent.
Object field name
Description
Format
userId
The user ID
agentId
The agent that enabled the ban
reason
The reason for the ban
String
creationDate
Time this record was created
1
2
3
4
5
6
{
    "userId": "e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b07",
    "agentId": "e932c0a3-6e9b-43cbc-a3a4-90f6ee6a5b06",
    "reason": "Abusive",
    "creationDate": 1568892518000
}

Company Object

Represents a company, which can be used to classify users. For more information, see Companies API.
Object field name
Description
Format
id
Company ID
name
Company name
String
settings
Structure of:

* defaultSlaPolicyId (SLA policy GUID)
* followers (List of user GUIDs): List of agents that are notified when users associated with this company add tickets. Max 10.
* contacts (List of user GUIDs): List of company contacts. Max 10.
* +emailDomainSettings (structure)
* +accountManagerSettings (structure)
* shareTicketsEnabled (Boolean): When true, then, by default, users of this company can interact with all tickets of the company. When false, then users of this company can interact only with their own tickets. Each user can be configured to inherit or override this property.
Structure

+emailDomainSettings

Email domain settings. Structure of:

* emailDomain (string): Domain to associate with this company
* autoAssociateUsers (Boolean): Whether to automatically associate users who have this domain with this company
Structure

+accountManagerSettings

Account manager settings: Structure of:

* accountManagerID (GUID): Agent primarily responsible for tickets opened by the users associated with this company
* autoAssignTickets (Boolean): Whether to automatically assign tickets opened by/for users associated with this company to the account manager
Structure
accountManager
Agent primarily responsible for tickets opened by the users associated with this company 
numberOfUsers
Number of users associated with the company
Integer
numberOfTickets
Number of tickets associated with the company
Long
shareTicketsEnabled
Whether, by default, users can enable other users of this company to view their tickets; see Company Customer Permission
Boolean
creationDate
Time this record was created
lastUpdateDate
Last time this record was updated
description
Company description
String
logo
URL to company logo
String
externalId
Relevant only for tenants supporting SSO - the external ID in the tenant’s SSO auth system
String
customFields
List of company custom field values, each one a structure of:
* <API field name> (string): The API name of the field (auto-generated)
* <Custom Field value> (format depends on the field)
Structure
timezone
Company time zone

For example: America/Denver
importId
Import batch process 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
{
    "id":"e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b01",
    "name":"Company1",
    "settings":{
        "followers":["e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b02"],
        "emailDomainSettings":{
            "emailDomain":"company1.com",
            "autoAssociateUsers":true
        },
        "accountManagerSettings":{
            "accountManagerId":"e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b03",
            "autoAssignTickets":true
        }
    },
    "accountManager":{ ... @Agent object ... },
    "creationDate":1568892518000,
    "lastUpdateDate":1568892518000,
    "description":"Company One",
    "logo":"https://a.com/company1.jpg",
    "timezone": "America/Denver"
}

Agent Object

An agent object has all of the fields that a User object has, plus the following:
Agent Custom Fields
When you get an agent object (using an agent API), any returned custom fields are those specifically configured for the agent (if any). When you get a user object of an agent, any returned custom fields are those specifically configured for the user object (if any); agent custom fields are not returned.
Object field name
Description
Format
roleId
User role
statusStartDate
Time status last changed
agentCreationDate
Time this user was made an agent
agentLastUpdateDate
Last time the record of this agent was updated
manager
The agent's manager
isManager
Whether this agent is a manager of one or more other agents
Boolean
locationId
The agent's location
Location GUID
teamId
The agent's team
Team GUID
jobTitle
The agent's job title
String
locales
The languages with which the agent is familiar
List of language code strings
active
Whether the agent is active or not
Boolean
interfaceLocale
The locale the agent selected for the KB UI
groupIds
The groups of which this agent is a member
List of GUIDs
qualifiedChannels
List of Agent Channels methods that the agent uses to communicate with users
List of integers
channel
Agent Channel to which the agent is currently assigned
Integer
customStatusId
A custom busy status
agentStatus
Integer
lastChatAssignedDate
Time agent last assigned to a chat
assignedQueues
List of queues to which the agent is assigned. Each item in the list a structure of:
* queueId: Queue GUID
List of structures
statistics
Structure of:

* avgCallDurationSec (integer): Average call duration, in seconds
* callsCount (integer): Number of calls
* totalTimeBusySec (integer): Total number of seconds agent's phone was busy
* timeBusy (integer): Number of times agent's phone was busy
Structure
customFields
List of agent custom field values, each one a structure of:
* <API field name> (string): The API name of the field (auto-generated)
* <Custom Field value> (format depends on the field)
Structure
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
{
    "id":"e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b07",
    "email":"agent@wix.com",
    "emailStatus":1,
    "creationDate":1567711713000,
    "lastUpdateDate":1567711713000,
    "channel":0,
    "agentStatus":10,
    "userType":4,
    "firstName":"Wix",
    "lastName":"Agent",
    "profileImage":"Image URL",
    "banned":false,
    "groupIds":["123"],
    "agentCreationDate":1567711714000,
    "agentLastUpdateDate":1567711714000,
    "assignedQueues":[ {"queueId": "d367738e-368e-41fe-9289-1a5cbbc3c239"} ],
    "activity":{
        "status":100,
        "statusStartDate":1567711713738
    },
    "statistics":{
        "avgCallDurationSec":0,
        "callsCount":0,
        "totalTimeBusySec":0,
        "timesBusy":0
    },
}

Group Object

Agents can be assigned to groups.
Object field name
Description
Format
id
The group ID
name
The group name
String, between 1 and 100 characters
settings
Structure of:
* avatarPath (string): Path to group image
Structure
creationDate
Time this record was created
lastUpdateDate
Last time this record was updated
membersCount
Number of agents in the group
Integer
members
List of agents in the group
1
2
3
4
5
6
7
8
9
{
    "id": "e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b07",
    "name": "Group 1",
    "settings": {"avatarPath":"/path/to/group/image"},
    "creationDate": 1567711714000,
    "lastUpdateDate": 1567711714000,
    "membersCount": 2,
    "members": [ @Agent objects ],
}

Team Object

Agents can be assigned to teams.
Object field name
Description
Format
id
The team ID
name
The team name
String
creationDate
Time this record was created
lastUpdateDate
Last time this record was updated
1
2
3
4
5
6
{
    "id": "e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b07",
    "name": "Team 1",
    "creationDate": 1567711714000,
    "lastUpdateDate": 1567711714000,
}

Location Object

Agents can be assigned to locations.
Object field name
Description
Format
id
The location ID
name
The location name
String
creationDate
Time this record was created
lastUpdateDate
Last time this record was updated
1
2
3
4
5
6
{
    "id": "e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b07",
    "name": "Location 1",
    "creationDate": 1567711714000,
    "lastUpdateDate": 1567711714000,
}

PII Object

Represents the GDPR personally identifiable information about the user.
Object field name
Description
Format
userId
The user ID
email
The user's email address
String
phoneNumbers
List of phone numbers
firstName
The user's first name
String
lastName
The user's last name
String
profileImage
URL of user’s profile image
String
googleId
The user's Google ID
String
facebookId
The user's Facebook ID
String
ssoId
Relevant only for tenants supporting SSO - the external ID in the tenant’s SSO auth system

See externalId in the User Object.
String

PI Object

Represents the GDPR personal information about the user, other than what is in the PII object.
Object field name
Description
Format
tickets
Information about the user's tickets, a list of structures

The structure of each entry is described in the following table.
Structure, see below
PI Ticket Information field name
Description
Format
id
The ticket ID
ticketNumber
The ticket number
Integer
subject
The ticket subject
String
toEmail
The email address to which the user sent an email, as a result of which the ticket was created
String
resolvedCustomFields
A map of custom fields associated with the ticket, each one a string followed by an object
Structure
phoneCalls
A list of phone calls associated with the ticket, each one containing a phone number and a URL to the recorded phone call, if any
Structure
replies
A list of replies associated with the ticket, each of which contains the reply GUID
Structure
chatMessages
A list of chat messages associated with the ticket, each of which contains the text and any attachments
Structure
content
The ticket content
String
userInfo
Information about the user's system
UserInfo object
attachments
List of ticket attachments
creationDate
Time this record was created

Line Object

Represents a phone line that can handle inbound calls, outbound calls, or both.

Inbound calls come into a phone line and pass through an IVR. Depending on how the customer has defined the service, the IVR provides numerical options, directs the call to a phone queue, routes to voicemail, or routes to an external CRM.

Outbound calls can be initiated by a callback request or directly by an agent.
Object field name
Description 
Format
id
The line ID
phoneNumber
The phone number associated with this line
String
name
A name representing the line
String
description
A short description for the line
String
status
The line status
Integer

1 if inbound or outbound (or both) calls are enabled, 0 if both are disabled
creationDate
Time this record was created
lastUpdateDate
Last time this record was updated
inactiveLineVoiceMessage
Voice message when line is inactive
callBackVoiceMessage
Voice message to send to user when Wix Answers initiates a call on this line using a callback.
callBackTextMessage
Text message to send to user when Wix Answers initiates a call on this line using a callback.
schedule
Phone line schedule information. Structure of:

* (Deprecated; use scheduleId, instead) +openingHours (structure, see below):  Normal business hours
* offHoursMessage (Voice Message object): Voice message outside of normal business hours
* offHoursSmsMessage (Text Message object): Text message outside of normal business hours
* (Deprecated; use scheduleId, instead) downTimes (list of down times): Temporary down time during normal business hours, a list of structures as follows: 
  * name (string): Reason for downtime as it appears in the UI
  * start (Unix time string): Start of downtime
  * end (Unix time string): End of downtime
  * message (Voice Message object): Message to play during this downtime
  * smsMessage (Text Message object): Message to send during this downtime
* schduleId (schedule GUID): See Schedule object
* useSchedule (Boolean): Whether to use the schedule defined in scheduleId (recommended), or to use the old system of openingHours and downtimes.
Structure

(Deprecated)

+openingHours

Structure of:

* openTwentyFourSeven (Boolean): Whether line is always open (when true, ignore other settings)
* openingHours (structure, see below): Normal business hours
Structure

(Deprecated)

+openingHours

Structure of:

* +MONDAY ... +SUNDAY (structures, see below)


+MONDAY
+TUESDAY
+WEDNESDAY
+THURSDAY
+FRIDAY
+SATURDAY
+SUNDAY

Business hours for each day of the week. Structure of:
 
* enabled (Boolean): Whether to enable or disable this day. When false, ignore other settings for this day and note the day as closed.
* dailyActivities (list of structures): List of opening times, a list of structures as follows:
  * start (List of start hour (integer), start minute (integer), start second (integer), start ms (integer))
  * end (List of end hour (integer), end minute (integer), end second (integer), end ms (integer))
  * enabled (Boolean): Whether to enable or disable this start/end time period
Structure
inboundEnabled
Whether the line is open for inbound calls
Boolean
outboundEnabled
Whether the line is open for outbound calls
Boolean
default
Whether this line is the default line for inbound / outbound calls
Boolean
ivrId
IVR flow used for each call received on this line

Required when inboundEnabled is true.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
{
    "id": "a63a96fc-6914-48b3-96c9-e068cb8fdeb9",
    "phoneNumber": "+1234567890",
    "name": "IVR Authentication line",
    "description": "this is new line that should work 24/h",
    "inactiveLineVoiceMessage": { @Voice Message Object },
    "callBackVoiceMessage": { @Voice Message Object },
    "callBackTextMessage": {
      "text": "Get immediate help by visiting our Help Center. If you don't find what you need, you can request a call with an agent right from there.",
      "enabled": false
    },
    "schedule": {
      "offHoursMessage": { @Voice Message Object },
      "openingHours": {
        "openingHours": {
          "SUNDAY": {
            "dailyActivities": [
              {
                "start": [
                  0,
                  0,
                  0,
                  0
                ],
                "end": [
                  23,
                  59,
                  59,
                  0
                ],
                "enabled": true
              }
            ],
            "enabled": true
          },
          "MONDAY": {
            // same as Sunday
          }
          ...
        } // close second openingHours
      } // close first openingHours
      "downTimes": [
        {
          "name": "testing",
          "start": 1580882400000,
          "end": 1580932800000,
          "message": { @Voice Message Object }
        }
      ]
    }, // close schedule
    "inboundEnabled": true,
    "outboundEnabled": true,
    "ivrId": "24865db8-d430-4845-a5cb-ff8360b3704c",
    "creationDate": 1540389928000,
    "lastUpdateDate": 1576417441000,
    "status": 1,
    "default": false
}

Voice Message Object

Represents a voice message that plays automatically when the relevant criteria are met.
Object field name
Description
Format
textToSpeech
Structure of:

* text (string): Text to convert to speech for voice message
* locale (language code string): For which language this message is applicable
Structure
audioFile
Structure of:

* url (string): URL of audio file
* name (string): Name of audio file
Structure
mode
Mode for this this message is applicable. Possible values are:

* tts
* audio
String
1
2
3
4
5
6
7
8
9
10
11
{
    "textToSpeech": {
        "text": "Text to convert",
        "locale": "en"
    },
    "audioFile": {
        "url": "/path/to/audiofile",
        "name": "audiofile.wav"
    },
    "mode": "audio"
}

Text Message Object

Represents a text (SMS) message that is sent automatically when the relevant criteria are met.
Object field name
Description
Format
text
The message
String
enabled
Whether this message is enabled   
Boolean

Call Object

Represents a phone call.

Inbound calls come into a phone line and pass through an IVR. Depending on how the customer has defined the service, the IVR provides numerical options, directs the call to a phone queue, routes to voicemail, or routes to an external CRM. One agent (of the ones assigned to the queue) answers the phone call; this agent may invite other agents to join the call.

Outbound calls can be initiated by a callback request or directly by an agent.

A phone call creates a new ticket, or is associated with an existing ticket.
Object field name
Description 
Format
id
The call ID
lineId
The line from which the call originated
queueId
The queue into which the call was sent/handled
type
Integer
user
User who initiated the call
userPhoneNumber
User's phone number
ticketId
Associated ticket

The ticket contains details about the phone call.
status
Integer
closingAgentId
Agent who closed the call
participants
Set of participants in the call, structure of:
* status (integer): Call Participant Status
* statusLastUpdateDate (Unix time string): Time the status was last updated
* all other User object fields
Structure of extended User object, as described
callTransferInfo
Structure of:
* transferredFromCallId (GUID)
* transferredToCallId (GUID)
* transferredToNumber (Phone Number object)
* additionalQueues (list of Queue objects)
* externalTransferStartDate (Unix time string)
* externalTransferEndDate (Unix time string)
Structure
priority
Integer
ivrJourney
List of IVR history structures
List of structures
creationDate
Time this record was created
lastUpdateDate
Last time this record was updated
startDate
Time call started
endDate
Time call ended
ivrStartDate
Time IVR started
ivrEndDate
Time IVR ended
queueStartDate
Time queue started
queueEndDate
Time queue ended
wrapUpStartDate
Time wrap up started
wrapUpEndDate
Time wrap up ended

Queue Object

Represents a phone queue.

Inbound calls come into a phone line and pass through an IVR. Depending on how the customer has defined the service, the IVR provides numerical options, directs the call to a phone queue, routes to voicemail, or routes to an external CRM.

Callback requests also enter a queue. Agents are assigned to the queue to handle incoming phone calls and callback requests.
Object field name
Description 
Format
id
The queue ID
name
Queue name
String
description
Queue description
String
locale
Language expected of the users on the phone calls in this queue
totalAssignees
Number of agents assigned to the queue
Integer
useCallOptionsFromTenantSettings
Whether to use the Call Center call options, or the call options configured for this queue (see below)
Boolean
callOptions
Structure of:

* +waitAudio (structure): audio to play while user is waiting for agent to answer
* +holdAudio (structure): audio to play while user is on hold
* voiceMailMessageLengthMinutes (integer): Max length of user's voice mail message, in minutes, between 1 and 10
String

+waitAudio
+holdAudio

Audio to play while waiting or on hold. Structure of:

* url (string): URL to wait/hold audio file
* name (string): Name of wait/hold audio file
Structure
queueWaitOfferSettings
Whether to offer options to users waiting in the queue, and, if so, what options and how frequently. Structure of:

* enabled (Boolean): Whether wait offers are enabled
* +queueWaitOfferThresholds  (structure) 
* waitOfferMessage (Voice Message object): Message to play before all wait offers
* waitOfferOptions  (List of Offer objects): The offers linked to the keys pressed by the user
Structure

+queueWaitOfferThresholds

Thresholds related to wait offers. Structure of:

* enableOfferPerAudioIterations (Boolean): Enable offers after maxAudioIterationsThreshold number of times playing waitAudio.
* enableOfferPerCalls (Boolean): Enable offers if maxWaitingCallsThreshold number of other users are waiting.
* maxAudioIterationsThreshold (integer):See enableOfferPerAudioIterations.
* maxWaitingCallsThreshold (integer): See enableOfferPerCalls
Structure
queueOpeningHourSettings
Opening hours for the queue. A structure as follows:

* schedule (structure):
  * offHoursMessage (Voice Message object): Voice message outside of normal business hours
  * (Deprecated; use scheduleId, instead) openingHours (structure): See Line Object for details.
  * schduleId (schedule GUID): See Schedule object
  * useSchedule (Boolean): Whether to use the schedule defined in scheduleId (recommended), or to use the old system of openingHours.
* offHoursAction (structure): Call actions; see action in Offer object
Structure
queueNonAvailableAgentsSettings
What to do when all agents assigned to the queue are offline. A structure as follows:

* nonAvailableAgentsMessage (Voice Message object): Message to send to user
* nonAvailableAgentsAction (structure): Call actions; see action in Offer object
Structure
blockManualCallTransfer
Whether a call can be manually transferred to this queue
Boolean
queueCallPriority
Call priority:
* 0 (normal, default)
* 1 (high)
Integer
creationDate
Time this record was created
lastUpdateDate
Last time this record was updated
isDefault
Whether this is the default queue
Boolean
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
{
    "id":"e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b07",
    "name":"Billing",
    "description":"Queue Description",
    "locale":"en",
    "totalAssignees":0,
    "useCallOptionsFromTenantSettings":true,
    "callOptions":{
        "waitAudio":{
            "url":"Wait Audio URL",
            "name":"Wait Audio file name"
        },
        "holdAudio":{
            "url":"Hold Audio URL",
            "name":"Hold Audio file name"
        },
        "voiceMailMessageLengthMinutes":2
    },
    "queueWaitOfferSettings": {
      "enabled": true,
      "queueWaitOfferThresholds": {
        "enableOfferPerAudioIterations": true,
        "enableOfferPerCalls": true,
        "maxAudioIterationsThreshold": 1,
        "maxWaitingCallsThreshold": 1
      },
      "waitOfferMessage": { @Voice Message object },
      "waitOfferOptions": [ List of @Offer objects ],
    },
    "queueOpeningHoursSettings": {
      "schedule": {
        "offHoursMessage": { @Voice Message object },
        "openingHours": {
          "openingHours": {
            "SUNDAY": {
              "dailyActivities": [
                {
                  "start": [
                    9,
                    0,
                    0,
                    0
                  ],
                  "end": [
                    18,
                    0,
                    0,
                    0
                  ],
                 "enabled": false
                }
              ],
              "enabled": false
            },
            "MONDAY": {
                ...
            },
            ...,
          },
          "openTwentyFourSeven": true
        },
      },
      "offHoursAction": {
        "assignTicketEnabled": false,
        "prioritizeTicketEnabled": false,
        "addTicketLabelsEnabled": false,
        "transcribeVoiceMailMessageEnabled": false,
        "type": 6
      }
    }
    "queueNonAvailableAgentsSettings": {
        "nonAvailableAgentsMessage":{ @Voice Message object },
        "nonAvailableAgentsAction": {
          "assignTicketEnabled": false,
          "prioritizeTicketEnabled": false,
          "addTicketLabelsEnabled": false,
          "transcribeVoiceMailMessageEnabled": false,
          "type": 6
        }
    }
    "creationDate":1546427400000,
    "lastUpdateDate":1546427400000,
    "isDefault":false
}

Offer Object

Represents an offer, which includes a voice message that plays automatically when the relevant criteria are met.
Object field name
Description
Format
queueWaitOfferType
The type of offer:

* Callback (0)
* Transfer Queue (1)
* Voicemail Message (2)
Integer
userInputOption
Structure of:

* +input (structure)
* messages (List of Voice Message objects): Messages to play for the options
* +action (structure): Call actions
Structure

+input

The user input and how it was received. Structure of (one of the following):

* keyPressed (string): The key pressed by the user
* say (string): Text of user voice input
Structure

+action

What to do with the ticket after receiving user input. Structure of some or all of the following:

* queueId (GUID)
* type (integer): Action type
* assignTicketEnabled (Boolean)
* prioritizeTicketEnabled (Boolean)
* addTicketLabelsEnabled (Boolean)
* transcribeVoiceMailMessageEnabled (Boolean)
Structure

Phone Number Object

Represents a phone number.
Object field name
Description 
Format
countryCode
The country code prefix (See country code prefixes here )
String
number
The number
String
1
2
3
4
{
    "countryCode":"1",
    "number":"2125551212"
}

Custom Field Object

Used for tickets, users, agents, and companies.
Object field name
Description
Format
Response Level
id
The custom field ID
Public
name
Custom field API name

The API name of the field (auto-generated). This name is returned in the relevant object custom field map.
String
Public
type
Integer
Public
itemType
The attached object type (the object to which this custom field is attached)

See Item Type. Relevant values are:

* Ticket (8)
* User (60)
* Company (230)
* Agent (300)
Integer
Public
displayName
Name displayed in the UI
String
Public
data
For tickets only, non-multilevel field:

Structure of:
* multilingualData: Map of <locales> to <custom field data>, as follows:
  * <locale> (e.g. "en")
  * <custom field data>: Structure of:
    * title (string): The display name, as configured for the field
    * placeHolder (string): Default text, relevant for text or multi-line field
    * description (string): Text to appear near the field in the UI
    * values (List of integers): Field options, relevant for an options field
    * disabled (Boolean): Whether field is disabled in the current locale. Disabled custom fields are not returned at Public level.
* deletedValues (Extended): Map of <locale> to list of strings, as follows:
  * <locale> (e.g. "en")
  * <list of values> (list of strings): deleted values for this locale.
Structure
Public, except as noted in the description

For tickets only, multilevel field:

Structure of:
* fieldLevels (list of structures): List of levels, in order, each one as follows:
  * title (String): The level title
  * translatedTitles (map): A map of locales to translated titles, which are pairs of:
    * <locale> (language code string): Language
    * <title> (String): The title in this locale
* values (list of value structures): A list of top level values and their trees of subvalues, a recursive structure as follows:
    * value (String): The value, such as "Wrong Size".
    * translatedValues (map): A map of locales to translated values, which are pairs of:
      * <locale> (language code string): Language
      * <title> (structure): The value in this locale, a structure of:
        * value (String): The translated value)
        * disabled (Boolean): Whether this translated value is enabled in the KB. Disabled translated values are not returned at Public level.
    * disabled (Boolean): Whether this value is disabled in the KB. Disabled values are not returned at Public level.
    * children (list of value structures): The children of this value, a list of recursive structures identical to this structure (with parameters value, translatedValues, disabled, and children).
* enabledLocales (list of language code strings): List of languages enabled for this field.
* publiclyVisible (Boolean): Whether this field appears in the KB. Not publicly visible fields are not returned at Public level.
Structure
Public, except as noted in the description

For users, agents, or companies:

Structure of:
* data: Structure of:
  * title (string): The display name, as configured for the field
  * placeHolder (string): Default text, relevant for text or multi-line field
  * description (string): Text to appear near the field in the UI
  * values (List of integers): Field options, relevant for an options field
  * disabled (Boolean): Whether field is disabled in the current locale. Disabled custom fields are not returned at Public level.
* deletedValues (list of strings, Extended): deleted values. 
Structure
Public, except as noted in the description
creationDate
Time this record was created
Public
lastUpdateDate
Last time this record was updated
Public
Ticket custom object:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
{
    "id":"e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b07",
    "name":"wix-answers-disclaimer",
    "itemType":8,
    "displayName":"Wix Answers Disclaimer",
    "data": {
      "multilingualData": {
        "pt": {
          "title": "",
          "placeHolder": "",
          "description": "",
          "values": [
            "Option Placeholder",
            "Option 2"
          ],
          "disabled": false
        },
        "en": {
          "title": "What is you favourite food?",
          "placeHolder": "Select Food",
          "description": "Food is cool",
          "values": [
             "Pizza",
             "Burgers"
          ],
          "disabled": false
        }
      }
    }
    "creationDate":1524230600000,
    "lastUpdateDate":1561065255000,
    "type":3
}
User custom object (similar for agent and company):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
{
    "id":"e932c0a3-6e9b-43cf-b3a9-90f6ee6a5b07",
    "name":"wix-answers-bird",
    "itemType":60,
    "displayName":"Bird Choice",
    "data":{
      "data":{
          "title":"Bird Choice",
          "placeHolder":"A custom field",
          "description":"",
          "values":["goose","gander"],
          "disabled":false
        },
        "deletedValues": [
          "duck"
        ]
    },
    "creationDate":1524230600000,
    "lastUpdateDate":1561065255000,
    "type":3
}

Note Object

Notes are attached to articles, tasks, or tickets.
Object field name
Description 
Format
id
The note ID
itemId
The item to which the note is attached
itemType
The attached item type (the object to which this note is attached)

Integer
createdByUser
The agent that created the note 
content
Note HTML content
String
locale
Language of the item to which the note is attached
creationDate
Time this record was created
lastUpdateDate
Last time this record was updated
1
2
3
4
5
6
7
8
9
{
    "id":"d367738e-368e-41fe-9289-1a5cbbc3c239",
    "itemId":"d7f4c80c-7560-4dc2-8bca-37c589727e5c",
    "itemType":60,
    "createdByUser":{ @User object },
    "content":"A note here",
    "creationDate":1569166518225,
    "lastUpdateDate":1569166518225
}

Error Object

Represents an error.
Object field name
Description 
Format
errorCode
Integer
message
The error
String

Attachment Object

Represents an attachment, such as a file or image, uploaded in a chat message or ticket reply.
Supported file types
Object field name
Description 
Format
name
The attachment file name

For example, attachment.txt .
String
url
URL of the attachment
String
sizeBytes
The size of the attachment, in bytes
Integer
contentType
The content type of the attachment
String
externalAttachmentId
Attachment ID in external server (for example, Twitter)
String
status
The attachment status:
* Failed (1)
* Invalid extension (2)
* Max file size exceeded (3)
* OK (200)
Integer
attachmentType
The attachment type:
* Image (1)
* Video (2)
* Audio (3)
Integer
1
2
3
4
5
6
7
{
    "name": "Attachment1.txt",
    "url": "/path/to/attachment.txt",
    "sizeBytes": 1000,
    "status": 200,
    "attachmentType": 1
}

Chat Object

Represents an entire chat conversation.
Object field name
Description 
Format
id
The chat ID
ticketId
The associated ticket

The ticket contains details about the chat.
widgetId
The associated widget
chatParticipantsInfo
A map of participants to participant information:
* participants, a map of:
  *<user GUID>
  * A structure of:
    * isAgent (Boolean): Whether the chat participant is an agent.
    * statusLastUpdateDate (Unix time string)
Structure
chatStatus
Integer
chatTransferInfo
History of transfer events for this chat, as follows:

* transfers (list of structures): A list of previous transfers, each one a structure as follows:
  * fromGroupId (GUID): The agent group that the chat was transferred from
  * toGroupId (GUID): The agent group that the chat was transferred to
  * transferredDate (Unix time string)
Structure
unansweredCount
The number of unanswered messages in the chat
Integer
creationDate
Time this record was created
lastUpdateDate
Last time this record was updated
lastReopenedDate
Last time this record was reopened
lastMessageId
Most recent chat message
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
{
    "id": "d367738e-368e-41fe-9289-1a5cbbc3c239",
    "ticketId": "e932c0a3-6e9b-43cf-b3a9-0ae790f6ee6a",
    "chatParticipantsInfo": {
        { "bd948e62-a3fd-4cf0-87f3-ee6a0ae7f3fa",
          {
            "isAgent": false,
            "chatParticipantStatus": 10,
            "statusLastpdate": 1569166518225
          }
        },
        { "e932c0a3-6e9b-a3a4-b3a9-0ae790f6ee6b",
          {
            "isAgent": true,
            "chatParticipantStatus": 10,
            "statusLastpdate": 1569166518345
          }
        }
    },
    "chatStatus": 1,
    "unansweredCount": 0,
    "creationDate":1569166518225,
    "lastUpdateDate":1569166518225
}

Chat Info Object

This object is a subset of the Chat object.
Object field name
Description 
Format
id
The chat message ID
ticketId
The associated ticket
userId
The user who started the chat
chatStatus
Integer
lastAgentReplier
The last agent to reply in the chat, a structure:
* firstName (string)
* profileImage (string): URL of profile image
Structure
lastMessageContent
The last message from lastAgentReplier
String
LastMessageByAgent
Whether the last message in the chat from the an agent (lastAgentReplier)
Boolean
lastMessageCreationDate
Date of last message from lastAgentReplier

Chat Message Object

Represents a specific chat message within a chat.
Object field name
Description 
Format
id
The chat ID
externalId
Currently, this is the ID from Whatsapp
String
ticketId
The associated ticket
ticketOwner
The user who started the chat
text
The chat message content
String
chatMessageType
Whether the author is a user or an agent; Chat Message Type
Integer
chatMessageData
The chat message's attachments, a structure of:

* attachments: List of Attachment objects
Structure
status
Integer
creationDate
Time this record was created
deliveredDate
Time this record was delivered
readDate
Time this record was read
lastUpdateDate
Last time this record was updated
chatId
The associated chat
deleted
Whether the message is deleted
Boolean. The default is false.
user
The message author

Schedule Object

Represents a list of opening hours for your customer service.
Object field name
Description 
Format
id
The schedule ID
name
A name for this schedule (as it appears in the UI)
String
description
A description for this schedule (as it appears in the UI)
String
openingHours
Opening hours, a structure as follows:
* openingHours (structure, required): A map of days of the week to opening hours, pairs of values as follows:
  * string for the day of the week, one of: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, or SUNDAY
  * A structure of:
    * dailyActivities (list of structures, required): A list of start and end time pairs, as follows:
      * start (list of integers): Start time as a list of four integers: HH, mm, ss, ms. For example: [9, 0, 0, 0]
      * end (list of integers): End time, as above for start time
      * enabled (Boolean): Whether this daily activity is currently enabled
    * enabled (Boolean): Whether this list of daily activities is currently enabled
* openTwentyFourSeven (Boolean): Whether to ignore the opening hours, because support is available all day and night
Structure
timeZone
Time zone for this schedule

The default is the tenant time zone

For example: America/Denver
creationDate
Time this record was created
lastUpdateDate
Last time this record was updated
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
{
    "id": "b913bb9e-0111-3d01-a52b-1ee23adbc84a",
    "name": "default",
    "openingHours": {
        "openingHours": {
            "FRIDAY": {
                "dailyActivities": [
                    {
                        "start": [9,0,0,0],
                        "end": [17,0,0,0],
                        "enabled": true
                    }
                ],
                "enabled": true
            },
            "MONDAY": { ...
            },
            "SUNDAY": { ...
            },
            "TUESDAY": { ...
            },
            "SATURDAY": { ...
            },
            "THURSDAY": { ...
            },
            "WEDNESDAY": { ...
            }
        },
        "openTwentyFourSeven": false
    },
    "timezone": "Asia/Jerusalem",
    "creationDate": 1619590351000,
    "lastUpdateDate": 1622453885000
}

Schedule Downtime Object

Represents a temporary downtime for your customer service.
Object field name
Description 
Format
id
The schedule ID
name
A name for this downtime (as it appears in the UI)
String
scheduleId
The schedule to which to apply this downtime
Schedule object GUID
startDate
Start of downtime
endDate
End of downtime
creationDate
Time this record was created
lastUpdateDate
Last time this record was updated
1
2
3
4
5
6
7
8
9
{
    "id": "b913bb9e-0111-3d01-a52b-1ee23adbc84a",
    "name": "maintenance",
    "sceduleId": "bd948e62-a3fd-4cf0-87f3-ee6a0ae7f3fa",
    "startDate": 1619590351000,
    "endDate": 1619590351900,
    "creationDate": 1619590251000,
    "lastUpdateDate": 1619590251000
}

Email Template Object

Represents the subject and content of an email template in a specific language.
Object field name
Description 
Format
type
Integer
brandId
Brand ID
Brand GUID
locale
Language of template
subject
The email subject
String
bodyHtml
The email contents, in HTML

Depending on the template type, the HTML can contain placeholders and dynamic text. See the email template type for details.
String
1
2
3
4
5
6
{
    "type": 4,
    "locale": "en",
    "subject": "Ticket Added",
    "bodyHtml": "<p>A ticket was added in Wix Answers.</p>"
}

Email Template Settings Object

Represents whether an email template is enabled or disabled.
Object field name
Description 
Format
isDisabled
Whether the email template is enabled or disabled
Boolean

The default is false (templates are enabled by default).
type
Integer
1
2
3
4
{
    "isDisabled": false,
    "type": 4
}

Brand Object

Represents information about a brand.
Object field name
Description 
Format
id
The brand ID
enabled
Whether the brand is enabled
Boolean
name
The brand name
String

Up to 50 characters.
primaryLocale
Primary locale of the brand
Language code string (for example: 'de')
logoUrl
URL of the brand logo
String

Up to 1000 characters.
settings
Various brand settings
Structure
creationDate
Time this record was created
lastUpdateDate
Last time this record was updated
1
2
3
4
5
6
7
8
9
{
    "id": "b913bb9e-0111-3d01-a52b-1ee23adbc84a",
    "enabled": true,
    "primaryLocale": "en",
    "logoUrl": "http://path/to/logo",
    "settings": { ... },
    "creationDate": 1619590251000,
    "lastUpdateDate": 1619590251000
}