chore: Add documentation for automation rule, fix conversation/inbox_members (#4852)
This commit is contained in:
parent
713fdb44ee
commit
37cb46238a
17 changed files with 695 additions and 69 deletions
|
@ -16,6 +16,8 @@ canned_response:
|
||||||
$ref: ./resource/canned_response.yml
|
$ref: ./resource/canned_response.yml
|
||||||
custom_attribute:
|
custom_attribute:
|
||||||
$ref: ./resource/custom_attribute.yml
|
$ref: ./resource/custom_attribute.yml
|
||||||
|
automation_rule:
|
||||||
|
$ref: ./resource/automation_rule.yml
|
||||||
contact:
|
contact:
|
||||||
$ref: ./resource/contact.yml
|
$ref: ./resource/contact.yml
|
||||||
conversation:
|
conversation:
|
||||||
|
@ -102,6 +104,10 @@ integrations_hook_create_payload:
|
||||||
integrations_hook_update_payload:
|
integrations_hook_update_payload:
|
||||||
$ref: ./request/integrations/hook_update_payload.yml
|
$ref: ./request/integrations/hook_update_payload.yml
|
||||||
|
|
||||||
|
# Automation Rule
|
||||||
|
automation_rule_create_update_payload:
|
||||||
|
$ref: ./request/automation_rule/create_update_payload.yml
|
||||||
|
|
||||||
|
|
||||||
## public requests
|
## public requests
|
||||||
public_contact_create_update_payload:
|
public_contact_create_update_payload:
|
||||||
|
|
|
@ -0,0 +1,41 @@
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
name:
|
||||||
|
type: string
|
||||||
|
description: Rule name
|
||||||
|
example: Add label on message create event
|
||||||
|
description:
|
||||||
|
type: string
|
||||||
|
description: The description about the automation and actions
|
||||||
|
example: Add label support and sales on message create event if incoming message content contains text help
|
||||||
|
event_name:
|
||||||
|
type: string
|
||||||
|
enum:
|
||||||
|
- conversation_created
|
||||||
|
- conversation_updated
|
||||||
|
- message_created
|
||||||
|
example: message_created
|
||||||
|
description: The event when you want to execute the automation actions
|
||||||
|
active:
|
||||||
|
type: boolean
|
||||||
|
description: Enable/disable automation rule
|
||||||
|
actions:
|
||||||
|
type: array
|
||||||
|
description: Array of actions which you want to perform when condition matches, e.g add label support if message contains content help.
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
example:
|
||||||
|
action_name: add_label
|
||||||
|
action_params:
|
||||||
|
- support
|
||||||
|
conditions:
|
||||||
|
type: array
|
||||||
|
description: Array of conditions on which conversation filter would work, e.g message content contains text help.
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
example:
|
||||||
|
attribute_key: content
|
||||||
|
filter_operator: contains
|
||||||
|
query_operator: nil
|
||||||
|
values:
|
||||||
|
- help
|
45
swagger/definitions/resource/automation_rule.yml
Normal file
45
swagger/definitions/resource/automation_rule.yml
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
event_name:
|
||||||
|
type: string
|
||||||
|
description: Automation Rule event, on which we call the actions(conversation_created, conversation_updated, message_created)
|
||||||
|
enum:
|
||||||
|
- conversation_created
|
||||||
|
- conversation_updated
|
||||||
|
- message_created
|
||||||
|
example: message_created
|
||||||
|
name:
|
||||||
|
type: string
|
||||||
|
description: The name of the rule
|
||||||
|
example: Add label on message create event
|
||||||
|
description:
|
||||||
|
type: string
|
||||||
|
description: Description to give more context about the rule
|
||||||
|
example: Add label support and sales on message create event if incoming message content contains text help
|
||||||
|
active:
|
||||||
|
type: boolean
|
||||||
|
description: Enable/disable automation rule
|
||||||
|
actions:
|
||||||
|
type: array
|
||||||
|
description: Array of actions which we perform when condition matches
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
example:
|
||||||
|
action_name: add_label
|
||||||
|
action_params:
|
||||||
|
- support
|
||||||
|
- sales
|
||||||
|
conditions:
|
||||||
|
type: array
|
||||||
|
description: Array of conditions on which conversation/message filter would work
|
||||||
|
items:
|
||||||
|
type: object
|
||||||
|
example:
|
||||||
|
attribute_key: content
|
||||||
|
filter_operator: contains
|
||||||
|
values:
|
||||||
|
- help
|
||||||
|
query_operator: nil
|
||||||
|
account_id:
|
||||||
|
type: integer
|
||||||
|
description: Account Id
|
|
@ -15,6 +15,10 @@ properties:
|
||||||
additional_attributes:
|
additional_attributes:
|
||||||
type: object
|
type: object
|
||||||
description: The object containing additional attributes related to the contact
|
description: The object containing additional attributes related to the contact
|
||||||
|
custom_attributes:
|
||||||
|
type: object
|
||||||
|
description: The object to save custom attributes for contact, accepts custom attributes key and value
|
||||||
|
example: { attribute_key: attribute_value, signed_up_at: dd/mm/yyyy }
|
||||||
contact_inboxes:
|
contact_inboxes:
|
||||||
type: array
|
type: array
|
||||||
items:
|
items:
|
||||||
|
|
|
@ -30,3 +30,7 @@ properties:
|
||||||
additional_attributes:
|
additional_attributes:
|
||||||
type: object
|
type: object
|
||||||
description: The object containing additional attributes related to the conversation
|
description: The object containing additional attributes related to the conversation
|
||||||
|
custom_attributes:
|
||||||
|
type: object
|
||||||
|
description: The object to save custom attributes for conversation, accepts custom attributes key and value
|
||||||
|
example: { attribute_key: attribute_value, priority_conversation_number: 3 }
|
||||||
|
|
|
@ -68,6 +68,7 @@ x-tagGroups:
|
||||||
- Reports
|
- Reports
|
||||||
- Teams
|
- Teams
|
||||||
- Webhooks
|
- Webhooks
|
||||||
|
- Automation Rule
|
||||||
- name: Client
|
- name: Client
|
||||||
tags:
|
tags:
|
||||||
- Contacts API
|
- Contacts API
|
||||||
|
|
20
swagger/paths/application/automation_rule/create.yml
Normal file
20
swagger/paths/application/automation_rule/create.yml
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
tags:
|
||||||
|
- Automation Rule
|
||||||
|
operationId: add-new-automation-rule-to-account
|
||||||
|
summary: Add a new automation rule
|
||||||
|
description: Add a new automation rule to account
|
||||||
|
security:
|
||||||
|
- userApiKey: []
|
||||||
|
parameters:
|
||||||
|
- name: data
|
||||||
|
in: body
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/automation_rule_create_update_payload'
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
description: Success
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/automation_rule'
|
||||||
|
'403':
|
||||||
|
description: Access denied
|
20
swagger/paths/application/automation_rule/delete.yml
Normal file
20
swagger/paths/application/automation_rule/delete.yml
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
tags:
|
||||||
|
- Automation Rule
|
||||||
|
operationId: delete-automation-rule-from-account
|
||||||
|
summary: Remove a automation rule from account
|
||||||
|
description: Remove a automation rule from account
|
||||||
|
security:
|
||||||
|
- userApiKey: []
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: id
|
||||||
|
type: integer
|
||||||
|
required: true
|
||||||
|
description: The ID of the automation rule to be deleted
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
description: Success
|
||||||
|
'403':
|
||||||
|
description: Access denied
|
||||||
|
'404':
|
||||||
|
description: automation rule not found
|
20
swagger/paths/application/automation_rule/index.yml
Normal file
20
swagger/paths/application/automation_rule/index.yml
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
tags:
|
||||||
|
- Automation Rule
|
||||||
|
operationId: get-account-automation-rule
|
||||||
|
summary: List all automation rules in an account
|
||||||
|
parameters:
|
||||||
|
- $ref: '#/parameters/account_id'
|
||||||
|
- $ref: '#/parameters/page'
|
||||||
|
description: Get details of automation rules in an Account
|
||||||
|
security:
|
||||||
|
- userApiKey: []
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
description: Success
|
||||||
|
schema:
|
||||||
|
type: array
|
||||||
|
description: Array of all automation rules
|
||||||
|
items:
|
||||||
|
$ref: '#/definitions/automation_rule'
|
||||||
|
'403':
|
||||||
|
description: Access denied
|
20
swagger/paths/application/automation_rule/show.yml
Normal file
20
swagger/paths/application/automation_rule/show.yml
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
tags:
|
||||||
|
- Automation Rule
|
||||||
|
operationId: get-details-of-a-single-automation-rule
|
||||||
|
summary: Get a automation rule details
|
||||||
|
description: Get the details of a automation rule in the account
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: id
|
||||||
|
type: integer
|
||||||
|
required: true
|
||||||
|
description: The ID of the automation rule to be updated.
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
description: Success
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/automation_rule'
|
||||||
|
'401':
|
||||||
|
description: Unauthorized
|
||||||
|
'404':
|
||||||
|
description: The given rule ID does not exist in the account
|
27
swagger/paths/application/automation_rule/update.yml
Normal file
27
swagger/paths/application/automation_rule/update.yml
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
tags:
|
||||||
|
- Automation Rule
|
||||||
|
operationId: update-automation-rule-in-account
|
||||||
|
summary: Update automation rule in Account
|
||||||
|
description: Update a automation rule in account
|
||||||
|
security:
|
||||||
|
- userApiKey: []
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: id
|
||||||
|
type: integer
|
||||||
|
required: true
|
||||||
|
description: The ID of the automation rule to be updated.
|
||||||
|
- name: data
|
||||||
|
in: body
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/automation_rule_create_update_payload'
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
description: Success
|
||||||
|
schema:
|
||||||
|
$ref: '#/definitions/automation_rule'
|
||||||
|
'403':
|
||||||
|
description: Access denied
|
||||||
|
'404':
|
||||||
|
description: Rule not found
|
|
@ -40,7 +40,7 @@ get:
|
||||||
type: integer
|
type: integer
|
||||||
default: 1
|
default: 1
|
||||||
description: paginate through conversations
|
description: paginate through conversations
|
||||||
|
|
||||||
responses:
|
responses:
|
||||||
200:
|
200:
|
||||||
description: Success
|
description: Success
|
||||||
|
@ -79,6 +79,10 @@ post:
|
||||||
additional_attributes:
|
additional_attributes:
|
||||||
type: object
|
type: object
|
||||||
description: Lets you specify attributes like browser information
|
description: Lets you specify attributes like browser information
|
||||||
|
custom_attributes:
|
||||||
|
type: object
|
||||||
|
description: The object to save custom attributes for conversation, accepts custom attributes key and value
|
||||||
|
example: { attribute_key: attribute_value, priority_conversation_number: 3 }
|
||||||
status:
|
status:
|
||||||
type: string
|
type: string
|
||||||
enum: ['open', 'resolved', 'pending']
|
enum: ['open', 'resolved', 'pending']
|
||||||
|
|
|
@ -6,6 +6,7 @@ description: Remove a custom attribute from account
|
||||||
security:
|
security:
|
||||||
- userApiKey: []
|
- userApiKey: []
|
||||||
parameters:
|
parameters:
|
||||||
|
- $ref: '#/parameters/account_id'
|
||||||
- in: path
|
- in: path
|
||||||
name: id
|
name: id
|
||||||
type: integer
|
type: integer
|
||||||
|
|
|
@ -3,6 +3,13 @@ tags:
|
||||||
operationId: get-details-of-a-single-custom-attribute
|
operationId: get-details-of-a-single-custom-attribute
|
||||||
summary: Get a custom attribute details
|
summary: Get a custom attribute details
|
||||||
description: Get the details of a custom attribute in the account
|
description: Get the details of a custom attribute in the account
|
||||||
|
parameters:
|
||||||
|
- $ref: '#/parameters/account_id'
|
||||||
|
- in: path
|
||||||
|
name: id
|
||||||
|
type: integer
|
||||||
|
required: true
|
||||||
|
description: The ID of the custom attribute to be updated.
|
||||||
responses:
|
responses:
|
||||||
200:
|
200:
|
||||||
description: Success
|
description: Success
|
||||||
|
|
|
@ -6,6 +6,7 @@ description: Get Details of Agents in an Team
|
||||||
security:
|
security:
|
||||||
- userApiKey: []
|
- userApiKey: []
|
||||||
parameters:
|
parameters:
|
||||||
|
- $ref: '#/parameters/account_id'
|
||||||
- $ref: '#/parameters/team_id'
|
- $ref: '#/parameters/team_id'
|
||||||
responses:
|
responses:
|
||||||
200:
|
200:
|
||||||
|
|
|
@ -181,6 +181,11 @@
|
||||||
/api/v1/accounts/{account_id}/custom_attribute_definitions/{id}:
|
/api/v1/accounts/{account_id}/custom_attribute_definitions/{id}:
|
||||||
parameters:
|
parameters:
|
||||||
- $ref: '#/parameters/account_id'
|
- $ref: '#/parameters/account_id'
|
||||||
|
- name: id
|
||||||
|
in: path
|
||||||
|
type: number
|
||||||
|
description: ID of the custom attribute
|
||||||
|
required: true
|
||||||
get:
|
get:
|
||||||
$ref: './application/custom_attributes/show.yml'
|
$ref: './application/custom_attributes/show.yml'
|
||||||
patch:
|
patch:
|
||||||
|
@ -208,6 +213,30 @@
|
||||||
$ref: ./application/contactable_inboxes/get.yml
|
$ref: ./application/contactable_inboxes/get.yml
|
||||||
|
|
||||||
|
|
||||||
|
# Automation Rule
|
||||||
|
/api/v1/accounts/{account_id}/automation_rule_definitions:
|
||||||
|
parameters:
|
||||||
|
- $ref: '#/parameters/account_id'
|
||||||
|
get:
|
||||||
|
$ref: ./application/automation_rule/index.yml
|
||||||
|
post:
|
||||||
|
$ref: ./application/automation_rule/create.yml
|
||||||
|
/api/v1/accounts/{account_id}/automation_rule_definitions/{id}:
|
||||||
|
parameters:
|
||||||
|
- $ref: '#/parameters/account_id'
|
||||||
|
- name: id
|
||||||
|
in: path
|
||||||
|
type: number
|
||||||
|
description: ID of the Automation Rule
|
||||||
|
required: true
|
||||||
|
get:
|
||||||
|
$ref: ./application/automation_rule/show.yml
|
||||||
|
patch:
|
||||||
|
$ref: ./application/automation_rule/update.yml
|
||||||
|
delete:
|
||||||
|
$ref: ./application/automation_rule/delete.yml
|
||||||
|
|
||||||
|
|
||||||
# Conversations
|
# Conversations
|
||||||
/api/v1/accounts/{account_id}/conversations/meta:
|
/api/v1/accounts/{account_id}/conversations/meta:
|
||||||
$ref: ./application/conversation/meta.yml
|
$ref: ./application/conversation/meta.yml
|
||||||
|
@ -273,8 +302,6 @@
|
||||||
- $ref: '#/parameters/inbox_id'
|
- $ref: '#/parameters/inbox_id'
|
||||||
get:
|
get:
|
||||||
$ref: ./application/inboxes/inbox_members/show.yml
|
$ref: ./application/inboxes/inbox_members/show.yml
|
||||||
patch:
|
|
||||||
$ref: ./application/inboxes/inbox_members/update.yml
|
|
||||||
delete:
|
delete:
|
||||||
$ref: ./application/inboxes/inbox_members/delete.yml
|
$ref: ./application/inboxes/inbox_members/delete.yml
|
||||||
|
|
||||||
|
@ -283,6 +310,8 @@
|
||||||
- $ref: '#/parameters/account_id'
|
- $ref: '#/parameters/account_id'
|
||||||
post:
|
post:
|
||||||
$ref: ./application/inboxes/inbox_members/create.yml
|
$ref: ./application/inboxes/inbox_members/create.yml
|
||||||
|
patch:
|
||||||
|
$ref: ./application/inboxes/inbox_members/update.yml
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -345,7 +374,7 @@
|
||||||
$ref: ./application/teams/update.yml
|
$ref: ./application/teams/update.yml
|
||||||
delete:
|
delete:
|
||||||
$ref: ./application/teams/delete.yml
|
$ref: ./application/teams/delete.yml
|
||||||
/accounts/{account-id}/teams/{team_id}/team_members:
|
/accounts/{account_id}/teams/{team_id}/team_members:
|
||||||
parameters:
|
parameters:
|
||||||
- $ref: '#/parameters/account_id'
|
- $ref: '#/parameters/account_id'
|
||||||
- $ref: '#/parameters/team_id'
|
- $ref: '#/parameters/team_id'
|
||||||
|
|
|
@ -1584,6 +1584,13 @@
|
||||||
"parameters": [
|
"parameters": [
|
||||||
{
|
{
|
||||||
"$ref": "#/parameters/account_id"
|
"$ref": "#/parameters/account_id"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "id",
|
||||||
|
"in": "path",
|
||||||
|
"type": "number",
|
||||||
|
"description": "ID of the custom attribute",
|
||||||
|
"required": true
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"get": {
|
"get": {
|
||||||
|
@ -1593,6 +1600,18 @@
|
||||||
"operationId": "get-details-of-a-single-custom-attribute",
|
"operationId": "get-details-of-a-single-custom-attribute",
|
||||||
"summary": "Get a custom attribute details",
|
"summary": "Get a custom attribute details",
|
||||||
"description": "Get the details of a custom attribute in the account",
|
"description": "Get the details of a custom attribute in the account",
|
||||||
|
"parameters": [
|
||||||
|
{
|
||||||
|
"$ref": "#/parameters/account_id"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"in": "path",
|
||||||
|
"name": "id",
|
||||||
|
"type": "integer",
|
||||||
|
"required": true,
|
||||||
|
"description": "The ID of the custom attribute to be updated."
|
||||||
|
}
|
||||||
|
],
|
||||||
"responses": {
|
"responses": {
|
||||||
"200": {
|
"200": {
|
||||||
"description": "Success",
|
"description": "Success",
|
||||||
|
@ -1669,6 +1688,9 @@
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"parameters": [
|
"parameters": [
|
||||||
|
{
|
||||||
|
"$ref": "#/parameters/account_id"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"in": "path",
|
"in": "path",
|
||||||
"name": "id",
|
"name": "id",
|
||||||
|
@ -2135,6 +2157,213 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"/api/v1/accounts/{account_id}/automation_rule_definitions": {
|
||||||
|
"parameters": [
|
||||||
|
{
|
||||||
|
"$ref": "#/parameters/account_id"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"get": {
|
||||||
|
"tags": [
|
||||||
|
"Automation Rule"
|
||||||
|
],
|
||||||
|
"operationId": "get-account-automation-rule",
|
||||||
|
"summary": "List all automation rules in an account",
|
||||||
|
"parameters": [
|
||||||
|
{
|
||||||
|
"$ref": "#/parameters/account_id"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"$ref": "#/parameters/page"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"description": "Get details of automation rules in an Account",
|
||||||
|
"security": [
|
||||||
|
{
|
||||||
|
"userApiKey": [
|
||||||
|
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"responses": {
|
||||||
|
"200": {
|
||||||
|
"description": "Success",
|
||||||
|
"schema": {
|
||||||
|
"type": "array",
|
||||||
|
"description": "Array of all automation rules",
|
||||||
|
"items": {
|
||||||
|
"$ref": "#/definitions/automation_rule"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"403": {
|
||||||
|
"description": "Access denied"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"post": {
|
||||||
|
"tags": [
|
||||||
|
"Automation Rule"
|
||||||
|
],
|
||||||
|
"operationId": "add-new-automation-rule-to-account",
|
||||||
|
"summary": "Add a new automation rule",
|
||||||
|
"description": "Add a new automation rule to account",
|
||||||
|
"security": [
|
||||||
|
{
|
||||||
|
"userApiKey": [
|
||||||
|
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"parameters": [
|
||||||
|
{
|
||||||
|
"name": "data",
|
||||||
|
"in": "body",
|
||||||
|
"required": true,
|
||||||
|
"schema": {
|
||||||
|
"$ref": "#/definitions/automation_rule_create_update_payload"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"responses": {
|
||||||
|
"200": {
|
||||||
|
"description": "Success",
|
||||||
|
"schema": {
|
||||||
|
"$ref": "#/definitions/automation_rule"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"403": {
|
||||||
|
"description": "Access denied"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"/api/v1/accounts/{account_id}/automation_rule_definitions/{id}": {
|
||||||
|
"parameters": [
|
||||||
|
{
|
||||||
|
"$ref": "#/parameters/account_id"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "id",
|
||||||
|
"in": "path",
|
||||||
|
"type": "number",
|
||||||
|
"description": "ID of the Automation Rule",
|
||||||
|
"required": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"get": {
|
||||||
|
"tags": [
|
||||||
|
"Automation Rule"
|
||||||
|
],
|
||||||
|
"operationId": "get-details-of-a-single-automation-rule",
|
||||||
|
"summary": "Get a automation rule details",
|
||||||
|
"description": "Get the details of a automation rule in the account",
|
||||||
|
"parameters": [
|
||||||
|
{
|
||||||
|
"in": "path",
|
||||||
|
"name": "id",
|
||||||
|
"type": "integer",
|
||||||
|
"required": true,
|
||||||
|
"description": "The ID of the automation rule to be updated."
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"responses": {
|
||||||
|
"200": {
|
||||||
|
"description": "Success",
|
||||||
|
"schema": {
|
||||||
|
"$ref": "#/definitions/automation_rule"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"401": {
|
||||||
|
"description": "Unauthorized"
|
||||||
|
},
|
||||||
|
"404": {
|
||||||
|
"description": "The given rule ID does not exist in the account"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"patch": {
|
||||||
|
"tags": [
|
||||||
|
"Automation Rule"
|
||||||
|
],
|
||||||
|
"operationId": "update-automation-rule-in-account",
|
||||||
|
"summary": "Update automation rule in Account",
|
||||||
|
"description": "Update a automation rule in account",
|
||||||
|
"security": [
|
||||||
|
{
|
||||||
|
"userApiKey": [
|
||||||
|
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"parameters": [
|
||||||
|
{
|
||||||
|
"in": "path",
|
||||||
|
"name": "id",
|
||||||
|
"type": "integer",
|
||||||
|
"required": true,
|
||||||
|
"description": "The ID of the automation rule to be updated."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "data",
|
||||||
|
"in": "body",
|
||||||
|
"required": true,
|
||||||
|
"schema": {
|
||||||
|
"$ref": "#/definitions/automation_rule_create_update_payload"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"responses": {
|
||||||
|
"200": {
|
||||||
|
"description": "Success",
|
||||||
|
"schema": {
|
||||||
|
"$ref": "#/definitions/automation_rule"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"403": {
|
||||||
|
"description": "Access denied"
|
||||||
|
},
|
||||||
|
"404": {
|
||||||
|
"description": "Rule not found"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"delete": {
|
||||||
|
"tags": [
|
||||||
|
"Automation Rule"
|
||||||
|
],
|
||||||
|
"operationId": "delete-automation-rule-from-account",
|
||||||
|
"summary": "Remove a automation rule from account",
|
||||||
|
"description": "Remove a automation rule from account",
|
||||||
|
"security": [
|
||||||
|
{
|
||||||
|
"userApiKey": [
|
||||||
|
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"parameters": [
|
||||||
|
{
|
||||||
|
"in": "path",
|
||||||
|
"name": "id",
|
||||||
|
"type": "integer",
|
||||||
|
"required": true,
|
||||||
|
"description": "The ID of the automation rule to be deleted"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"responses": {
|
||||||
|
"200": {
|
||||||
|
"description": "Success"
|
||||||
|
},
|
||||||
|
"403": {
|
||||||
|
"description": "Access denied"
|
||||||
|
},
|
||||||
|
"404": {
|
||||||
|
"description": "automation rule not found"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"/api/v1/accounts/{account_id}/conversations/meta": {
|
"/api/v1/accounts/{account_id}/conversations/meta": {
|
||||||
"parameters": [
|
"parameters": [
|
||||||
{
|
{
|
||||||
|
@ -2352,6 +2581,14 @@
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"description": "Lets you specify attributes like browser information"
|
"description": "Lets you specify attributes like browser information"
|
||||||
},
|
},
|
||||||
|
"custom_attributes": {
|
||||||
|
"type": "object",
|
||||||
|
"description": "The object to save custom attributes for conversation, accepts custom attributes key and value",
|
||||||
|
"example": {
|
||||||
|
"attribute_key": "attribute_value",
|
||||||
|
"priority_conversation_number": 3
|
||||||
|
}
|
||||||
|
},
|
||||||
"status": {
|
"status": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"enum": [
|
"enum": [
|
||||||
|
@ -3101,69 +3338,6 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"patch": {
|
|
||||||
"tags": [
|
|
||||||
"Inboxes"
|
|
||||||
],
|
|
||||||
"operationId": "update-agents-in-inbox",
|
|
||||||
"summary": "Update Agents in Inbox",
|
|
||||||
"description": "All agents except the one passed in params will be removed",
|
|
||||||
"security": [
|
|
||||||
{
|
|
||||||
"userApiKey": [
|
|
||||||
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"parameters": [
|
|
||||||
{
|
|
||||||
"name": "data",
|
|
||||||
"in": "body",
|
|
||||||
"required": true,
|
|
||||||
"schema": {
|
|
||||||
"type": "object",
|
|
||||||
"required": [
|
|
||||||
"inbox_id",
|
|
||||||
"user_ids"
|
|
||||||
],
|
|
||||||
"properties": {
|
|
||||||
"inbox_id": {
|
|
||||||
"type": "string",
|
|
||||||
"description": "The ID of the inbox"
|
|
||||||
},
|
|
||||||
"user_ids": {
|
|
||||||
"type": "array",
|
|
||||||
"items": {
|
|
||||||
"type": "integer"
|
|
||||||
},
|
|
||||||
"description": "IDs of users to be added to the inbox"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"responses": {
|
|
||||||
"200": {
|
|
||||||
"description": "Success",
|
|
||||||
"schema": {
|
|
||||||
"type": "array",
|
|
||||||
"description": "Array of all active agents",
|
|
||||||
"items": {
|
|
||||||
"$ref": "#/definitions/agent"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"404": {
|
|
||||||
"description": "Inbox not found"
|
|
||||||
},
|
|
||||||
"403": {
|
|
||||||
"description": "Access denied"
|
|
||||||
},
|
|
||||||
"422": {
|
|
||||||
"description": "User must exist"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"delete": {
|
"delete": {
|
||||||
"tags": [
|
"tags": [
|
||||||
"Inboxes"
|
"Inboxes"
|
||||||
|
@ -3289,6 +3463,69 @@
|
||||||
"description": "User must exist"
|
"description": "User must exist"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"patch": {
|
||||||
|
"tags": [
|
||||||
|
"Inboxes"
|
||||||
|
],
|
||||||
|
"operationId": "update-agents-in-inbox",
|
||||||
|
"summary": "Update Agents in Inbox",
|
||||||
|
"description": "All agents except the one passed in params will be removed",
|
||||||
|
"security": [
|
||||||
|
{
|
||||||
|
"userApiKey": [
|
||||||
|
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"parameters": [
|
||||||
|
{
|
||||||
|
"name": "data",
|
||||||
|
"in": "body",
|
||||||
|
"required": true,
|
||||||
|
"schema": {
|
||||||
|
"type": "object",
|
||||||
|
"required": [
|
||||||
|
"inbox_id",
|
||||||
|
"user_ids"
|
||||||
|
],
|
||||||
|
"properties": {
|
||||||
|
"inbox_id": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "The ID of the inbox"
|
||||||
|
},
|
||||||
|
"user_ids": {
|
||||||
|
"type": "array",
|
||||||
|
"items": {
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"description": "IDs of users to be added to the inbox"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"responses": {
|
||||||
|
"200": {
|
||||||
|
"description": "Success",
|
||||||
|
"schema": {
|
||||||
|
"type": "array",
|
||||||
|
"description": "Array of all active agents",
|
||||||
|
"items": {
|
||||||
|
"$ref": "#/definitions/agent"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"404": {
|
||||||
|
"description": "Inbox not found"
|
||||||
|
},
|
||||||
|
"403": {
|
||||||
|
"description": "Access denied"
|
||||||
|
},
|
||||||
|
"422": {
|
||||||
|
"description": "User must exist"
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages": {
|
"/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages": {
|
||||||
|
@ -3711,7 +3948,7 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"/accounts/{account-id}/teams/{team_id}/team_members": {
|
"/accounts/{account_id}/teams/{team_id}/team_members": {
|
||||||
"parameters": [
|
"parameters": [
|
||||||
{
|
{
|
||||||
"$ref": "#/parameters/account_id"
|
"$ref": "#/parameters/account_id"
|
||||||
|
@ -3735,6 +3972,9 @@
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"parameters": [
|
"parameters": [
|
||||||
|
{
|
||||||
|
"$ref": "#/parameters/account_id"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"$ref": "#/parameters/team_id"
|
"$ref": "#/parameters/team_id"
|
||||||
}
|
}
|
||||||
|
@ -4520,6 +4760,68 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"automation_rule": {
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"event_name": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "Automation Rule event, on which we call the actions(conversation_created, conversation_updated, message_created)",
|
||||||
|
"enum": [
|
||||||
|
"conversation_created",
|
||||||
|
"conversation_updated",
|
||||||
|
"message_created"
|
||||||
|
],
|
||||||
|
"example": "message_created"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "The name of the rule",
|
||||||
|
"example": "Add label on message create event"
|
||||||
|
},
|
||||||
|
"description": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "Description to give more context about the rule",
|
||||||
|
"example": "Add label support and sales on message create event if incoming message content contains text help"
|
||||||
|
},
|
||||||
|
"active": {
|
||||||
|
"type": "boolean",
|
||||||
|
"description": "Enable/disable automation rule"
|
||||||
|
},
|
||||||
|
"actions": {
|
||||||
|
"type": "array",
|
||||||
|
"description": "Array of actions which we perform when condition matches",
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"example": {
|
||||||
|
"action_name": "add_label",
|
||||||
|
"action_params": [
|
||||||
|
"support",
|
||||||
|
"sales"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"conditions": {
|
||||||
|
"type": "array",
|
||||||
|
"description": "Array of conditions on which conversation/message filter would work",
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"example": {
|
||||||
|
"attribute_key": "content",
|
||||||
|
"filter_operator": "contains",
|
||||||
|
"values": [
|
||||||
|
"help"
|
||||||
|
],
|
||||||
|
"query_operator": "nil"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"account_id": {
|
||||||
|
"type": "integer",
|
||||||
|
"description": "Account Id"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"contact": {
|
"contact": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
|
@ -4543,6 +4845,14 @@
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"description": "The object containing additional attributes related to the contact"
|
"description": "The object containing additional attributes related to the contact"
|
||||||
},
|
},
|
||||||
|
"custom_attributes": {
|
||||||
|
"type": "object",
|
||||||
|
"description": "The object to save custom attributes for contact, accepts custom attributes key and value",
|
||||||
|
"example": {
|
||||||
|
"attribute_key": "attribute_value",
|
||||||
|
"signed_up_at": "dd/mm/yyyy"
|
||||||
|
}
|
||||||
|
},
|
||||||
"contact_inboxes": {
|
"contact_inboxes": {
|
||||||
"type": "array",
|
"type": "array",
|
||||||
"items": {
|
"items": {
|
||||||
|
@ -4598,6 +4908,14 @@
|
||||||
"additional_attributes": {
|
"additional_attributes": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"description": "The object containing additional attributes related to the conversation"
|
"description": "The object containing additional attributes related to the conversation"
|
||||||
|
},
|
||||||
|
"custom_attributes": {
|
||||||
|
"type": "object",
|
||||||
|
"description": "The object to save custom attributes for conversation, accepts custom attributes key and value",
|
||||||
|
"example": {
|
||||||
|
"attribute_key": "attribute_value",
|
||||||
|
"priority_conversation_number": 3
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -5428,6 +5746,63 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"automation_rule_create_update_payload": {
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"name": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "Rule name",
|
||||||
|
"example": "Add label on message create event"
|
||||||
|
},
|
||||||
|
"description": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "The description about the automation and actions",
|
||||||
|
"example": "Add label support and sales on message create event if incoming message content contains text help"
|
||||||
|
},
|
||||||
|
"event_name": {
|
||||||
|
"type": "string",
|
||||||
|
"enum": [
|
||||||
|
"conversation_created",
|
||||||
|
"conversation_updated",
|
||||||
|
"message_created"
|
||||||
|
],
|
||||||
|
"example": "message_created",
|
||||||
|
"description": "The event when you want to execute the automation actions"
|
||||||
|
},
|
||||||
|
"active": {
|
||||||
|
"type": "boolean",
|
||||||
|
"description": "Enable/disable automation rule"
|
||||||
|
},
|
||||||
|
"actions": {
|
||||||
|
"type": "array",
|
||||||
|
"description": "Array of actions which you want to perform when condition matches, e.g add label support if message contains content help.",
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"example": {
|
||||||
|
"action_name": "add_label",
|
||||||
|
"action_params": [
|
||||||
|
"support"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"conditions": {
|
||||||
|
"type": "array",
|
||||||
|
"description": "Array of conditions on which conversation filter would work, e.g message content contains text help.",
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"example": {
|
||||||
|
"attribute_key": "content",
|
||||||
|
"filter_operator": "contains",
|
||||||
|
"query_operator": "nil",
|
||||||
|
"values": [
|
||||||
|
"help"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"public_contact_create_update_payload": {
|
"public_contact_create_update_payload": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
|
@ -6016,7 +6391,8 @@
|
||||||
"Profile",
|
"Profile",
|
||||||
"Reports",
|
"Reports",
|
||||||
"Teams",
|
"Teams",
|
||||||
"Webhooks"
|
"Webhooks",
|
||||||
|
"Automation Rule"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue