WebApi
Tổng endpoint: 243
Activity
Nhóm endpoints theo Swagger tag
POST
/api/Auth/get-token-for-develop
Overview HTTP request›
| URL | https://api.crmtop.vn/api/Auth/get-token-for-develop |
|---|---|
| Method | POST |
| Content-Type | application/json, text/json, application/*+json |
Parameters path/query/header›
(No parameters)
Không có parameters.
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | GetTokenForPublicApiRequest |
{
"clientId": "<client_id>",
"clientSecret": "<client_secret>"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/Auth/get-token-for-develop'
--header 'accept: application/json'
--header 'Content-Type: application/json'
--data-raw '{"clientId":"<client_id>","clientSecret":"<client_secret>"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: TokenForPublicApiDtoExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"accessToken": "<access_token>"
},
"errors": null,
"meta": null
}POST
/api/activity
Overview HTTP request›
| URL | https://api.crmtop.vn/api/activity |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | AddOrEditActivityRequest |
{
"description": "string",
"dueDate": "2026-02-27T00:00:00+07:00",
"endTime": "2026-02-27T00:00:00+07:00",
"extraData": "string",
"id": "00000000-0000-0000-0000-000000000000",
"isAllDay": true,
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"primaryId": "00000000-0000-0000-0000-000000000000",
"primaryName": "string",
"primaryType": 1,
"priority": 1,
"relatedId": "00000000-0000-0000-0000-000000000000",
"relatedName": "string",
"relatedType": null,
"startTime": "2026-02-27T00:00:00+07:00",
"status": 1,
"subject": "string",
"type": 1
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/activity'
--header 'accept: application/json'
--header 'Content-Type: application/json'
--header 'Authorization: Bearer <access_token>'
--data-raw '{"description": "string", "dueDate": "2026-02-27T00:00:00+07:00", "endTime": "2026-02-27T00:00:00+07:00", "extraData": "string", "id": "00000000-0000-0000-0000-000000000000", "isAllDay": true, "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "primaryId": "00000000-0000-0000-0000-000000000000", "primaryName": "string", "primaryType": 1, "priority": 1, "relatedId": "00000000-0000-0000-0000-000000000000", "relatedName": "string", "relatedType": null, "startTime": "2026-02-27T00:00:00+07:00", "status": 1, "subject": "string", "type": 1}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}PUT
/api/activity
Overview HTTP request›
| URL | https://api.crmtop.vn/api/activity |
|---|---|
| Method | PUT |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | AddOrEditActivityRequest |
{
"description": "string",
"dueDate": "2026-02-27T00:00:00+07:00",
"endTime": "2026-02-27T00:00:00+07:00",
"extraData": "string",
"id": "00000000-0000-0000-0000-000000000000",
"isAllDay": true,
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"primaryId": "00000000-0000-0000-0000-000000000000",
"primaryName": "string",
"primaryType": 1,
"priority": 1,
"relatedId": "00000000-0000-0000-0000-000000000000",
"relatedName": "string",
"relatedType": null,
"startTime": "2026-02-27T00:00:00+07:00",
"status": 1,
"subject": "string",
"type": 1
}Example cURL copy/paste›
curl --location --request PUT 'https://api.crmtop.vn/api/activity'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"description": "string", "dueDate": "2026-02-27T00:00:00+07:00", "endTime": "2026-02-27T00:00:00+07:00", "extraData": "string", "id": "00000000-0000-0000-0000-000000000000", "isAllDay": true, "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "primaryId": "00000000-0000-0000-0000-000000000000", "primaryName": "string", "primaryType": 1, "priority": 1, "relatedId": "00000000-0000-0000-0000-000000000000", "relatedName": "string", "relatedType": null, "startTime": "2026-02-27T00:00:00+07:00", "status": 1, "subject": "string", "type": 1}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}GET
/api/activity/edit/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/activity/edit/{id} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/activity/edit/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: AddOrEditActivityRequestExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"description": "string",
"dueDate": "2026-02-27T00:00:00+07:00",
"endTime": "2026-02-27T00:00:00+07:00",
"extraData": "string",
"id": "00000000-0000-0000-0000-000000000000",
"isAllDay": true,
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"primaryId": "00000000-0000-0000-0000-000000000000",
"primaryName": "string",
"primaryType": 1,
"priority": 1,
"relatedId": "00000000-0000-0000-0000-000000000000",
"relatedName": "string",
"relatedType": null,
"startTime": "2026-02-27T00:00:00+07:00",
"status": 1,
"subject": "string",
"type": 1
},
"errors": null,
"meta": null
}POST
/api/activity/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/activity/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SearchActivityRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/activity/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SearchActivityDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"createdBy": "00000000-0000-0000-0000-000000000000",
"createdByName": "string",
"createdOn": "2026-02-27T00:00:00+07:00",
"description": "string",
"dueDate": "2026-02-27T00:00:00+07:00",
"endTime": "2026-02-27T00:00:00+07:00",
"id": "00000000-0000-0000-0000-000000000000",
"isAllDay": true,
"lastModifiedBy": "00000000-0000-0000-0000-000000000000",
"lastModifiedByName": "string",
"lastModifiedOn": "2026-02-27T00:00:00+07:00",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"primaryId": "00000000-0000-0000-0000-000000000000",
"primaryName": "string",
"primaryType": null,
"priority": null,
"startTime": "2026-02-27T00:00:00+07:00",
"status": null,
"subject": "string",
"type": null
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}GET
/api/activity/status/{id}/{status}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/activity/status/{id}/{status} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | | |
status | path | true | ActivityStatus | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/activity/status/{id}/{status}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}DELETE
/api/activity/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/activity/{id} |
|---|---|
| Method | DELETE |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request DELETE 'https://api.crmtop.vn/api/activity/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}Campaign
Nhóm endpoints theo Swagger tag
POST
/api/campaign
Overview HTTP request›
| URL | https://api.crmtop.vn/api/campaign |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SaveCampaignRequest |
{
"actualCost": 0.0,
"actualResponseRate": 0.0,
"budgetedCost": 0.0,
"code": "string",
"endDate": "2026-02-27T00:00:00+07:00",
"expectedResponseRate": 0.0,
"expectedRevenue": 0.0,
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"note": "string",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"startDate": "2026-02-27T00:00:00+07:00",
"status": 1,
"type": 1
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/campaign'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"actualCost": 0.0, "actualResponseRate": 0.0, "budgetedCost": 0.0, "code": "string", "endDate": "2026-02-27T00:00:00+07:00", "expectedResponseRate": 0.0, "expectedRevenue": 0.0, "id": "00000000-0000-0000-0000-000000000000", "name": "string", "note": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "startDate": "2026-02-27T00:00:00+07:00", "status": 1, "type": 1}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}PUT
/api/campaign
Overview HTTP request›
| URL | https://api.crmtop.vn/api/campaign |
|---|---|
| Method | PUT |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SaveCampaignRequest |
{
"actualCost": 0.0,
"actualResponseRate": 0.0,
"budgetedCost": 0.0,
"code": "string",
"endDate": "2026-02-27T00:00:00+07:00",
"expectedResponseRate": 0.0,
"expectedRevenue": 0.0,
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"note": "string",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"startDate": "2026-02-27T00:00:00+07:00",
"status": 1,
"type": 1
}Example cURL copy/paste›
curl --location --request PUT 'https://api.crmtop.vn/api/campaign'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"actualCost": 0.0, "actualResponseRate": 0.0, "budgetedCost": 0.0, "code": "string", "endDate": "2026-02-27T00:00:00+07:00", "expectedResponseRate": 0.0, "expectedRevenue": 0.0, "id": "00000000-0000-0000-0000-000000000000", "name": "string", "note": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "startDate": "2026-02-27T00:00:00+07:00", "status": 1, "type": 1}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}GET
/api/campaign/edit/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/campaign/edit/{id} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/campaign/edit/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SaveCampaignRequestExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"actualCost": 0.0,
"actualResponseRate": 0.0,
"budgetedCost": 0.0,
"code": "string",
"endDate": "2026-02-27T00:00:00+07:00",
"expectedResponseRate": 0.0,
"expectedRevenue": 0.0,
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"note": "string",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"startDate": "2026-02-27T00:00:00+07:00",
"status": 1,
"type": 1
},
"errors": null,
"meta": null
}POST
/api/campaign/member/add
Overview HTTP request›
| URL | https://api.crmtop.vn/api/campaign/member/add |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SaveCampMemberRequest |
{
"campaignId": "00000000-0000-0000-0000-000000000000",
"ids": [
"00000000-0000-0000-0000-000000000000"
],
"type": 1
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/campaign/member/add'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"campaignId": "00000000-0000-0000-0000-000000000000", "ids": ["00000000-0000-0000-0000-000000000000"], "type": 1}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}POST
/api/campaign/member/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/campaign/member/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SearchCampMemberRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/campaign/member/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SearchCampMemberDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"campaignId": "00000000-0000-0000-0000-000000000000",
"code": "string",
"email": "string",
"id": 0,
"masterId": "00000000-0000-0000-0000-000000000000",
"name": "string",
"phone": "string",
"type": null
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}DELETE
/api/campaign/member/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/campaign/member/{id} |
|---|---|
| Method | DELETE |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | integer(int32) | |
Example cURL copy/paste›
curl --location --request DELETE 'https://api.crmtop.vn/api/campaign/member/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}POST
/api/campaign/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/campaign/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SearchCampaignRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/campaign/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SearchCampaignDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"code": "string",
"endDate": "2026-02-27T00:00:00+07:00",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"startDate": "2026-02-27T00:00:00+07:00",
"status": null,
"totalMember": 0,
"type": null
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}DELETE
/api/campaign/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/campaign/{id} |
|---|---|
| Method | DELETE |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request DELETE 'https://api.crmtop.vn/api/campaign/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}Contact
Nhóm endpoints theo Swagger tag
POST
/api/contact
Overview HTTP request›
| URL | https://api.crmtop.vn/api/contact |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | AddOrEditContactRequest |
{
"address": "string",
"birthday": "2026-02-27T00:00:00+07:00",
"code": "string",
"customerId": "00000000-0000-0000-0000-000000000000",
"customerName": "string",
"department": "string",
"email": "string",
"fullName": "string",
"gender": 1,
"id": "00000000-0000-0000-0000-000000000000",
"isPrimary": true,
"nationalId": "string",
"note": "string",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"phone": "string",
"position": "string",
"status": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/contact'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"address": "string", "birthday": "2026-02-27T00:00:00+07:00", "code": "string", "customerId": "00000000-0000-0000-0000-000000000000", "customerName": "string", "department": "string", "email": "string", "fullName": "string", "gender": 1, "id": "00000000-0000-0000-0000-000000000000", "isPrimary": true, "nationalId": "string", "note": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "phone": "string", "position": "string", "status": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}PUT
/api/contact
Overview HTTP request›
| URL | https://api.crmtop.vn/api/contact |
|---|---|
| Method | PUT |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | AddOrEditContactRequest |
{
"address": "string",
"birthday": "2026-02-27T00:00:00+07:00",
"code": "string",
"customerId": "00000000-0000-0000-0000-000000000000",
"customerName": "string",
"department": "string",
"email": "string",
"fullName": "string",
"gender": 1,
"id": "00000000-0000-0000-0000-000000000000",
"isPrimary": true,
"nationalId": "string",
"note": "string",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"phone": "string",
"position": "string",
"status": "string"
}Example cURL copy/paste›
curl --location --request PUT 'https://api.crmtop.vn/api/contact'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"address": "string", "birthday": "2026-02-27T00:00:00+07:00", "code": "string", "customerId": "00000000-0000-0000-0000-000000000000", "customerName": "string", "department": "string", "email": "string", "fullName": "string", "gender": 1, "id": "00000000-0000-0000-0000-000000000000", "isPrimary": true, "nationalId": "string", "note": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "phone": "string", "position": "string", "status": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}GET
/api/contact/edit/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/contact/edit/{id} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/contact/edit/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: AddOrEditContactRequestExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"address": "string",
"birthday": "2026-02-27T00:00:00+07:00",
"code": "string",
"customerId": "00000000-0000-0000-0000-000000000000",
"customerName": "string",
"department": "string",
"email": "string",
"fullName": "string",
"gender": 1,
"id": "00000000-0000-0000-0000-000000000000",
"isPrimary": true,
"nationalId": "string",
"note": "string",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"phone": "string",
"position": "string",
"status": "string"
},
"errors": null,
"meta": null
}POST
/api/contact/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/contact/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SearchContactRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/contact/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SearchContactDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"address": "string",
"birthday": "2026-02-27T00:00:00+07:00",
"code": "string",
"customerId": "00000000-0000-0000-0000-000000000000",
"customerName": "string",
"department": "string",
"email": "string",
"firstName": "string",
"fullName": "string",
"gender": null,
"id": "00000000-0000-0000-0000-000000000000",
"isPrimary": true,
"lastName": "string",
"nationalId": "string",
"note": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"phone": "string",
"position": "string",
"status": "string"
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}DELETE
/api/contact/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/contact/{id} |
|---|---|
| Method | DELETE |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request DELETE 'https://api.crmtop.vn/api/contact/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}Customer
Nhóm endpoints theo Swagger tag
POST
/api/customer
Overview HTTP request›
| URL | https://api.crmtop.vn/api/customer |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | AddOrEditCustomerRequest |
{
"address": "string",
"businessType": "string",
"code": "string",
"email": "string",
"groupId": "00000000-0000-0000-0000-000000000000",
"groupName": "string",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"note": "string",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"phone": "string",
"taxCode": "string",
"type": 1,
"website": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/customer'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"address": "string", "businessType": "string", "code": "string", "email": "string", "groupId": "00000000-0000-0000-0000-000000000000", "groupName": "string", "id": "00000000-0000-0000-0000-000000000000", "name": "string", "note": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "phone": "string", "taxCode": "string", "type": 1, "website": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}PUT
/api/customer
Overview HTTP request›
| URL | https://api.crmtop.vn/api/customer |
|---|---|
| Method | PUT |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | AddOrEditCustomerRequest |
{
"address": "string",
"businessType": "string",
"code": "string",
"email": "string",
"groupId": "00000000-0000-0000-0000-000000000000",
"groupName": "string",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"note": "string",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"phone": "string",
"taxCode": "string",
"type": 1,
"website": "string"
}Example cURL copy/paste›
curl --location --request PUT 'https://api.crmtop.vn/api/customer'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"address": "string", "businessType": "string", "code": "string", "email": "string", "groupId": "00000000-0000-0000-0000-000000000000", "groupName": "string", "id": "00000000-0000-0000-0000-000000000000", "name": "string", "note": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "phone": "string", "taxCode": "string", "type": 1, "website": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}GET
/api/customer/edit/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/customer/edit/{id} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/customer/edit/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: AddOrEditCustomerRequestExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"address": "string",
"businessType": "string",
"code": "string",
"email": "string",
"groupId": "00000000-0000-0000-0000-000000000000",
"groupName": "string",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"note": "string",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"phone": "string",
"taxCode": "string",
"type": 1,
"website": "string"
},
"errors": null,
"meta": null
}POST
/api/customer/nhóm
Overview HTTP request›
| URL | https://api.crmtop.vn/api/customer/group |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SaveCustomerGroupRequest |
{
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"note": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/customer/group'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"id": "00000000-0000-0000-0000-000000000000", "name": "string", "note": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}PUT
/api/customer/nhóm
Overview HTTP request›
| URL | https://api.crmtop.vn/api/customer/group |
|---|---|
| Method | PUT |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SaveCustomerGroupRequest |
{
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"note": "string"
}Example cURL copy/paste›
curl --location --request PUT 'https://api.crmtop.vn/api/customer/group'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"id": "00000000-0000-0000-0000-000000000000", "name": "string", "note": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}POST
/api/customer/nhóm/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/customer/group/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SearchCustomerGroupRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/customer/group/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: CustomerGroupDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"createdOn": "2026-02-27T00:00:00+07:00",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"note": "string"
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}DELETE
/api/customer/nhóm/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/customer/group/{id} |
|---|---|
| Method | DELETE |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request DELETE 'https://api.crmtop.vn/api/customer/group/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}POST
/api/customer/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/customer/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SearchCustomerRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/customer/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SearchCustomerDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"address": "string",
"businessType": "string",
"code": "string",
"email": "string",
"groupId": "00000000-0000-0000-0000-000000000000",
"groupName": "string",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"note": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"phone": "string",
"taxCode": "string",
"type": null,
"website": "string"
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}DELETE
/api/customer/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/customer/{id} |
|---|---|
| Method | DELETE |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request DELETE 'https://api.crmtop.vn/api/customer/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}Lead
Nhóm endpoints theo Swagger tag
POST
/api/lead
Overview HTTP request›
| URL | https://api.crmtop.vn/api/lead |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | AddOrEditLeadRequest |
{
"assignedTo": 0,
"company": "string",
"email": "string",
"fullName": "string",
"id": "00000000-0000-0000-0000-000000000000",
"industry": 1,
"notes": "string",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"phone": "string",
"position": "string",
"probability": 0,
"rating": 1,
"source": 1,
"status": 1
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/lead'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"assignedTo": 0, "company": "string", "email": "string", "fullName": "string", "id": "00000000-0000-0000-0000-000000000000", "industry": 1, "notes": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "phone": "string", "position": "string", "probability": 0, "rating": 1, "source": 1, "status": 1}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}PUT
/api/lead
Overview HTTP request›
| URL | https://api.crmtop.vn/api/lead |
|---|---|
| Method | PUT |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | AddOrEditLeadRequest |
{
"assignedTo": 0,
"company": "string",
"email": "string",
"fullName": "string",
"id": "00000000-0000-0000-0000-000000000000",
"industry": 1,
"notes": "string",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"phone": "string",
"position": "string",
"probability": 0,
"rating": 1,
"source": 1,
"status": 1
}Example cURL copy/paste›
curl --location --request PUT 'https://api.crmtop.vn/api/lead'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"assignedTo": 0, "company": "string", "email": "string", "fullName": "string", "id": "00000000-0000-0000-0000-000000000000", "industry": 1, "notes": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "phone": "string", "position": "string", "probability": 0, "rating": 1, "source": 1, "status": 1}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}GET
/api/lead/convert/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/lead/convert/{id} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/lead/convert/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}GET
/api/lead/edit/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/lead/edit/{id} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/lead/edit/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: AddOrEditLeadRequestExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"assignedTo": 0,
"company": "string",
"email": "string",
"fullName": "string",
"id": "00000000-0000-0000-0000-000000000000",
"industry": 1,
"notes": "string",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"phone": "string",
"position": "string",
"probability": 0,
"rating": 1,
"source": 1,
"status": 1
},
"errors": null,
"meta": null
}POST
/api/lead/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/lead/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SearchLeadRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/lead/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SearchLeadDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"assignedTo": 0,
"company": "string",
"email": "string",
"fullName": "string",
"id": "00000000-0000-0000-0000-000000000000",
"industry": null,
"lastContactDate": "2026-02-27T00:00:00+07:00",
"nextFollowUp": "2026-02-27T00:00:00+07:00",
"phone": "string",
"rating": null,
"source": null,
"status": null
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}DELETE
/api/lead/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/lead/{id} |
|---|---|
| Method | DELETE |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request DELETE 'https://api.crmtop.vn/api/lead/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}MaktEmail
Nhóm endpoints theo Swagger tag
POST
/api/maktemail
Overview HTTP request›
| URL | https://api.crmtop.vn/api/MaktEmail |
|---|---|
| Method | POST |
| Content-Type | multipart/form-data |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Id | query | false | string(uuid) | | |
Code | query | false | string | | |
Name | query | false | string | | |
Description | query | false | string | | |
Subject | query | false | string | | |
Supplier | query | false | EmailSupplier | | |
From | query | false | string | | |
DisplayName | query | false | string | | |
TemplateId | query | false | string(uuid) | | |
TemplateName | query | false | string | | |
SendType | query | false | EmailSendType | | |
SegmentId | query | false | string(uuid) | | |
SegmentName | query | false | string | | |
FilePath | query | false | string | | |
Status | query | false | MarketingStatus | | |
AppointmentDate | query | false | string(date-time) | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | multipart/form-data |
| Schema | object |
{
"FormFile": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/MaktEmail?Id=00000000-0000-0000-0000-000000000000&Code=string&Name=string&Description=string&Subject=string&Supplier=1&From=string&DisplayName=string&TemplateId=00000000-0000-0000-0000-000000000000&TemplateName=string&SendType=1&SegmentId=00000000-0000-0000-0000-000000000000&SegmentName=string&FilePath=string&Status=1&AppointmentDate=2026-02-27T00:00:00+07:00'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: multipart/form-data'
--data-raw '{"FormFile": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}PUT
/api/maktemail
Overview HTTP request›
| URL | https://api.crmtop.vn/api/MaktEmail |
|---|---|
| Method | PUT |
| Content-Type | multipart/form-data |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Id | query | false | string(uuid) | | |
Code | query | false | string | | |
Name | query | false | string | | |
Description | query | false | string | | |
Subject | query | false | string | | |
Supplier | query | false | EmailSupplier | | |
From | query | false | string | | |
DisplayName | query | false | string | | |
TemplateId | query | false | string(uuid) | | |
TemplateName | query | false | string | | |
SendType | query | false | EmailSendType | | |
SegmentId | query | false | string(uuid) | | |
SegmentName | query | false | string | | |
FilePath | query | false | string | | |
Status | query | false | MarketingStatus | | |
AppointmentDate | query | false | string(date-time) | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | multipart/form-data |
| Schema | object |
{
"FormFile": "string"
}Example cURL copy/paste›
curl --location --request PUT 'https://api.crmtop.vn/api/MaktEmail?Id=00000000-0000-0000-0000-000000000000&Code=string&Name=string&Description=string&Subject=string&Supplier=1&From=string&DisplayName=string&TemplateId=00000000-0000-0000-0000-000000000000&TemplateName=string&SendType=1&SegmentId=00000000-0000-0000-0000-000000000000&SegmentName=string&FilePath=string&Status=1&AppointmentDate=2026-02-27T00:00:00+07:00'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: multipart/form-data'
--data-raw '{"FormFile": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}GET
/api/maktemail/edit/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/MaktEmail/edit/{id} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/MaktEmail/edit/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: AddOrEditMaktEmailRequestExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"appointmentDate": "2026-02-27T00:00:00+07:00",
"code": "string",
"description": "string",
"displayName": "string",
"filePath": "string",
"formFile": "string",
"from": "string",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"segmentId": "00000000-0000-0000-0000-000000000000",
"segmentName": "string",
"sendType": 1,
"status": 1,
"subject": "string",
"supplier": 1,
"templateId": "00000000-0000-0000-0000-000000000000",
"templateName": "string"
},
"errors": null,
"meta": null
}POST
/api/maktemail/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/MaktEmail/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SearchMaktEmailRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/MaktEmail/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SearchMaktEmailDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"code": "string",
"createdByName": "string",
"createdOn": "2026-02-27T00:00:00+07:00",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"status": null,
"subject": "string",
"supplier": null
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}DELETE
/api/maktemail/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/MaktEmail/{id} |
|---|---|
| Method | DELETE |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request DELETE 'https://api.crmtop.vn/api/MaktEmail/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}MaktZalo
Nhóm endpoints theo Swagger tag
POST
/api/maktzalo
Overview HTTP request›
| URL | https://api.crmtop.vn/api/MaktZalo |
|---|---|
| Method | POST |
| Content-Type | multipart/form-data |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Id | query | false | string(uuid) | | |
Code | query | false | string | | |
Name | query | false | string | | |
Description | query | false | string | | |
Channel | query | false | MaktZaloChannel | | |
SocialId | query | false | string | | |
SocialName | query | false | string | | |
ZnsTemplateId | query | false | string | | |
ZnsTemplateName | query | false | string | | |
ZnsTemplateParam | query | false | string | | |
ZnsTemplatePreviewUrl | query | false | string | | |
ZnsTemplatePrice | query | false | number(double) | | |
SmsTemplateId | query | false | string(uuid) | | |
SmsTemplateName | query | false | string | | |
SmsTemplateParam | query | false | string | | |
SendType | query | false | EmailSendType | | |
SegmentId | query | false | string(uuid) | | |
SegmentName | query | false | string | | |
FilePath | query | false | string | | |
ExcelHeader | query | false | string | | |
Status | query | false | MarketingStatus | | |
AppointmentDate | query | false | string(date-time) | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | multipart/form-data |
| Schema | object |
{
"FormFile": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/MaktZalo?Id=00000000-0000-0000-0000-000000000000&Code=string&Name=string&Description=string&Channel=1&SocialId=string&SocialName=string&ZnsTemplateId=string&ZnsTemplateName=string&ZnsTemplateParam=string&ZnsTemplatePreviewUrl=string&ZnsTemplatePrice=0.0&SmsTemplateId=00000000-0000-0000-0000-000000000000&SmsTemplateName=string&SmsTemplateParam=string&SendType=1&SegmentId=00000000-0000-0000-0000-000000000000&SegmentName=string&FilePath=string&ExcelHeader=string&Status=1&AppointmentDate=2026-02-27T00:00:00+07:00'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: multipart/form-data'
--data-raw '{"FormFile": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}PUT
/api/maktzalo
Overview HTTP request›
| URL | https://api.crmtop.vn/api/MaktZalo |
|---|---|
| Method | PUT |
| Content-Type | multipart/form-data |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Id | query | false | string(uuid) | | |
Code | query | false | string | | |
Name | query | false | string | | |
Description | query | false | string | | |
Channel | query | false | MaktZaloChannel | | |
SocialId | query | false | string | | |
SocialName | query | false | string | | |
ZnsTemplateId | query | false | string | | |
ZnsTemplateName | query | false | string | | |
ZnsTemplateParam | query | false | string | | |
ZnsTemplatePreviewUrl | query | false | string | | |
ZnsTemplatePrice | query | false | number(double) | | |
SmsTemplateId | query | false | string(uuid) | | |
SmsTemplateName | query | false | string | | |
SmsTemplateParam | query | false | string | | |
SendType | query | false | EmailSendType | | |
SegmentId | query | false | string(uuid) | | |
SegmentName | query | false | string | | |
FilePath | query | false | string | | |
ExcelHeader | query | false | string | | |
Status | query | false | MarketingStatus | | |
AppointmentDate | query | false | string(date-time) | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | multipart/form-data |
| Schema | object |
{
"FormFile": "string"
}Example cURL copy/paste›
curl --location --request PUT 'https://api.crmtop.vn/api/MaktZalo?Id=00000000-0000-0000-0000-000000000000&Code=string&Name=string&Description=string&Channel=1&SocialId=string&SocialName=string&ZnsTemplateId=string&ZnsTemplateName=string&ZnsTemplateParam=string&ZnsTemplatePreviewUrl=string&ZnsTemplatePrice=0.0&SmsTemplateId=00000000-0000-0000-0000-000000000000&SmsTemplateName=string&SmsTemplateParam=string&SendType=1&SegmentId=00000000-0000-0000-0000-000000000000&SegmentName=string&FilePath=string&ExcelHeader=string&Status=1&AppointmentDate=2026-02-27T00:00:00+07:00'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: multipart/form-data'
--data-raw '{"FormFile": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}GET
/api/maktzalo/edit/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/MaktZalo/edit/{id} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/MaktZalo/edit/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: AddOrEditMaktZaloRequestExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"appointmentDate": "2026-02-27T00:00:00+07:00",
"channel": 1,
"code": "string",
"description": "string",
"excelHeader": "string",
"filePath": "string",
"formFile": "string",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"segmentId": "00000000-0000-0000-0000-000000000000",
"segmentName": "string",
"sendType": 1,
"smsTemplateId": "00000000-0000-0000-0000-000000000000",
"smsTemplateName": "string",
"smsTemplateParam": "string",
"socialId": "string",
"socialName": "string",
"status": 1,
"znsTemplateId": "string",
"znsTemplateName": "string",
"znsTemplateParam": "string",
"znsTemplatePreviewUrl": "string",
"znsTemplatePrice": 0.0
},
"errors": null,
"meta": null
}POST
/api/maktzalo/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/MaktZalo/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SearchMaktZaloRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/MaktZalo/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SearchMaktZaloDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"code": "string",
"createdByName": "string",
"createdOn": "2026-02-27T00:00:00+07:00",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"socialName": "string",
"status": null,
"znsTemplateName": "string"
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}DELETE
/api/maktzalo/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/MaktZalo/{id} |
|---|---|
| Method | DELETE |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request DELETE 'https://api.crmtop.vn/api/MaktZalo/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}Opportunity
Nhóm endpoints theo Swagger tag
POST
/api/opportunity
Overview HTTP request›
| URL | https://api.crmtop.vn/api/opportunity |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | AddOrEditOpportunityRequest |
{
"actualCloseDate": "2026-02-27T00:00:00+07:00",
"amount": 0.0,
"code": "string",
"contactId": "00000000-0000-0000-0000-000000000000",
"contactName": "string",
"currency": "string",
"customerId": "00000000-0000-0000-0000-000000000000",
"customerName": "string",
"description": "string",
"expectedCloseDate": "2026-02-27T00:00:00+07:00",
"id": "00000000-0000-0000-0000-000000000000",
"leadId": "00000000-0000-0000-0000-000000000000",
"leadName": "string",
"name": "string",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"priority": 1,
"probability": 0.0,
"source": "string",
"stage": 1
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/opportunity'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"actualCloseDate": "2026-02-27T00:00:00+07:00", "amount": 0.0, "code": "string", "contactId": "00000000-0000-0000-0000-000000000000", "contactName": "string", "currency": "string", "customerId": "00000000-0000-0000-0000-000000000000", "customerName": "string", "description": "string", "expectedCloseDate": "2026-02-27T00:00:00+07:00", "id": "00000000-0000-0000-0000-000000000000", "leadId": "00000000-0000-0000-0000-000000000000", "leadName": "string", "name": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "priority": 1, "probability": 0.0, "source": "string", "stage": 1}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}PUT
/api/opportunity
Overview HTTP request›
| URL | https://api.crmtop.vn/api/opportunity |
|---|---|
| Method | PUT |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | AddOrEditOpportunityRequest |
{
"actualCloseDate": "2026-02-27T00:00:00+07:00",
"amount": 0.0,
"code": "string",
"contactId": "00000000-0000-0000-0000-000000000000",
"contactName": "string",
"currency": "string",
"customerId": "00000000-0000-0000-0000-000000000000",
"customerName": "string",
"description": "string",
"expectedCloseDate": "2026-02-27T00:00:00+07:00",
"id": "00000000-0000-0000-0000-000000000000",
"leadId": "00000000-0000-0000-0000-000000000000",
"leadName": "string",
"name": "string",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"priority": 1,
"probability": 0.0,
"source": "string",
"stage": 1
}Example cURL copy/paste›
curl --location --request PUT 'https://api.crmtop.vn/api/opportunity'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"actualCloseDate": "2026-02-27T00:00:00+07:00", "amount": 0.0, "code": "string", "contactId": "00000000-0000-0000-0000-000000000000", "contactName": "string", "currency": "string", "customerId": "00000000-0000-0000-0000-000000000000", "customerName": "string", "description": "string", "expectedCloseDate": "2026-02-27T00:00:00+07:00", "id": "00000000-0000-0000-0000-000000000000", "leadId": "00000000-0000-0000-0000-000000000000", "leadName": "string", "name": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "priority": 1, "probability": 0.0, "source": "string", "stage": 1}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}GET
/api/opportunity/edit/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/opportunity/edit/{id} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/opportunity/edit/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: AddOrEditOpportunityRequestExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"actualCloseDate": "2026-02-27T00:00:00+07:00",
"amount": 0.0,
"code": "string",
"contactId": "00000000-0000-0000-0000-000000000000",
"contactName": "string",
"currency": "string",
"customerId": "00000000-0000-0000-0000-000000000000",
"customerName": "string",
"description": "string",
"expectedCloseDate": "2026-02-27T00:00:00+07:00",
"id": "00000000-0000-0000-0000-000000000000",
"leadId": "00000000-0000-0000-0000-000000000000",
"leadName": "string",
"name": "string",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"priority": 1,
"probability": 0.0,
"source": "string",
"stage": 1
},
"errors": null,
"meta": null
}POST
/api/opportunity/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/opportunity/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SearchOpportunityRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/opportunity/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SearchOpportunityDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"actualCloseDate": "2026-02-27T00:00:00+07:00",
"amount": 0.0,
"code": "string",
"contactId": "00000000-0000-0000-0000-000000000000",
"contactName": "string",
"currency": "string",
"customerId": "00000000-0000-0000-0000-000000000000",
"customerName": "string",
"expectedCloseDate": "2026-02-27T00:00:00+07:00",
"id": "00000000-0000-0000-0000-000000000000",
"leadId": "00000000-0000-0000-0000-000000000000",
"leadName": "string",
"name": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"priority": null,
"probability": 0.0,
"source": "string",
"stage": null
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}DELETE
/api/opportunity/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/opportunity/{id} |
|---|---|
| Method | DELETE |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request DELETE 'https://api.crmtop.vn/api/opportunity/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}Order
Nhóm endpoints theo Swagger tag
POST
/api/order/crm
Overview HTTP request›
| URL | https://api.crmtop.vn/api/order/crm |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SaveOrderRequest |
{
"approved": true,
"code": "string",
"customerId": "00000000-0000-0000-0000-000000000000",
"customerName": "string",
"discountAmount": 0.0,
"dueDate": "2026-02-27T00:00:00+07:00",
"id": "00000000-0000-0000-0000-000000000000",
"note": "string",
"orderDate": "2026-02-27T00:00:00+07:00",
"products": "string",
"receiverAddress": "string",
"receiverEmail": "string",
"receiverName": "string",
"receiverPhone": "string",
"status": 1,
"taxAmount": 0.0,
"totalAmount": 0.0
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/order/crm'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"approved": true, "code": "string", "customerId": "00000000-0000-0000-0000-000000000000", "customerName": "string", "discountAmount": 0.0, "dueDate": "2026-02-27T00:00:00+07:00", "id": "00000000-0000-0000-0000-000000000000", "note": "string", "orderDate": "2026-02-27T00:00:00+07:00", "products": "string", "receiverAddress": "string", "receiverEmail": "string", "receiverName": "string", "receiverPhone": "string", "status": 1, "taxAmount": 0.0, "totalAmount": 0.0}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}PUT
/api/order/crm
Overview HTTP request›
| URL | https://api.crmtop.vn/api/order/crm |
|---|---|
| Method | PUT |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SaveOrderRequest |
{
"approved": true,
"code": "string",
"customerId": "00000000-0000-0000-0000-000000000000",
"customerName": "string",
"discountAmount": 0.0,
"dueDate": "2026-02-27T00:00:00+07:00",
"id": "00000000-0000-0000-0000-000000000000",
"note": "string",
"orderDate": "2026-02-27T00:00:00+07:00",
"products": "string",
"receiverAddress": "string",
"receiverEmail": "string",
"receiverName": "string",
"receiverPhone": "string",
"status": 1,
"taxAmount": 0.0,
"totalAmount": 0.0
}Example cURL copy/paste›
curl --location --request PUT 'https://api.crmtop.vn/api/order/crm'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"approved": true, "code": "string", "customerId": "00000000-0000-0000-0000-000000000000", "customerName": "string", "discountAmount": 0.0, "dueDate": "2026-02-27T00:00:00+07:00", "id": "00000000-0000-0000-0000-000000000000", "note": "string", "orderDate": "2026-02-27T00:00:00+07:00", "products": "string", "receiverAddress": "string", "receiverEmail": "string", "receiverName": "string", "receiverPhone": "string", "status": 1, "taxAmount": 0.0, "totalAmount": 0.0}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}POST
/api/order/crm/approve
Overview HTTP request›
| URL | https://api.crmtop.vn/api/order/crm/approve |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | ApproveOrderRequest |
{
"approve": true,
"id": "00000000-0000-0000-0000-000000000000",
"note": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/order/crm/approve'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"approve": true, "id": "00000000-0000-0000-0000-000000000000", "note": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}POST
/api/order/crm/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/order/crm/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | PagingOrderRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/order/crm/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: PagingOrderDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"approved": true,
"approvedDate": "2026-02-27T00:00:00+07:00",
"code": "string",
"customerId": "00000000-0000-0000-0000-000000000000",
"customerName": "string",
"dueDate": "2026-02-27T00:00:00+07:00",
"id": "00000000-0000-0000-0000-000000000000",
"orderDate": "2026-02-27T00:00:00+07:00",
"status": null,
"totalAmount": 0.0
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}DELETE
/api/order/crm/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/order/crm/{id} |
|---|---|
| Method | DELETE |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request DELETE 'https://api.crmtop.vn/api/order/crm/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}GET
/api/order/crm/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/order/crm/{id} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/order/crm/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SaveOrderRequestExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"approved": true,
"code": "string",
"customerId": "00000000-0000-0000-0000-000000000000",
"customerName": "string",
"discountAmount": 0.0,
"dueDate": "2026-02-27T00:00:00+07:00",
"id": "00000000-0000-0000-0000-000000000000",
"note": "string",
"orderDate": "2026-02-27T00:00:00+07:00",
"products": "string",
"receiverAddress": "string",
"receiverEmail": "string",
"receiverName": "string",
"receiverPhone": "string",
"status": 1,
"taxAmount": 0.0,
"totalAmount": 0.0
},
"errors": null,
"meta": null
}Product
Nhóm endpoints theo Swagger tag
POST
/api/product/crm
Overview HTTP request›
| URL | https://api.crmtop.vn/api/product/crm |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SaveProductRequest |
{
"code": "string",
"config": "string",
"groupId": 0,
"groupName": "string",
"id": "00000000-0000-0000-0000-000000000000",
"image": "string",
"importPrice": 0.0,
"name": "string",
"note": "string",
"retailPrice": 0.0,
"unitId": 0,
"unitName": "string",
"wholesalePrice": 0.0
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/product/crm'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"code": "string", "config": "string", "groupId": 0, "groupName": "string", "id": "00000000-0000-0000-0000-000000000000", "image": "string", "importPrice": 0.0, "name": "string", "note": "string", "retailPrice": 0.0, "unitId": 0, "unitName": "string", "wholesalePrice": 0.0}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}PUT
/api/product/crm
Overview HTTP request›
| URL | https://api.crmtop.vn/api/product/crm |
|---|---|
| Method | PUT |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SaveProductRequest |
{
"code": "string",
"config": "string",
"groupId": 0,
"groupName": "string",
"id": "00000000-0000-0000-0000-000000000000",
"image": "string",
"importPrice": 0.0,
"name": "string",
"note": "string",
"retailPrice": 0.0,
"unitId": 0,
"unitName": "string",
"wholesalePrice": 0.0
}Example cURL copy/paste›
curl --location --request PUT 'https://api.crmtop.vn/api/product/crm'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"code": "string", "config": "string", "groupId": 0, "groupName": "string", "id": "00000000-0000-0000-0000-000000000000", "image": "string", "importPrice": 0.0, "name": "string", "note": "string", "retailPrice": 0.0, "unitId": 0, "unitName": "string", "wholesalePrice": 0.0}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}POST
/api/product/crm/multi-unit/save
Overview HTTP request›
| URL | https://api.crmtop.vn/api/product/crm/multi-unit/save |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SaveProductMuiltiUnitRequest |
{
"units": [
{
"entityState": null,
"id": "00000000-0000-0000-0000-000000000000",
"importPrice": 0.0,
"note": "string",
"productId": "00000000-0000-0000-0000-000000000000",
"retailPrice": 0.0,
"unitId": 0,
"unitName": "string",
"unitRate": 0.0,
"wholesalePrice": 0.0
}
]
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/product/crm/multi-unit/save'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"units": [{"entityState": null, "id": "00000000-0000-0000-0000-000000000000", "importPrice": 0.0, "note": "string", "productId": "00000000-0000-0000-0000-000000000000", "retailPrice": 0.0, "unitId": 0, "unitName": "string", "unitRate": 0.0, "wholesalePrice": 0.0}]}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}GET
/api/product/crm/multi-unit/{productid}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/product/crm/multi-unit/{productId} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
productId | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/product/crm/multi-unit/{productId}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: arrayExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": [
{
"entityState": 0,
"id": "00000000-0000-0000-0000-000000000000",
"importPrice": 0.0,
"note": "string",
"productId": "00000000-0000-0000-0000-000000000000",
"retailPrice": 0.0,
"unitId": 0,
"unitName": "string",
"unitRate": 0.0,
"wholesalePrice": 0.0
}
],
"errors": null,
"meta": null
}POST
/api/product/crm/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/product/crm/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | PagingProductRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/product/crm/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: PagingProductDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"code": "string",
"groupId": 0,
"groupName": "string",
"id": "00000000-0000-0000-0000-000000000000",
"image": "string",
"name": "string",
"retailPrice": 0.0,
"unitId": 0,
"unitName": "string"
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}POST
/api/product/crm/unit
Overview HTTP request›
| URL | https://api.crmtop.vn/api/product/crm/unit |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SaveUnitRequest |
{
"id": 0,
"name": "string",
"note": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/product/crm/unit'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"id": 0, "name": "string", "note": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: integer(int32)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": 0,
"errors": null,
"meta": null
}DELETE
/api/product/crm/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/product/crm/{id} |
|---|---|
| Method | DELETE |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request DELETE 'https://api.crmtop.vn/api/product/crm/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}GET
/api/product/crm/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/product/crm/{id} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/product/crm/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SaveProductRequestExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"code": "string",
"config": "string",
"groupId": 0,
"groupName": "string",
"id": "00000000-0000-0000-0000-000000000000",
"image": "string",
"importPrice": 0.0,
"name": "string",
"note": "string",
"retailPrice": 0.0,
"unitId": 0,
"unitName": "string",
"wholesalePrice": 0.0
},
"errors": null,
"meta": null
}Segment
Nhóm endpoints theo Swagger tag
POST
/api/segment
Overview HTTP request›
| URL | https://api.crmtop.vn/api/segment |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | AddOrEditSegmentRequest |
{
"description": "string",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/segment'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"description": "string", "id": "00000000-0000-0000-0000-000000000000", "name": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}PUT
/api/segment
Overview HTTP request›
| URL | https://api.crmtop.vn/api/segment |
|---|---|
| Method | PUT |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | AddOrEditSegmentRequest |
{
"description": "string",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string"
}Example cURL copy/paste›
curl --location --request PUT 'https://api.crmtop.vn/api/segment'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"description": "string", "id": "00000000-0000-0000-0000-000000000000", "name": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}GET
/api/segment/edit/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/segment/edit/{id} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/segment/edit/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SearchSegmentDtoExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"createdBy": "00000000-0000-0000-0000-000000000000",
"createdByName": "string",
"createdOn": "2026-02-27T00:00:00+07:00",
"description": "string",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"totalMember": 0
},
"errors": null,
"meta": null
}POST
/api/segment/member/add
Overview HTTP request›
| URL | https://api.crmtop.vn/api/segment/member/add |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | AddSegMemberRequest |
{
"ids": [
"00000000-0000-0000-0000-000000000000"
],
"maktReports": [
{
"id": "00000000-0000-0000-0000-000000000000",
"type": null
}
],
"segmentId": "00000000-0000-0000-0000-000000000000",
"type": 1
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/segment/member/add'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"ids": ["00000000-0000-0000-0000-000000000000"], "maktReports": [{"id": "00000000-0000-0000-0000-000000000000", "type": null}], "segmentId": "00000000-0000-0000-0000-000000000000", "type": 1}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}POST
/api/segment/member/delete
Overview HTTP request›
| URL | https://api.crmtop.vn/api/segment/member/delete |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | DeleteSegMemberRequest |
{
"ids": [
0
],
"segmentId": "00000000-0000-0000-0000-000000000000"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/segment/member/delete'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"ids": [0], "segmentId": "00000000-0000-0000-0000-000000000000"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}POST
/api/segment/member/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/segment/member/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SearchSegMemberRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/segment/member/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SearchSegMemberDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"code": "string",
"email": "string",
"id": 0,
"masterId": "00000000-0000-0000-0000-000000000000",
"name": "string",
"phone": "string",
"segmentId": "00000000-0000-0000-0000-000000000000",
"type": null
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}POST
/api/segment/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/segment/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SearchSegmentRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/segment/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SearchSegmentDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"createdBy": "00000000-0000-0000-0000-000000000000",
"createdByName": "string",
"createdOn": "2026-02-27T00:00:00+07:00",
"description": "string",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"totalMember": 0
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}DELETE
/api/segment/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/segment/{id} |
|---|---|
| Method | DELETE |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request DELETE 'https://api.crmtop.vn/api/segment/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}Social
Nhóm endpoints theo Swagger tag
Template
Nhóm endpoints theo Swagger tag
POST
/api/template
Overview HTTP request›
| URL | https://api.crmtop.vn/api/template |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | AddOrEditTemplateRequest |
{
"content": "string",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"type": 1
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/template'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"content": "string", "id": "00000000-0000-0000-0000-000000000000", "name": "string", "type": 1}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}PUT
/api/template
Overview HTTP request›
| URL | https://api.crmtop.vn/api/template |
|---|---|
| Method | PUT |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | AddOrEditTemplateRequest |
{
"content": "string",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"type": 1
}Example cURL copy/paste›
curl --location --request PUT 'https://api.crmtop.vn/api/template'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"content": "string", "id": "00000000-0000-0000-0000-000000000000", "name": "string", "type": 1}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}GET
/api/template/edit/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/template/edit/{id} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/template/edit/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: AddOrEditTemplateRequestExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"content": "string",
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"type": 1
},
"errors": null,
"meta": null
}POST
/api/template/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/template/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SearchTemplateRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/template/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SearchTemplateDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"content": "string",
"createdBy": "00000000-0000-0000-0000-000000000000",
"createdByName": "string",
"createdOn": "2026-02-27T00:00:00+07:00",
"id": "00000000-0000-0000-0000-000000000000",
"lastModifiedBy": "00000000-0000-0000-0000-000000000000",
"lastModifiedByName": "string",
"lastModifiedOn": "2026-02-27T00:00:00+07:00",
"name": "string",
"type": null
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}DELETE
/api/template/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/template/{id} |
|---|---|
| Method | DELETE |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request DELETE 'https://api.crmtop.vn/api/template/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}Ticket
Nhóm endpoints theo Swagger tag
POST
/api/ticket
Overview HTTP request›
| URL | https://api.crmtop.vn/api/ticket |
|---|---|
| Method | POST |
| Content-Type | multipart/form-data |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Id | query | false | string(uuid) | | |
Code | query | false | string | | |
Subject | query | false | string | | |
Description | query | false | string | | |
TypeId | query | false | integer(int32) | | |
TypeName | query | false | string | | |
Priority | query | false | TicketPriority | | |
Status | query | false | TicketStatus | | |
Channel | query | false | TicketChannel | | |
CustomerId | query | false | string(uuid) | | |
CustomerName | query | false | string | | |
ContactId | query | false | string(uuid) | | |
ContactName | query | false | string | | |
ProductId | query | false | string(uuid) | | |
ProductName | query | false | string | | |
OrderId | query | false | string(uuid) | | |
OrderCode | query | false | string | | |
OwnerId | query | false | string(uuid) | | |
OwnerName | query | false | string | | |
OrgUnitId | query | false | string(uuid) | | |
OrgUnitName | query | false | string | | |
CreatedOn | query | false | string(date-time) | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | multipart/form-data |
| Schema | object |
{
"FormFiles": [
"string"
]
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/ticket?Id=00000000-0000-0000-0000-000000000000&Code=string&Subject=string&Description=string&TypeId=0&TypeName=string&Priority=1&Status=1&Channel=1&CustomerId=00000000-0000-0000-0000-000000000000&CustomerName=string&ContactId=00000000-0000-0000-0000-000000000000&ContactName=string&ProductId=00000000-0000-0000-0000-000000000000&ProductName=string&OrderId=00000000-0000-0000-0000-000000000000&OrderCode=string&OwnerId=00000000-0000-0000-0000-000000000000&OwnerName=string&OrgUnitId=00000000-0000-0000-0000-000000000000&OrgUnitName=string&CreatedOn=2026-02-27T00:00:00+07:00'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: multipart/form-data'
--data-raw '{"FormFiles": ["string"]}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}PUT
/api/ticket
Overview HTTP request›
| URL | https://api.crmtop.vn/api/ticket |
|---|---|
| Method | PUT |
| Content-Type | multipart/form-data |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Id | query | false | string(uuid) | | |
Code | query | false | string | | |
Subject | query | false | string | | |
Description | query | false | string | | |
TypeId | query | false | integer(int32) | | |
TypeName | query | false | string | | |
Priority | query | false | TicketPriority | | |
Status | query | false | TicketStatus | | |
Channel | query | false | TicketChannel | | |
CustomerId | query | false | string(uuid) | | |
CustomerName | query | false | string | | |
ContactId | query | false | string(uuid) | | |
ContactName | query | false | string | | |
ProductId | query | false | string(uuid) | | |
ProductName | query | false | string | | |
OrderId | query | false | string(uuid) | | |
OrderCode | query | false | string | | |
OwnerId | query | false | string(uuid) | | |
OwnerName | query | false | string | | |
OrgUnitId | query | false | string(uuid) | | |
OrgUnitName | query | false | string | | |
CreatedOn | query | false | string(date-time) | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | multipart/form-data |
| Schema | object |
{
"FormFiles": [
"string"
]
}Example cURL copy/paste›
curl --location --request PUT 'https://api.crmtop.vn/api/ticket?Id=00000000-0000-0000-0000-000000000000&Code=string&Subject=string&Description=string&TypeId=0&TypeName=string&Priority=1&Status=1&Channel=1&CustomerId=00000000-0000-0000-0000-000000000000&CustomerName=string&ContactId=00000000-0000-0000-0000-000000000000&ContactName=string&ProductId=00000000-0000-0000-0000-000000000000&ProductName=string&OrderId=00000000-0000-0000-0000-000000000000&OrderCode=string&OwnerId=00000000-0000-0000-0000-000000000000&OwnerName=string&OrgUnitId=00000000-0000-0000-0000-000000000000&OrgUnitName=string&CreatedOn=2026-02-27T00:00:00+07:00'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: multipart/form-data'
--data-raw '{"FormFiles": ["string"]}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}GET
/api/ticket/change/status/{id}/{status}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/ticket/change/status/{id}/{status} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | | |
status | path | true | TicketStatus | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/ticket/change/status/{id}/{status}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}POST
/api/ticket/comment/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/ticket/comment/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SearchCommentRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/ticket/comment/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: TicketCommentDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"attachments": [],
"createdOn": "2026-02-27T00:00:00+07:00",
"id": "00000000-0000-0000-0000-000000000000",
"isInternal": true,
"message": "string",
"sentTimeAgo": "string",
"ticketId": "00000000-0000-0000-0000-000000000000",
"userId": "00000000-0000-0000-0000-000000000000",
"userName": "string"
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}GET
/api/ticket/edit/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/ticket/edit/{id} |
|---|---|
| Method | GET |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request GET 'https://api.crmtop.vn/api/ticket/edit/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: AddOrEditTicketRequestExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"channel": 1,
"code": "string",
"contactId": "00000000-0000-0000-0000-000000000000",
"contactName": "string",
"createdOn": "2026-02-27T00:00:00+07:00",
"customerId": "00000000-0000-0000-0000-000000000000",
"customerName": "string",
"description": "string",
"formFiles": [
"string"
],
"id": "00000000-0000-0000-0000-000000000000",
"orderCode": "string",
"orderId": "00000000-0000-0000-0000-000000000000",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"priority": 1,
"productId": "00000000-0000-0000-0000-000000000000",
"productName": "string",
"status": 1,
"subject": "string",
"typeId": 0,
"typeName": "string"
},
"errors": null,
"meta": null
}POST
/api/ticket/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/ticket/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SearchTicketRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/ticket/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SearchTicketDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"channel": null,
"closedDate": "2026-02-27T00:00:00+07:00",
"code": "string",
"contactId": "00000000-0000-0000-0000-000000000000",
"contactName": "string",
"createdByName": "string",
"createdOn": "2026-02-27T00:00:00+07:00",
"customerId": "00000000-0000-0000-0000-000000000000",
"customerName": "string",
"id": "00000000-0000-0000-0000-000000000000",
"orderCode": "string",
"orderId": "00000000-0000-0000-0000-000000000000",
"orgUnitId": "00000000-0000-0000-0000-000000000000",
"orgUnitName": "string",
"ownerId": "00000000-0000-0000-0000-000000000000",
"ownerName": "string",
"priority": null,
"productId": "00000000-0000-0000-0000-000000000000",
"productName": "string",
"status": null,
"subject": "string",
"typeId": 0,
"typeName": "string"
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}POST
/api/ticket/send/comment
Overview HTTP request›
| URL | https://api.crmtop.vn/api/ticket/send/comment |
|---|---|
| Method | POST |
| Content-Type | multipart/form-data |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
TenantCode | query | false | string | | |
TicketId | query | false | string(uuid) | | |
UserId | query | false | string(uuid) | | |
UserName | query | false | string | | |
Message | query | false | string | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | multipart/form-data |
| Schema | object |
{
"FormFiles": [
"string"
]
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/ticket/send/comment?TenantCode=string&TicketId=00000000-0000-0000-0000-000000000000&UserId=00000000-0000-0000-0000-000000000000&UserName=string&Message=string'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: multipart/form-data'
--data-raw '{"FormFiles": ["string"]}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: string(uuid)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": "00000000-0000-0000-0000-000000000000",
"errors": null,
"meta": null
}POST
/api/ticket/type
Overview HTTP request›
| URL | https://api.crmtop.vn/api/ticket/type |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | AddOrEditTicketTypeRequest |
{
"id": 0,
"name": "string",
"note": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/ticket/type'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"id": 0, "name": "string", "note": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: integer(int32)Example JSON
{
"success": true,
"code": 200,
"message": null,
"data": 0,
"errors": null,
"meta": null
}POST
/api/ticket/type/paging
Overview HTTP request›
| URL | https://api.crmtop.vn/api/ticket/type/paging |
|---|---|
| Method | POST |
| Content-Type | application/json |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
Authorization | header | true | string | Bearer token cho Public API. | |
Request body schema + JSON›
| Required | false |
|---|---|
| Content-Type | application/json |
| Schema | SearchTicketTypeRequest |
{
"pageNumber": 0,
"pageSize": 0,
"search": "string"
}Example cURL copy/paste›
curl --location --request POST 'https://api.crmtop.vn/api/ticket/type/paging'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'
--header 'Content-Type: application/json'
--data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string"}'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: SearchTicketTypeDtoPaginationResponseExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": {
"currentPage": 0,
"data": [
{
"createdOn": "2026-02-27T00:00:00+07:00",
"id": 0,
"name": "string",
"note": "string"
}
],
"hasNextPage": true,
"hasPreviousPage": true,
"pageSize": 0,
"totalCount": 0,
"totalPages": 0
},
"errors": null,
"meta": null
}DELETE
/api/ticket/type/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/ticket/type/{id} |
|---|---|
| Method | DELETE |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | integer(int32) | |
Example cURL copy/paste›
curl --location --request DELETE 'https://api.crmtop.vn/api/ticket/type/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}DELETE
/api/ticket/{id}
Overview HTTP request›
| URL | https://api.crmtop.vn/api/ticket/{id} |
|---|---|
| Method | DELETE |
| Content-Type | (không có / tuỳ) |
| Authorization | <access_token> |
Parameters path/query/header›
| Name | In | Required | Type | Description | Example |
|---|---|---|---|---|---|
id | path | true | string(uuid) | |
Example cURL copy/paste›
curl --location --request DELETE 'https://api.crmtop.vn/api/ticket/{id}'
--header 'accept: application/json'
--header 'Authorization: Bearer <access_token>'Responses HTTP codes + JSON›
HTTP 200 — OK
Content-Type:
application/json • Schema: booleanExample JSON
{
"success": true,
"code": 200,
"message": null,
"data": true,
"errors": null,
"meta": null
}