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
type
Integer
Public
locale
Language of the article
Two-letter country code string
Public
primaryLocale
Primary locale of the Wix Answers account
Two-letter country code string
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
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 (two-letter country 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
Two-letter country code string
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
Two-letter country code string
Public
content
The version's HTML content
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
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
 Two-letter country code string
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 (Two-letter country 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
}

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

locale
Ticket language
Two-letter country code string 

subject
Ticket subject
String

content
Ticket content
String

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

company
Company associated with the ticket
Extended
companyId
ID of the company associated with the ticket

userInfo
Structure of user system information sent by the user's browser:

* ip (string)
* userAgent (string)
* operatingSystemFamily (string)
* operatingSystemName (string)
* operatingSystemVersion (string)
* browserFamily (string)
* browserName (string)
* browserVersion (string)
* countryCode (two-letter country code string)
Structure

status
Integer
Extended
priority
Integer
Extended
repliesCount
Number of ticket replies (user and agent replies, not including internal notes)
Integer

lastReply
Last reply (user or agent, not internal note)
Extended
channel
The channel by which the ticket was created

See Channel.
Integer

channelData
Other data related to the channel, depending on the channel. See Channel.
Structure
Extended
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
Extended
labels
List of labels attached to the ticket
Extended
relatedArticleIds
List of articles that are marked as related to the ticket
List of GUIDs
Extended
ticketNumber
Ticket reference number
Integer

creationDate
Time this record was created

lastUpdateDate
Last time this record was updated

assignedBy
Agent who assigned the ticket
Extended
createdByAgent
Agent who created the ticket

Relevant only for tickets created on behalf of a user.
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 last time the ticket was opened
Extended
lastStatusChangeDate
The last time the ticket status changed
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
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
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

createdOnBehalf
Whether an agent created the ticket on behalf of the user
Boolean

initialUserEmail
Email address of user who created the ticket

This is useful if the user's email has since changed.
String
Extended
allCcUsers
All (current or previous) CC users associated with the ticket
List of  User objects
Extended
allCcUserIds
All (current or previous) CC users associated with the ticket
Set of GUIDs
Extended
ccUserIds
CC users associated with the most recent reply
Set of GUIDs
Extended
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
previousLocales
List of previous locales
Set of two-letter country code strings
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
Structure of user system information sent by the user's browser:

* ip (string)
* userAgent (string)
* operatingSystemFamily (string)
* operatingSystemName (string)
* operatingSystemVersion (string)
* browserFamily (string)
* browserName (string)
* browserVersion (string)
* countryCode (two-letter country code string) 
Structure
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 email

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
13
14
15
16
17
18
19
20
21
22
    {
      "content": "<div>Test 3</div>",
      "user": { @User object },
      "channel": 100,
      "creationDate": 1569315593065,
      "lastUpdateDate": 1569315593065,
      "userInfo": {
        "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"
      },
      "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
Two-letter country code string
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
Two-letter country code string
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)
* repliedByUserIds (list of GUIDs)
* repliedByMe (Boolean)
* myTickets (Boolean)
* hasRatings (Boolean)
* ratings (list of Ratings)
* 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
* 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)
* timezone (Long time zone name string, for example America/Denver)
* handledByUserIds (list of GUIDs)
* handlingUserIds (list of GUIDs)
* handled (Boolean)
* currentlyHandled (Boolean)

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
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
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
CSAT 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
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
Two-letter country code string 
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
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,
    }
}

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
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 two-letter country code strings
active
Whether the agent is active or not
Boolean
supportUtilizationRate
The agent's availability percentage
Integer
interfaceLocale
The locale the agent selected for the KB UI
Two-letter country code string
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
latUpdateDate
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
latUpdateDate
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
latUpdateDate
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,
}

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. Structure of:

* text (string): Text message in response to calls
* enabled (Boolean): Whether text message is enabled
Structure
schedule
Phone line schedule information. Structure of:

* +openingHours (structure, see below):  Normal business hours
* offHoursMessage (Voice Message object): Voice message outside of normal business hours
* +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
Structure

+openingHours

Structure of:

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

+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 (two-letter country 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"
}

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
Two-letter country code string 
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): See schedule in Line object
* 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 (See country codes 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 (for users, agents, or companies, see below):

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 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
Two-letter country code string
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
}

Attachment Object

Represents an attachment, such as a file or image, uploaded in a chat message or ticket reply.
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
status
The attachment status:
* Failed (1)
* Invalid extension (2)
* Max file size exceeded (3)
* OK (200)
Integer
1
2
3
4
5
6
{
    "name": "Attachment1.txt",
    "url": "/path/to/attachment.txt",
    "sizeBytes": 1000,
    "status": 200
}

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