# Conversation views
Conversation views are simply saved search filters so you can easily and quickly filter your conversations with just a single click.
# The view object
id integer
The system-generated ID of the view
account_id integer
The account id where the view belongs to.
user_id integer
The user id the conversation view belongs to. If
null
, the view is considered to be available to all users.name string
The name of the view.
filter object
The view filters used to filter the conversations list.
created_at string
The timestamp when the view was created.
updated_at string
The timestamp when the view was last updated.
# The view object
{
"id": 1,
"account_id": 1,
"user_id": null,
"name": "Unassigned",
"filter": {
"agent": "unassigned"
},
"updated_at": "2019-04-23T21:37:42+00:00",
"created_at": "2019-04-23T21:37:42+00:00"
}
# Create a view
Note
When you create a conversation view, it is automatically associated with you (i.e., user_id
has your ID). At the moment, all views are available to all users in the account.
name string required
The name of the view.
filter object required
The view filters used to filter the conversations list.
# Sample request
curl https://www.yourdomain.com/api/v1/accounts/1/conversation-views \
--request POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <access-token>" \
-d name="Mine / All" \
-d filters[agent]="me"
# Sample successful response
{
"data": {
"id": 1,
"account_id": 1,
"user_id": 1,
"name": "Mine / All",
"filter": {
"agent": "me"
},
"updated_at": "2019-04-23T21:37:42+00:00",
"created_at": "2019-04-23T21:37:42+00:00"
}
}
# Retrieve a view
# Sample request
curl https://www.yourdomain.com/api/v1/accounts/1/conversation-views/1 \
-H "Accept: application/json" \
-H "Authorization: Bearer <access-token>" \
-G
# Sample successful response
{
"data": {
"id": 1,
"account_id": 1,
"user_id": 1,
"name": "Mine / All",
"filter": {
"agent": "me"
},
"updated_at": "2019-04-23T21:37:42+00:00",
"created_at": "2019-04-23T21:37:42+00:00"
}
}
# Update a view
name string required
The name of the view.
filter object required
The view filters used to filter the conversations list.
# Sample request
curl https://www.yourdomain.com/api/v1/accounts/1/conversation-views/1 \
--request PUT \
-H "Accept: application/json" \
-H "Authorization: Bearer <access-token>" \
-d name="Mine / Open" \
-d filters[agent]="me" \
-d filters[status][]="posted" \
-d filters[status][]="pending"
# Sample successful response
{
"data": {
"id": 1,
"account_id": 1,
"user_id": 1,
"name": "Mine / Open",
"filter": {
"agent": "me",
"status": ["posted", "pending"]
},
"updated_at": "2019-04-23T21:37:42+00:00",
"created_at": "2019-04-23T21:37:42+00:00"
}
}
# Delete a view
# Sample request
curl https://www.yourdomain.com/api/v1/accounts/1/conversation-views/1 \
--request DELETE \
-H "Accept: application/json" \
-H "Authorization: Bearer <access-token>"
If successful, the above request will return an empty response with 204
HTTP status code.
# List all views
# Sample request
curl https://www.yourdomain.com/api/v1/accounts/1/views \
-H "Accept: application/json" \
-H "Authorization: Bearer <access-token>" \
-G
# Sample successful response
{
"data": [
{
"id": 1,
"account_id": 1,
"user_id": null,
"name": "Mine / Open",
"filter": {
"agent": "me",
"status": ["posted", "pending"]
},
"updated_at": "2019-04-23T21:37:42+00:00",
"created_at": "2019-04-23T21:37:42+00:00"
} ,
{...}
]
}