feat: Sort contacts via name, email, phone_number, last_activity_at (#1870)

This commit is contained in:
Pranav Raj S
2021-05-13 13:32:19 +05:30
committed by GitHub
parent 368bab2553
commit 0e6cd699e8
24 changed files with 279 additions and 76 deletions

View File

@@ -0,0 +1,15 @@
in: query
name: sort
schema:
type: string
enum:
- name
- email
- phone_number
- last_activity_at
- -name
- -email
- -phone_number
- -last_activity_at
required: false
description: The attribute by which list should be sorted

View File

@@ -4,7 +4,6 @@ account_id:
team_id:
$ref: ./team_id.yml
source_id:
$ref: ./source_id.yml
@@ -14,3 +13,8 @@ conversation_id:
message_id:
$ref: ./message_id.yml
contact_sort_param:
$ref: ./contact_sort.yml
page:
$ref: ./page.yml

View File

@@ -0,0 +1,7 @@
in: query
name: page
schema:
type: integer
default: 1
required: false
description: The page parameter

View File

@@ -2,12 +2,11 @@ get:
tags:
- Contact
operationId: contactList
description: Listing all the contacts with pagination
description: Listing all the contacts with pagination (Page size = 15)
summary: List Contacts
parameters:
- name: query_hash
in: query
type: string
- $ref: '#/parameters/contact_sort_param'
- $ref: '#/parameters/page'
responses:
200:
description: Success

View File

@@ -2,12 +2,14 @@ get:
tags:
- Contact
operationId: contactSearch
description: Search the contacts using a search key, currently supports email search
description: Search the contacts using a search key, currently supports email search (Page size = 15)
summary: Search Contacts
parameters:
- name: q
in: query
type: string
- $ref: '#/parameters/contact_sort_param'
- $ref: '#/parameters/page'
responses:
200:
description: Success

View File

@@ -887,13 +887,14 @@
"Contact"
],
"operationId": "contactList",
"description": "Listing all the contacts with pagination",
"description": "Listing all the contacts with pagination (Page size = 15)",
"summary": "List Contacts",
"parameters": [
{
"name": "query_hash",
"in": "query",
"type": "string"
"$ref": "#/parameters/contact_sort_param"
},
{
"$ref": "#/parameters/page"
}
],
"responses": {
@@ -1052,13 +1053,19 @@
"Contact"
],
"operationId": "contactSearch",
"description": "Search the contacts using a search key, currently supports email search",
"description": "Search the contacts using a search key, currently supports email search (Page size = 15)",
"summary": "Search Contacts",
"parameters": [
{
"name": "q",
"in": "query",
"type": "string"
},
{
"$ref": "#/parameters/contact_sort_param"
},
{
"$ref": "#/parameters/page"
}
],
"responses": {
@@ -2083,6 +2090,35 @@
},
"required": true,
"description": "The numeric ID of the message"
},
"contact_sort_param": {
"in": "query",
"name": "sort",
"schema": {
"type": "string",
"enum": [
"name",
"email",
"phone_number",
"last_activity_at",
"-name",
"-email",
"-phone_number",
"-last_activity_at"
]
},
"required": false,
"description": "The attribute by which list should be sorted"
},
"page": {
"in": "query",
"name": "page",
"schema": {
"type": "integer",
"default": 1
},
"required": false,
"description": "The page parameter"
}
}
}