Version: 1.0

WebApi

Tổng endpoint: 90
Auth
Danh sách endpoints thuộc nhóm Auth (theo Swagger tag).
POST

Lấy access token truy cập cho developers

/api/v1/auth/get-token-for-develop
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/auth/get-token-for-develop
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Parameters path/query/header
(No parameters)
Không có parameters.
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaGetTokenForPublicApiRequest
{
  "clientId": "string",
  "clientSecret": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/auth/get-token-for-develop'
  --header 'accept: application/json'
  --header 'Content-Type: application/json'
  --data-raw '{"clientId": "string", "clientSecret": "string"}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: TokenForPublicApiDto
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "accessToken": "string",
    "refreshToken": "string",
    "expiration": 0
  },
  "errors": null,
  "meta": null
}

Activity
Danh sách endpoints thuộc nhóm Activity (theo Swagger tag).
POST

Thêm hoạt động

/api/v1/activity/create
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/activity/create
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaAddOrEditActivityRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "type": 1,
  "subject": "string",
  "description": "string",
  "status": 1,
  "priority": 1,
  "startTime": "2026-02-27T00:00:00+07:00",
  "endTime": "2026-02-27T00:00:00+07:00",
  "dueDate": "2026-02-27T00:00:00+07:00",
  "isAllDay": true,
  "ownerId": "00000000-0000-0000-0000-000000000000",
  "ownerName": "string",
  "orgUnitId": "00000000-0000-0000-0000-000000000000",
  "orgUnitName": "string",
  "extraData": "string",
  "primaryType": 1,
  "primaryId": "00000000-0000-0000-0000-000000000000",
  "primaryName": "string",
  "relatedType": 1,
  "relatedId": "00000000-0000-0000-0000-000000000000",
  "relatedName": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/activity/create'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "type": 1, "subject": "string", "description": "string", "status": 1, "priority": 1, "startTime": "2026-02-27T00:00:00+07:00", "endTime": "2026-02-27T00:00:00+07:00", "dueDate": "2026-02-27T00:00:00+07:00", "isAllDay": true, "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "string", "extraData": "string", "primaryType": 1, "primaryId": "00000000-0000-0000-0000-000000000000", "primaryName": "string", "relatedType": 1, "relatedId": "00000000-0000-0000-0000-000000000000", "relatedName": "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
}

DELETE

Xóa hoạt động

/api/v1/activity/delete/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/activity/delete/{id}
MethodDELETE
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request DELETE 'https://api.crmtop.vn/api/v1/activity/delete/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

GET

Lấy thông tin hoạt động

/api/v1/activity/get/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/activity/get/{id}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/activity/get/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: AddOrEditActivityRequest
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "type": 1,
    "subject": "string",
    "description": "string",
    "status": 1,
    "priority": 1,
    "startTime": "2026-02-27T00:00:00+07:00",
    "endTime": "2026-02-27T00:00:00+07:00",
    "dueDate": "2026-02-27T00:00:00+07:00",
    "isAllDay": true,
    "ownerId": "00000000-0000-0000-0000-000000000000",
    "ownerName": "string",
    "orgUnitId": "00000000-0000-0000-0000-000000000000",
    "orgUnitName": "string",
    "extraData": "string",
    "primaryType": 1,
    "primaryId": "00000000-0000-0000-0000-000000000000",
    "primaryName": "string",
    "relatedType": 1,
    "relatedId": "00000000-0000-0000-0000-000000000000",
    "relatedName": "string"
  },
  "errors": null,
  "meta": null
}

POST

Tìm kiếm hoạt động

/api/v1/activity/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/activity/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSearchActivityRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string",
  "type": 1,
  "status": 1,
  "priority": 1,
  "ownerId": "00000000-0000-0000-0000-000000000000",
  "primaryType": 1,
  "primaryId": "00000000-0000-0000-0000-000000000000",
  "primaryName": "string",
  "subject": "string",
  "fieldDate": "string",
  "from": "2026-02-27T00:00:00+07:00",
  "to": "2026-02-27T00:00:00+07:00"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/activity/search'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string", "type": 1, "status": 1, "priority": 1, "ownerId": "00000000-0000-0000-0000-000000000000", "primaryType": 1, "primaryId": "00000000-0000-0000-0000-000000000000", "primaryName": "string", "subject": "string", "fieldDate": "string", "from": "2026-02-27T00:00:00+07:00", "to": "2026-02-27T00:00:00+07:00"}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: SearchActivityDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

GET

Cập nhật trạng thái hoạt động (1: Kế hoạch, 2: Đang thực hiện, 3: Hoàn thành, 4: Huỷ)

/api/v1/activity/status/{id}/{status}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/activity/status/{id}/{status}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
statuspathtrueActivityStatus
1
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/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: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

PUT

Cập nhật hoạt động

/api/v1/activity/update
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/activity/update
MethodPUT
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaAddOrEditActivityRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "type": 1,
  "subject": "string",
  "description": "string",
  "status": 1,
  "priority": 1,
  "startTime": "2026-02-27T00:00:00+07:00",
  "endTime": "2026-02-27T00:00:00+07:00",
  "dueDate": "2026-02-27T00:00:00+07:00",
  "isAllDay": true,
  "ownerId": "00000000-0000-0000-0000-000000000000",
  "ownerName": "string",
  "orgUnitId": "00000000-0000-0000-0000-000000000000",
  "orgUnitName": "string",
  "extraData": "string",
  "primaryType": 1,
  "primaryId": "00000000-0000-0000-0000-000000000000",
  "primaryName": "string",
  "relatedType": 1,
  "relatedId": "00000000-0000-0000-0000-000000000000",
  "relatedName": "string"
}
Example cURL copy/paste
curl --location --request PUT 'https://api.crmtop.vn/api/v1/activity/update'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "type": 1, "subject": "string", "description": "string", "status": 1, "priority": 1, "startTime": "2026-02-27T00:00:00+07:00", "endTime": "2026-02-27T00:00:00+07:00", "dueDate": "2026-02-27T00:00:00+07:00", "isAllDay": true, "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "string", "extraData": "string", "primaryType": 1, "primaryId": "00000000-0000-0000-0000-000000000000", "primaryName": "string", "relatedType": 1, "relatedId": "00000000-0000-0000-0000-000000000000", "relatedName": "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
}

Campaign
Danh sách endpoints thuộc nhóm Campaign (theo Swagger tag).
POST

Thêm mới chiến dịch

/api/v1/campaign/create
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/campaign/create
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSaveCampaignRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "code": "string",
  "name": "string",
  "type": 1,
  "status": 1,
  "startDate": "2026-02-27T00:00:00+07:00",
  "endDate": "2026-02-27T00:00:00+07:00",
  "expectedRevenue": 0.0,
  "budgetedCost": 0.0,
  "actualCost": 0.0,
  "expectedResponseRate": 0.0,
  "actualResponseRate": 0.0,
  "note": "string",
  "ownerId": "00000000-0000-0000-0000-000000000000",
  "ownerName": "string",
  "orgUnitId": "00000000-0000-0000-0000-000000000000",
  "orgUnitName": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/campaign/create'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "code": "string", "name": "string", "type": 1, "status": 1, "startDate": "2026-02-27T00:00:00+07:00", "endDate": "2026-02-27T00:00:00+07:00", "expectedRevenue": 0.0, "budgetedCost": 0.0, "actualCost": 0.0, "expectedResponseRate": 0.0, "actualResponseRate": 0.0, "note": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "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
}

DELETE

Xóa chiến dịch

/api/v1/campaign/delete/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/campaign/delete/{id}
MethodDELETE
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request DELETE 'https://api.crmtop.vn/api/v1/campaign/delete/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

GET

Lấy thông tin chiến dịch

/api/v1/campaign/get/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/campaign/get/{id}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/campaign/get/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: SaveCampaignRequest
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "code": "string",
    "name": "string",
    "type": 1,
    "status": 1,
    "startDate": "2026-02-27T00:00:00+07:00",
    "endDate": "2026-02-27T00:00:00+07:00",
    "expectedRevenue": 0.0,
    "budgetedCost": 0.0,
    "actualCost": 0.0,
    "expectedResponseRate": 0.0,
    "actualResponseRate": 0.0,
    "note": "string",
    "ownerId": "00000000-0000-0000-0000-000000000000",
    "ownerName": "string",
    "orgUnitId": "00000000-0000-0000-0000-000000000000",
    "orgUnitName": "string"
  },
  "errors": null,
  "meta": null
}

POST

Thêm thành viên trong chiến dịch

/api/v1/campaign/member/add
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/campaign/member/add
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSaveCampMemberRequest
{
  "campaignId": "00000000-0000-0000-0000-000000000000",
  "type": 1,
  "ids": [
    "00000000-0000-0000-0000-000000000000"
  ]
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/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", "type": 1, "ids": ["00000000-0000-0000-0000-000000000000"]}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

DELETE

Xóa thành viên trong chiến dịch

/api/v1/campaign/member/delete/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/campaign/member/delete/{id}
MethodDELETE
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtrueinteger(int32)
0
Example cURL copy/paste
curl --location --request DELETE 'https://api.crmtop.vn/api/v1/campaign/member/delete/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

POST

Tìm kiếm thành viên trong chiến dịch

/api/v1/campaign/member/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/campaign/member/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSearchCampMemberRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string",
  "campaignId": "00000000-0000-0000-0000-000000000000",
  "type": 1
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/campaign/member/search'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string", "campaignId": "00000000-0000-0000-0000-000000000000", "type": 1}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: SearchCampMemberDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

POST

Tìm kiếm chiến dịch

/api/v1/campaign/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/campaign/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSearchCampaignRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string",
  "type": 1,
  "status": 1
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/campaign/search'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string", "type": 1, "status": 1}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: SearchCampaignDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

PUT

Cập nhật chiến dịch

/api/v1/campaign/update
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/campaign/update
MethodPUT
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSaveCampaignRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "code": "string",
  "name": "string",
  "type": 1,
  "status": 1,
  "startDate": "2026-02-27T00:00:00+07:00",
  "endDate": "2026-02-27T00:00:00+07:00",
  "expectedRevenue": 0.0,
  "budgetedCost": 0.0,
  "actualCost": 0.0,
  "expectedResponseRate": 0.0,
  "actualResponseRate": 0.0,
  "note": "string",
  "ownerId": "00000000-0000-0000-0000-000000000000",
  "ownerName": "string",
  "orgUnitId": "00000000-0000-0000-0000-000000000000",
  "orgUnitName": "string"
}
Example cURL copy/paste
curl --location --request PUT 'https://api.crmtop.vn/api/v1/campaign/update'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "code": "string", "name": "string", "type": 1, "status": 1, "startDate": "2026-02-27T00:00:00+07:00", "endDate": "2026-02-27T00:00:00+07:00", "expectedRevenue": 0.0, "budgetedCost": 0.0, "actualCost": 0.0, "expectedResponseRate": 0.0, "actualResponseRate": 0.0, "note": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "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
}

Contact
Danh sách endpoints thuộc nhóm Contact (theo Swagger tag).
POST

Thêm mới liên hệ

/api/v1/contact/create
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/contact/create
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaAddOrEditContactRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "customerId": "00000000-0000-0000-0000-000000000000",
  "customerName": "string",
  "code": "string",
  "fullName": "string",
  "position": "string",
  "department": "string",
  "phone": "string",
  "email": "string",
  "gender": 1,
  "birthday": "2026-02-27T00:00:00+07:00",
  "nationalId": "string",
  "address": "string",
  "status": "string",
  "isPrimary": true,
  "note": "string",
  "ownerId": "00000000-0000-0000-0000-000000000000",
  "ownerName": "string",
  "orgUnitId": "00000000-0000-0000-0000-000000000000",
  "orgUnitName": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/contact/create'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "customerId": "00000000-0000-0000-0000-000000000000", "customerName": "string", "code": "string", "fullName": "string", "position": "string", "department": "string", "phone": "string", "email": "string", "gender": 1, "birthday": "2026-02-27T00:00:00+07:00", "nationalId": "string", "address": "string", "status": "string", "isPrimary": true, "note": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "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
}

DELETE

Xóa liên hệ

/api/v1/contact/delete/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/contact/delete/{id}
MethodDELETE
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request DELETE 'https://api.crmtop.vn/api/v1/contact/delete/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

GET

Lấy thông tin liên hệ

/api/v1/contact/get/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/contact/get/{id}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/contact/get/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: AddOrEditContactRequest
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "customerId": "00000000-0000-0000-0000-000000000000",
    "customerName": "string",
    "code": "string",
    "fullName": "string",
    "position": "string",
    "department": "string",
    "phone": "string",
    "email": "string",
    "gender": 1,
    "birthday": "2026-02-27T00:00:00+07:00",
    "nationalId": "string",
    "address": "string",
    "status": "string",
    "isPrimary": true,
    "note": "string",
    "ownerId": "00000000-0000-0000-0000-000000000000",
    "ownerName": "string",
    "orgUnitId": "00000000-0000-0000-0000-000000000000",
    "orgUnitName": "string"
  },
  "errors": null,
  "meta": null
}

POST

Tìm kiếm liên hệ

/api/v1/contact/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/contact/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSearchContactRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string",
  "customerId": "00000000-0000-0000-0000-000000000000",
  "code": "string",
  "fullName": "string",
  "email": "string",
  "phone": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/contact/search'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string", "customerId": "00000000-0000-0000-0000-000000000000", "code": "string", "fullName": "string", "email": "string", "phone": "string"}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: SearchContactDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

PUT

Cập nhật liên hệ

/api/v1/contact/update
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/contact/update
MethodPUT
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaAddOrEditContactRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "customerId": "00000000-0000-0000-0000-000000000000",
  "customerName": "string",
  "code": "string",
  "fullName": "string",
  "position": "string",
  "department": "string",
  "phone": "string",
  "email": "string",
  "gender": 1,
  "birthday": "2026-02-27T00:00:00+07:00",
  "nationalId": "string",
  "address": "string",
  "status": "string",
  "isPrimary": true,
  "note": "string",
  "ownerId": "00000000-0000-0000-0000-000000000000",
  "ownerName": "string",
  "orgUnitId": "00000000-0000-0000-0000-000000000000",
  "orgUnitName": "string"
}
Example cURL copy/paste
curl --location --request PUT 'https://api.crmtop.vn/api/v1/contact/update'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "customerId": "00000000-0000-0000-0000-000000000000", "customerName": "string", "code": "string", "fullName": "string", "position": "string", "department": "string", "phone": "string", "email": "string", "gender": 1, "birthday": "2026-02-27T00:00:00+07:00", "nationalId": "string", "address": "string", "status": "string", "isPrimary": true, "note": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "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
}

Customer
Danh sách endpoints thuộc nhóm Customer (theo Swagger tag).
POST

Thêm mới khách hàng

/api/v1/customer/create
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/customer/create
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaAddOrEditCustomerRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "code": "string",
  "name": "string",
  "type": 1,
  "taxCode": "string",
  "businessType": "string",
  "groupId": "00000000-0000-0000-0000-000000000000",
  "groupName": "string",
  "phone": "string",
  "email": "string",
  "website": "string",
  "address": "string",
  "note": "string",
  "ownerId": "00000000-0000-0000-0000-000000000000",
  "ownerName": "string",
  "orgUnitId": "00000000-0000-0000-0000-000000000000",
  "orgUnitName": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/customer/create'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "code": "string", "name": "string", "type": 1, "taxCode": "string", "businessType": "string", "groupId": "00000000-0000-0000-0000-000000000000", "groupName": "string", "phone": "string", "email": "string", "website": "string", "address": "string", "note": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "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
}

DELETE

Xóa khách hàng

/api/v1/customer/delete/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/customer/delete/{id}
MethodDELETE
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request DELETE 'https://api.crmtop.vn/api/v1/customer/delete/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

GET

Lấy thông tin khách hàng

/api/v1/customer/get/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/customer/get/{id}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/customer/get/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: AddOrEditCustomerRequest
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "code": "string",
    "name": "string",
    "type": 1,
    "taxCode": "string",
    "businessType": "string",
    "groupId": "00000000-0000-0000-0000-000000000000",
    "groupName": "string",
    "phone": "string",
    "email": "string",
    "website": "string",
    "address": "string",
    "note": "string",
    "ownerId": "00000000-0000-0000-0000-000000000000",
    "ownerName": "string",
    "orgUnitId": "00000000-0000-0000-0000-000000000000",
    "orgUnitName": "string"
  },
  "errors": null,
  "meta": null
}

POST

Thêm nhóm khách hàng

/api/v1/customer/group/create
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/customer/group/create
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSaveCustomerGroupRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "name": "string",
  "note": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/customer/group/create'
  --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

Tìm kiếm nhóm khách hàng

/api/v1/customer/group/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/customer/group/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSearchCustomerGroupRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/customer/group/search'
  --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: CustomerGroupDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

PUT

Cập nhật nhóm khách hàng

/api/v1/customer/group/update
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/customer/group/update
MethodPUT
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSaveCustomerGroupRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "name": "string",
  "note": "string"
}
Example cURL copy/paste
curl --location --request PUT 'https://api.crmtop.vn/api/v1/customer/group/update'
  --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
}

DELETE

Xóa nhóm khách hàng

/api/v1/customer/group/delete/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/customer/group/delete/{id}
MethodDELETE
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request DELETE 'https://api.crmtop.vn/api/v1/customer/group/delete/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

POST

Tìm kiếm khách hàng

/api/v1/customer/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/customer/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSearchCustomerRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string",
  "groupId": "00000000-0000-0000-0000-000000000000",
  "code": "string",
  "name": "string",
  "email": "string",
  "phone": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/customer/search'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string", "groupId": "00000000-0000-0000-0000-000000000000", "code": "string", "name": "string", "email": "string", "phone": "string"}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: SearchCustomerDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

PUT

Cập nhật khách hàng

/api/v1/customer/update
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/customer/update
MethodPUT
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaAddOrEditCustomerRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "code": "string",
  "name": "string",
  "type": 1,
  "taxCode": "string",
  "businessType": "string",
  "groupId": "00000000-0000-0000-0000-000000000000",
  "groupName": "string",
  "phone": "string",
  "email": "string",
  "website": "string",
  "address": "string",
  "note": "string",
  "ownerId": "00000000-0000-0000-0000-000000000000",
  "ownerName": "string",
  "orgUnitId": "00000000-0000-0000-0000-000000000000",
  "orgUnitName": "string"
}
Example cURL copy/paste
curl --location --request PUT 'https://api.crmtop.vn/api/v1/customer/update'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "code": "string", "name": "string", "type": 1, "taxCode": "string", "businessType": "string", "groupId": "00000000-0000-0000-0000-000000000000", "groupName": "string", "phone": "string", "email": "string", "website": "string", "address": "string", "note": "string", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "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
}

Lead
Danh sách endpoints thuộc nhóm Lead (theo Swagger tag).
GET

Chuyển đổi khách hàng tiềm năng

/api/v1/lead/convert/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/lead/convert/{id}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/lead/convert/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

POST

Thêm mới khách hàng tiềm năng

/api/v1/lead/create
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/lead/create
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaAddOrEditLeadRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "source": 1,
  "status": 1,
  "fullName": "string",
  "email": "string",
  "phone": "string",
  "company": "string",
  "position": "string",
  "industry": 1,
  "rating": 1,
  "probability": 0,
  "notes": "string",
  "assignedTo": 0,
  "ownerId": "00000000-0000-0000-0000-000000000000",
  "ownerName": "string",
  "orgUnitId": "00000000-0000-0000-0000-000000000000",
  "orgUnitName": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/lead/create'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "source": 1, "status": 1, "fullName": "string", "email": "string", "phone": "string", "company": "string", "position": "string", "industry": 1, "rating": 1, "probability": 0, "notes": "string", "assignedTo": 0, "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "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
}

DELETE

Xóa khách hàng tiềm năng

/api/v1/lead/delete/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/lead/delete/{id}
MethodDELETE
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request DELETE 'https://api.crmtop.vn/api/v1/lead/delete/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

GET

Lấy thông tin khách hàng tiềm năng

/api/v1/lead/get/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/lead/get/{id}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/lead/get/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: AddOrEditLeadRequest
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "source": 1,
    "status": 1,
    "fullName": "string",
    "email": "string",
    "phone": "string",
    "company": "string",
    "position": "string",
    "industry": 1,
    "rating": 1,
    "probability": 0,
    "notes": "string",
    "assignedTo": 0,
    "ownerId": "00000000-0000-0000-0000-000000000000",
    "ownerName": "string",
    "orgUnitId": "00000000-0000-0000-0000-000000000000",
    "orgUnitName": "string"
  },
  "errors": null,
  "meta": null
}

POST

Tìm kiếm khách hàng tiềm năng

/api/v1/lead/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/lead/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSearchLeadRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string",
  "fullName": "string",
  "email": "string",
  "phone": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/lead/search'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string", "fullName": "string", "email": "string", "phone": "string"}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: SearchLeadDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

PUT

Cập nhật khách hàng tiềm năng

/api/v1/lead/update
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/lead/update
MethodPUT
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaAddOrEditLeadRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "source": 1,
  "status": 1,
  "fullName": "string",
  "email": "string",
  "phone": "string",
  "company": "string",
  "position": "string",
  "industry": 1,
  "rating": 1,
  "probability": 0,
  "notes": "string",
  "assignedTo": 0,
  "ownerId": "00000000-0000-0000-0000-000000000000",
  "ownerName": "string",
  "orgUnitId": "00000000-0000-0000-0000-000000000000",
  "orgUnitName": "string"
}
Example cURL copy/paste
curl --location --request PUT 'https://api.crmtop.vn/api/v1/lead/update'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "source": 1, "status": 1, "fullName": "string", "email": "string", "phone": "string", "company": "string", "position": "string", "industry": 1, "rating": 1, "probability": 0, "notes": "string", "assignedTo": 0, "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "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
}

MaktEmail
Danh sách endpoints thuộc nhóm MaktEmail (theo Swagger tag).
POST

Thêm mới email marketing

/api/v1/maktemail/create
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/maktemail/create
MethodPOST
Content-Typemultipart/form-data
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Idqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
Codequeryfalsestring
string
Namequeryfalsestring
string
Descriptionqueryfalsestring
string
Subjectqueryfalsestring
string
SupplierqueryfalseEmailSupplier
1
Fromqueryfalsestring
string
DisplayNamequeryfalsestring
string
TemplateIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
TemplateNamequeryfalsestring
string
SendTypequeryfalseEmailSendType
1
SegmentIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
SegmentNamequeryfalsestring
string
FilePathqueryfalsestring
string
StatusqueryfalseMarketingStatus
1
AppointmentDatequeryfalsestring(date-time)
2026-02-27T00:00:00+07:00
Request body schema + JSON
Requiredfalse
Content-Typemultipart/form-data
Schemaobject
{
  "FormFile": "<binary>"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/maktemail/create'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --form 'FormFile=@<file>'
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
}

DELETE

Xóa email marketing

/api/v1/maktemail/delete/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/maktemail/delete/{id}
MethodDELETE
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request DELETE 'https://api.crmtop.vn/api/v1/maktemail/delete/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

GET

Lấy thông tin email marketing

/api/v1/maktemail/get/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/maktemail/get/{id}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/maktemail/get/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: AddOrEditMaktEmailRequest
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "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",
    "formFile": "<binary>"
  },
  "errors": null,
  "meta": null
}

POST

Tìm kiếm email marketing

/api/v1/maktemail/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/maktemail/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSearchMaktEmailRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string",
  "status": 1,
  "supplier": 1
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/maktemail/search'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string", "status": 1, "supplier": 1}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: SearchMaktEmailDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

PUT

Cập nhật email marketing

/api/v1/maktemail/update
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/maktemail/update
MethodPUT
Content-Typemultipart/form-data
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Idqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
Codequeryfalsestring
string
Namequeryfalsestring
string
Descriptionqueryfalsestring
string
Subjectqueryfalsestring
string
SupplierqueryfalseEmailSupplier
1
Fromqueryfalsestring
string
DisplayNamequeryfalsestring
string
TemplateIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
TemplateNamequeryfalsestring
string
SendTypequeryfalseEmailSendType
1
SegmentIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
SegmentNamequeryfalsestring
string
FilePathqueryfalsestring
string
StatusqueryfalseMarketingStatus
1
AppointmentDatequeryfalsestring(date-time)
2026-02-27T00:00:00+07:00
Request body schema + JSON
Requiredfalse
Content-Typemultipart/form-data
Schemaobject
{
  "FormFile": "<binary>"
}
Example cURL copy/paste
curl --location --request PUT 'https://api.crmtop.vn/api/v1/maktemail/update'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --form 'FormFile=@<file>'
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
}

MaktZalo
Danh sách endpoints thuộc nhóm MaktZalo (theo Swagger tag).
POST

Thêm mới zalo marketing

/api/v1/maktzalo/create
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/maktzalo/create
MethodPOST
Content-Typemultipart/form-data
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Idqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
Codequeryfalsestring
string
Namequeryfalsestring
string
Descriptionqueryfalsestring
string
ChannelqueryfalseMaktZaloChannel
1
SocialIdqueryfalsestring
string
SocialNamequeryfalsestring
string
ZnsTemplateIdqueryfalsestring
string
ZnsTemplateNamequeryfalsestring
string
ZnsTemplateParamqueryfalsestring
string
ZnsTemplatePreviewUrlqueryfalsestring
string
ZnsTemplatePricequeryfalsenumber(double)
0.0
SmsTemplateIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
SmsTemplateNamequeryfalsestring
string
SmsTemplateParamqueryfalsestring
string
SendTypequeryfalseEmailSendType
1
SegmentIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
SegmentNamequeryfalsestring
string
FilePathqueryfalsestring
string
ExcelHeaderqueryfalsestring
string
StatusqueryfalseMarketingStatus
1
AppointmentDatequeryfalsestring(date-time)
2026-02-27T00:00:00+07:00
Request body schema + JSON
Requiredfalse
Content-Typemultipart/form-data
Schemaobject
{
  "FormFile": "<binary>"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/maktzalo/create'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --form 'FormFile=@<file>'
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
}

DELETE

Xóa zalo marketing

/api/v1/maktzalo/delete/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/maktzalo/delete/{id}
MethodDELETE
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request DELETE 'https://api.crmtop.vn/api/v1/maktzalo/delete/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

GET

Lấy thông tin zalo marketing

/api/v1/maktzalo/get/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/maktzalo/get/{id}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/maktzalo/get/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: AddOrEditMaktZaloRequest
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "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",
    "formFile": "<binary>",
    "filePath": "string",
    "excelHeader": "string",
    "status": 1,
    "appointmentDate": "2026-02-27T00:00:00+07:00"
  },
  "errors": null,
  "meta": null
}

POST

Tìm kiếm zalo marketing

/api/v1/maktzalo/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/maktzalo/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSearchMaktZaloRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string",
  "status": 1
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/maktzalo/search'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string", "status": 1}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: SearchMaktZaloDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

PUT

Cập nhật zalo marketing

/api/v1/maktzalo/update
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/maktzalo/update
MethodPUT
Content-Typemultipart/form-data
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Idqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
Codequeryfalsestring
string
Namequeryfalsestring
string
Descriptionqueryfalsestring
string
ChannelqueryfalseMaktZaloChannel
1
SocialIdqueryfalsestring
string
SocialNamequeryfalsestring
string
ZnsTemplateIdqueryfalsestring
string
ZnsTemplateNamequeryfalsestring
string
ZnsTemplateParamqueryfalsestring
string
ZnsTemplatePreviewUrlqueryfalsestring
string
ZnsTemplatePricequeryfalsenumber(double)
0.0
SmsTemplateIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
SmsTemplateNamequeryfalsestring
string
SmsTemplateParamqueryfalsestring
string
SendTypequeryfalseEmailSendType
1
SegmentIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
SegmentNamequeryfalsestring
string
FilePathqueryfalsestring
string
ExcelHeaderqueryfalsestring
string
StatusqueryfalseMarketingStatus
1
AppointmentDatequeryfalsestring(date-time)
2026-02-27T00:00:00+07:00
Request body schema + JSON
Requiredfalse
Content-Typemultipart/form-data
Schemaobject
{
  "FormFile": "<binary>"
}
Example cURL copy/paste
curl --location --request PUT 'https://api.crmtop.vn/api/v1/maktzalo/update'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --form 'FormFile=@<file>'
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
}

Opportunity
Danh sách endpoints thuộc nhóm Opportunity (theo Swagger tag).
POST

Thêm mới cơ hội

/api/v1/opportunity/create
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/opportunity/create
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaAddOrEditOpportunityRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "code": "string",
  "name": "string",
  "description": "string",
  "customerId": "00000000-0000-0000-0000-000000000000",
  "customerName": "string",
  "contactId": "00000000-0000-0000-0000-000000000000",
  "contactName": "string",
  "leadId": "00000000-0000-0000-0000-000000000000",
  "leadName": "string",
  "amount": 0.0,
  "currency": "string",
  "probability": 0.0,
  "stage": 1,
  "priority": 1,
  "source": "string",
  "expectedCloseDate": "2026-02-27T00:00:00+07:00",
  "actualCloseDate": "2026-02-27T00:00:00+07:00",
  "ownerId": "00000000-0000-0000-0000-000000000000",
  "ownerName": "string",
  "orgUnitId": "00000000-0000-0000-0000-000000000000",
  "orgUnitName": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/opportunity/create'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "code": "string", "name": "string", "description": "string", "customerId": "00000000-0000-0000-0000-000000000000", "customerName": "string", "contactId": "00000000-0000-0000-0000-000000000000", "contactName": "string", "leadId": "00000000-0000-0000-0000-000000000000", "leadName": "string", "amount": 0.0, "currency": "string", "probability": 0.0, "stage": 1, "priority": 1, "source": "string", "expectedCloseDate": "2026-02-27T00:00:00+07:00", "actualCloseDate": "2026-02-27T00:00:00+07:00", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "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
}

DELETE

Xóa cơ hội

/api/v1/opportunity/delete/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/opportunity/delete/{id}
MethodDELETE
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request DELETE 'https://api.crmtop.vn/api/v1/opportunity/delete/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

GET

Lấy thông tin cơ hội

/api/v1/opportunity/get/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/opportunity/get/{id}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/opportunity/get/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: AddOrEditOpportunityRequest
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "code": "string",
    "name": "string",
    "description": "string",
    "customerId": "00000000-0000-0000-0000-000000000000",
    "customerName": "string",
    "contactId": "00000000-0000-0000-0000-000000000000",
    "contactName": "string",
    "leadId": "00000000-0000-0000-0000-000000000000",
    "leadName": "string",
    "amount": 0.0,
    "currency": "string",
    "probability": 0.0,
    "stage": 1,
    "priority": 1,
    "source": "string",
    "expectedCloseDate": "2026-02-27T00:00:00+07:00",
    "actualCloseDate": "2026-02-27T00:00:00+07:00",
    "ownerId": "00000000-0000-0000-0000-000000000000",
    "ownerName": "string",
    "orgUnitId": "00000000-0000-0000-0000-000000000000",
    "orgUnitName": "string"
  },
  "errors": null,
  "meta": null
}

POST

Tìm kiếm cơ hội

/api/v1/opportunity/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/opportunity/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSearchOpportunityRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string",
  "customerId": "00000000-0000-0000-0000-000000000000",
  "customerName": "string",
  "contactId": "00000000-0000-0000-0000-000000000000",
  "contactName": "string",
  "leadId": "00000000-0000-0000-0000-000000000000",
  "leadName": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/opportunity/search'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string", "customerId": "00000000-0000-0000-0000-000000000000", "customerName": "string", "contactId": "00000000-0000-0000-0000-000000000000", "contactName": "string", "leadId": "00000000-0000-0000-0000-000000000000", "leadName": "string"}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: SearchOpportunityDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

PUT

Cập nhật cơ hội

/api/v1/opportunity/update
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/opportunity/update
MethodPUT
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaAddOrEditOpportunityRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "code": "string",
  "name": "string",
  "description": "string",
  "customerId": "00000000-0000-0000-0000-000000000000",
  "customerName": "string",
  "contactId": "00000000-0000-0000-0000-000000000000",
  "contactName": "string",
  "leadId": "00000000-0000-0000-0000-000000000000",
  "leadName": "string",
  "amount": 0.0,
  "currency": "string",
  "probability": 0.0,
  "stage": 1,
  "priority": 1,
  "source": "string",
  "expectedCloseDate": "2026-02-27T00:00:00+07:00",
  "actualCloseDate": "2026-02-27T00:00:00+07:00",
  "ownerId": "00000000-0000-0000-0000-000000000000",
  "ownerName": "string",
  "orgUnitId": "00000000-0000-0000-0000-000000000000",
  "orgUnitName": "string"
}
Example cURL copy/paste
curl --location --request PUT 'https://api.crmtop.vn/api/v1/opportunity/update'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "code": "string", "name": "string", "description": "string", "customerId": "00000000-0000-0000-0000-000000000000", "customerName": "string", "contactId": "00000000-0000-0000-0000-000000000000", "contactName": "string", "leadId": "00000000-0000-0000-0000-000000000000", "leadName": "string", "amount": 0.0, "currency": "string", "probability": 0.0, "stage": 1, "priority": 1, "source": "string", "expectedCloseDate": "2026-02-27T00:00:00+07:00", "actualCloseDate": "2026-02-27T00:00:00+07:00", "ownerId": "00000000-0000-0000-0000-000000000000", "ownerName": "string", "orgUnitId": "00000000-0000-0000-0000-000000000000", "orgUnitName": "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
}

Order
Danh sách endpoints thuộc nhóm Order (theo Swagger tag).
POST

Xác thực đơn hàng

/api/v1/order/crm/approve
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/order/crm/approve
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaApproveOrderRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "approve": true,
  "note": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/order/crm/approve'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "approve": true, "note": "string"}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

POST

Thêm đơn hàng

/api/v1/order/crm/create
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/order/crm/create
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSaveOrderRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "code": "string",
  "customerId": "00000000-0000-0000-0000-000000000000",
  "customerName": "string",
  "orderDate": "2026-02-27T00:00:00+07:00",
  "dueDate": "2026-02-27T00:00:00+07:00",
  "totalAmount": 0.0,
  "taxAmount": 0.0,
  "discountAmount": 0.0,
  "status": 1,
  "approved": true,
  "note": "string",
  "receiverName": "string",
  "receiverPhone": "string",
  "receiverEmail": "string",
  "receiverAddress": "string",
  "products": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/order/crm/create'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "code": "string", "customerId": "00000000-0000-0000-0000-000000000000", "customerName": "string", "orderDate": "2026-02-27T00:00:00+07:00", "dueDate": "2026-02-27T00:00:00+07:00", "totalAmount": 0.0, "taxAmount": 0.0, "discountAmount": 0.0, "status": 1, "approved": true, "note": "string", "receiverName": "string", "receiverPhone": "string", "receiverEmail": "string", "receiverAddress": "string", "products": "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
}

DELETE

Xoá đơn hàng

/api/v1/order/crm/delete/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/order/crm/delete/{id}
MethodDELETE
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request DELETE 'https://api.crmtop.vn/api/v1/order/crm/delete/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

GET

Lấy thông tin đơn hàng

/api/v1/order/crm/get/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/order/crm/get/{id}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/order/crm/get/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: SaveOrderRequest
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "code": "string",
    "customerId": "00000000-0000-0000-0000-000000000000",
    "customerName": "string",
    "orderDate": "2026-02-27T00:00:00+07:00",
    "dueDate": "2026-02-27T00:00:00+07:00",
    "totalAmount": 0.0,
    "taxAmount": 0.0,
    "discountAmount": 0.0,
    "status": 1,
    "approved": true,
    "note": "string",
    "receiverName": "string",
    "receiverPhone": "string",
    "receiverEmail": "string",
    "receiverAddress": "string",
    "products": "string"
  },
  "errors": null,
  "meta": null
}

POST

In 8cm đơn hàng

/api/v1/order/crm/print-8cm
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/order/crm/print-8cm
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaCrmPrint8cmOrderRequest
{
  "ids": [
    "00000000-0000-0000-0000-000000000000"
  ]
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/order/crm/print-8cm'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"ids": ["00000000-0000-0000-0000-000000000000"]}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: string
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": "string",
  "errors": null,
  "meta": null
}

POST

In A4 đơn hàng

/api/v1/order/crm/print-a4
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/order/crm/print-a4
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaCrmPrintA4OrderRequest
{
  "ids": [
    "00000000-0000-0000-0000-000000000000"
  ]
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/order/crm/print-a4'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"ids": ["00000000-0000-0000-0000-000000000000"]}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: string
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": "string",
  "errors": null,
  "meta": null
}

POST

Tìm kiếm đơn hàng

/api/v1/order/crm/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/order/crm/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaPagingOrderRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string",
  "approved": true,
  "status": 1,
  "customerId": "00000000-0000-0000-0000-000000000000",
  "fieldDate": "string",
  "from": "2026-02-27T00:00:00+07:00",
  "to": "2026-02-27T00:00:00+07:00"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/order/crm/search'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string", "approved": true, "status": 1, "customerId": "00000000-0000-0000-0000-000000000000", "fieldDate": "string", "from": "2026-02-27T00:00:00+07:00", "to": "2026-02-27T00:00:00+07:00"}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: PagingOrderDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

PUT

Cập nhật đơn hàng

/api/v1/order/crm/update
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/order/crm/update
MethodPUT
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSaveOrderRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "code": "string",
  "customerId": "00000000-0000-0000-0000-000000000000",
  "customerName": "string",
  "orderDate": "2026-02-27T00:00:00+07:00",
  "dueDate": "2026-02-27T00:00:00+07:00",
  "totalAmount": 0.0,
  "taxAmount": 0.0,
  "discountAmount": 0.0,
  "status": 1,
  "approved": true,
  "note": "string",
  "receiverName": "string",
  "receiverPhone": "string",
  "receiverEmail": "string",
  "receiverAddress": "string",
  "products": "string"
}
Example cURL copy/paste
curl --location --request PUT 'https://api.crmtop.vn/api/v1/order/crm/update'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "code": "string", "customerId": "00000000-0000-0000-0000-000000000000", "customerName": "string", "orderDate": "2026-02-27T00:00:00+07:00", "dueDate": "2026-02-27T00:00:00+07:00", "totalAmount": 0.0, "taxAmount": 0.0, "discountAmount": 0.0, "status": 1, "approved": true, "note": "string", "receiverName": "string", "receiverPhone": "string", "receiverEmail": "string", "receiverAddress": "string", "products": "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
}

Product
Danh sách endpoints thuộc nhóm Product (theo Swagger tag).
POST

Thêm sản phẩm

/api/v1/product/crm/create
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/product/crm/create
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSaveProductRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "code": "string",
  "name": "string",
  "groupId": 0,
  "groupName": "string",
  "unitId": 0,
  "unitName": "string",
  "importPrice": 0.0,
  "retailPrice": 0.0,
  "wholesalePrice": 0.0,
  "config": "string",
  "note": "string",
  "image": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/product/crm/create'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "code": "string", "name": "string", "groupId": 0, "groupName": "string", "unitId": 0, "unitName": "string", "importPrice": 0.0, "retailPrice": 0.0, "wholesalePrice": 0.0, "config": "string", "note": "string", "image": "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
}

DELETE

Xoá sản phẩm

/api/v1/product/crm/delete/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/product/crm/delete/{id}
MethodDELETE
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request DELETE 'https://api.crmtop.vn/api/v1/product/crm/delete/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

GET

Lấy thông tin sản phẩm

/api/v1/product/crm/get/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/product/crm/get/{id}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/product/crm/get/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: SaveProductRequest
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "code": "string",
    "name": "string",
    "groupId": 0,
    "groupName": "string",
    "unitId": 0,
    "unitName": "string",
    "importPrice": 0.0,
    "retailPrice": 0.0,
    "wholesalePrice": 0.0,
    "config": "string",
    "note": "string",
    "image": "string"
  },
  "errors": null,
  "meta": null
}

POST

Cập nhật đơn vị của sản phẩm

/api/v1/product/crm/multi-unit/save
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/product/crm/multi-unit/save
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSaveProductMuiltiUnitRequest
{
  "units": [
    null
  ]
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/product/crm/multi-unit/save'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"units": [null]}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

GET

Danh sách đơn vị của sản phẩm

/api/v1/product/crm/multi-unit/{productId}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/product/crm/multi-unit/{productId}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
productIdpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/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: array
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": [
    {
      "id": "00000000-0000-0000-0000-000000000000",
      "productId": "00000000-0000-0000-0000-000000000000",
      "unitId": 0,
      "unitName": "string",
      "unitRate": 0.0,
      "importPrice": 0.0,
      "retailPrice": 0.0,
      "wholesalePrice": 0.0,
      "note": "string",
      "entityState": null
    }
  ],
  "errors": null,
  "meta": null
}

POST

Tìm kiếm sản phẩm

/api/v1/product/crm/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/product/crm/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaPagingProductRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/product/crm/search'
  --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: PagingProductDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

POST

Cập nhật đươn vị

/api/v1/product/crm/unit/create
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/product/crm/unit/create
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSaveUnitRequest
{
  "id": 0,
  "name": "string",
  "note": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/product/crm/unit/create'
  --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
}

PUT

Cập nhật sản phẩm

/api/v1/product/crm/update
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/product/crm/update
MethodPUT
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSaveProductRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "code": "string",
  "name": "string",
  "groupId": 0,
  "groupName": "string",
  "unitId": 0,
  "unitName": "string",
  "importPrice": 0.0,
  "retailPrice": 0.0,
  "wholesalePrice": 0.0,
  "config": "string",
  "note": "string",
  "image": "string"
}
Example cURL copy/paste
curl --location --request PUT 'https://api.crmtop.vn/api/v1/product/crm/update'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "code": "string", "name": "string", "groupId": 0, "groupName": "string", "unitId": 0, "unitName": "string", "importPrice": 0.0, "retailPrice": 0.0, "wholesalePrice": 0.0, "config": "string", "note": "string", "image": "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
}

Segment
Danh sách endpoints thuộc nhóm Segment (theo Swagger tag).
POST

Thêm mới segment

/api/v1/segment/create
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/segment/create
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaAddOrEditSegmentRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "name": "string",
  "description": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/segment/create'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "name": "string", "description": "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
}

DELETE

Xóa segment

/api/v1/segment/delete/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/segment/delete/{id}
MethodDELETE
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request DELETE 'https://api.crmtop.vn/api/v1/segment/delete/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

GET

Lấy thông tin segment

/api/v1/segment/get/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/segment/get/{id}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/segment/get/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: SearchSegmentDto
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "name": "string",
    "totalMember": 0,
    "description": "string",
    "createdBy": "00000000-0000-0000-0000-000000000000",
    "createdByName": "string",
    "createdOn": "2026-02-27T00:00:00+07:00"
  },
  "errors": null,
  "meta": null
}

POST

Thêm thành viên trong segment

/api/v1/segment/member/add
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/segment/member/add
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaAddSegMemberRequest
{
  "segmentId": "00000000-0000-0000-0000-000000000000",
  "type": 1,
  "ids": [
    "00000000-0000-0000-0000-000000000000"
  ],
  "maktReports": [
    null
  ]
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/segment/member/add'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"segmentId": "00000000-0000-0000-0000-000000000000", "type": 1, "ids": ["00000000-0000-0000-0000-000000000000"], "maktReports": [null]}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

POST

Xóa thành viên trong segment

/api/v1/segment/member/delete
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/segment/member/delete
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaDeleteSegMemberRequest
{
  "segmentId": "00000000-0000-0000-0000-000000000000",
  "ids": [
    0
  ]
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/segment/member/delete'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"segmentId": "00000000-0000-0000-0000-000000000000", "ids": [0]}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

POST

Tìm kiếm thành viên trong segment

/api/v1/segment/member/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/segment/member/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSearchSegMemberRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string",
  "segmentId": "00000000-0000-0000-0000-000000000000",
  "type": 1
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/segment/member/search'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string", "segmentId": "00000000-0000-0000-0000-000000000000", "type": 1}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: SearchSegMemberDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

POST

Tìm kiếm segment

/api/v1/segment/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/segment/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSearchSegmentRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/segment/search'
  --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: SearchSegmentDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

PUT

Cập nhật segment

/api/v1/segment/update
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/segment/update
MethodPUT
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaAddOrEditSegmentRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "name": "string",
  "description": "string"
}
Example cURL copy/paste
curl --location --request PUT 'https://api.crmtop.vn/api/v1/segment/update'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "name": "string", "description": "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
}

Template
Danh sách endpoints thuộc nhóm Template (theo Swagger tag).
POST

Thêm mới mẫu

/api/v1/template/create
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/template/create
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaAddOrEditTemplateRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "type": 1,
  "name": "string",
  "content": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/template/create'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "type": 1, "name": "string", "content": "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
}

DELETE

Xóa mẫu

/api/v1/template/delete/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/template/delete/{id}
MethodDELETE
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request DELETE 'https://api.crmtop.vn/api/v1/template/delete/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

GET

Lấy thông tin mẫu

/api/v1/template/get/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/template/get/{id}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/template/get/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: AddOrEditTemplateRequest
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "id": "00000000-0000-0000-0000-000000000000",
    "type": 1,
    "name": "string",
    "content": "string"
  },
  "errors": null,
  "meta": null
}

POST

Tìm kiếm mẫu

/api/v1/template/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/template/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSearchTemplateRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string",
  "type": 1
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/template/search'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string", "type": 1}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: SearchTemplateDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

PUT

Cập nhật mẫu

/api/v1/template/update
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/template/update
MethodPUT
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaAddOrEditTemplateRequest
{
  "id": "00000000-0000-0000-0000-000000000000",
  "type": 1,
  "name": "string",
  "content": "string"
}
Example cURL copy/paste
curl --location --request PUT 'https://api.crmtop.vn/api/v1/template/update'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"id": "00000000-0000-0000-0000-000000000000", "type": 1, "name": "string", "content": "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
}

Ticket
Danh sách endpoints thuộc nhóm Ticket (theo Swagger tag).
GET

Cập nhật trạng thái ticket (1: Tiếp nhận, 2: Thực hiện, 3: Hoàn thành, 4: Huỷ)

/api/v1/ticket/change/status/{id}/{status}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/ticket/change/status/{id}/{status}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
statuspathtrueTicketStatus
1
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/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: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

POST

Danh sách tin nhắn trong ticket

/api/v1/ticket/comment/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/ticket/comment/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSearchCommentRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string",
  "ticketId": "00000000-0000-0000-0000-000000000000",
  "tenantCode": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/ticket/comment/search'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string", "ticketId": "00000000-0000-0000-0000-000000000000", "tenantCode": "string"}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: TicketCommentDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

POST

Thêm mới ticket

/api/v1/ticket/create
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/ticket/create
MethodPOST
Content-Typemultipart/form-data
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Idqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
Codequeryfalsestring
string
Subjectqueryfalsestring
string
Descriptionqueryfalsestring
string
TypeIdqueryfalseinteger(int32)
0
TypeNamequeryfalsestring
string
PriorityqueryfalseTicketPriority
1
StatusqueryfalseTicketStatus
1
ChannelqueryfalseTicketChannel
1
CustomerIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
CustomerNamequeryfalsestring
string
ContactIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
ContactNamequeryfalsestring
string
ProductIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
ProductNamequeryfalsestring
string
OrderIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
OrderCodequeryfalsestring
string
OwnerIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
OwnerNamequeryfalsestring
string
OrgUnitIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
OrgUnitNamequeryfalsestring
string
CreatedOnqueryfalsestring(date-time)
2026-02-27T00:00:00+07:00
Request body schema + JSON
Requiredfalse
Content-Typemultipart/form-data
Schemaobject
{
  "FormFiles": [
    "<binary>"
  ]
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/ticket/create'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --form 'FormFile=@<file>'
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
}

DELETE

Xóa ticket

/api/v1/ticket/delete/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/ticket/delete/{id}
MethodDELETE
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request DELETE 'https://api.crmtop.vn/api/v1/ticket/delete/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

GET

Lấy thông tin ticket

/api/v1/ticket/get/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/ticket/get/{id}
MethodGET
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtruestring(uuid)
00000000-0000-0000-0000-000000000000
Example cURL copy/paste
curl --location --request GET 'https://api.crmtop.vn/api/v1/ticket/get/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: AddOrEditTicketRequest
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "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",
    "formFiles": [
      "<binary>"
    ]
  },
  "errors": null,
  "meta": null
}

POST

Tìm kiếm ticket

/api/v1/ticket/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/ticket/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSearchTicketRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string",
  "typeId": 0,
  "priority": 1,
  "status": 1,
  "channel": 1,
  "customerId": "00000000-0000-0000-0000-000000000000",
  "contactId": "00000000-0000-0000-0000-000000000000",
  "productId": "00000000-0000-0000-0000-000000000000",
  "orderId": "00000000-0000-0000-0000-000000000000",
  "fieldDate": "string",
  "from": "2026-02-27T00:00:00+07:00",
  "to": "2026-02-27T00:00:00+07:00",
  "ownerId": "00000000-0000-0000-0000-000000000000",
  "orgUnitId": "00000000-0000-0000-0000-000000000000"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/ticket/search'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --header 'Content-Type: application/json'
  --data-raw '{"pageNumber": 0, "pageSize": 0, "search": "string", "typeId": 0, "priority": 1, "status": 1, "channel": 1, "customerId": "00000000-0000-0000-0000-000000000000", "contactId": "00000000-0000-0000-0000-000000000000", "productId": "00000000-0000-0000-0000-000000000000", "orderId": "00000000-0000-0000-0000-000000000000", "fieldDate": "string", "from": "2026-02-27T00:00:00+07:00", "to": "2026-02-27T00:00:00+07:00", "ownerId": "00000000-0000-0000-0000-000000000000", "orgUnitId": "00000000-0000-0000-0000-000000000000"}'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: SearchTicketDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

POST

Gửi tin nhắn trong ticket

/api/v1/ticket/send/comment
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/ticket/send/comment
MethodPOST
Content-Typemultipart/form-data
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
TenantCodequeryfalsestring
string
TicketIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
UserIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
UserNamequeryfalsestring
string
Messagequeryfalsestring
string
Request body schema + JSON
Requiredfalse
Content-Typemultipart/form-data
Schemaobject
{
  "FormFiles": [
    "<binary>"
  ]
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/ticket/send/comment'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --form 'FormFile=@<file>'
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

Thêm loại ticket

/api/v1/ticket/type/create
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/ticket/type/create
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaAddOrEditTicketTypeRequest
{
  "id": 0,
  "name": "string",
  "note": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/ticket/type/create'
  --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

Tìm kiếm loại ticket

/api/v1/ticket/type/search
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/ticket/type/search
MethodPOST
Content-Typeapplication/json, text/json, application/*+json
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Request body schema + JSON
Requiredfalse
Content-Typeapplication/json
SchemaSearchTicketTypeRequest
{
  "pageNumber": 0,
  "pageSize": 0,
  "search": "string"
}
Example cURL copy/paste
curl --location --request POST 'https://api.crmtop.vn/api/v1/ticket/type/search'
  --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: SearchTicketTypeDtoPaginationResponse
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": {
    "currentPage": 0,
    "totalPages": 0,
    "totalCount": 0,
    "pageSize": 0,
    "hasPreviousPage": true,
    "hasNextPage": true,
    "data": [
      null
    ]
  },
  "errors": null,
  "meta": null
}

DELETE

Xóa loại ticket

/api/v1/ticket/type/{id}
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/ticket/type/{id}
MethodDELETE
Content-Type(không có / tuỳ)
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
idpathtrueinteger(int32)
0
Example cURL copy/paste
curl --location --request DELETE 'https://api.crmtop.vn/api/v1/ticket/type/{id}'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
Responses HTTP codes + JSON
HTTP 200 — OK
Content-Type: application/json • Schema: boolean
Example JSON
{
  "success": true,
  "code": 200,
  "message": null,
  "data": true,
  "errors": null,
  "meta": null
}

PUT

Cập nhật ticket

/api/v1/ticket/update
Overview HTTP request
URLhttps://api.crmtop.vn/api/v1/ticket/update
MethodPUT
Content-Typemultipart/form-data
Authorization<access_token>
Parameters path/query/header
NameInRequiredTypeDescriptionExample
AuthorizationheadertruestringBearer token cho Public API.
Bearer <access_token>
Idqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
Codequeryfalsestring
string
Subjectqueryfalsestring
string
Descriptionqueryfalsestring
string
TypeIdqueryfalseinteger(int32)
0
TypeNamequeryfalsestring
string
PriorityqueryfalseTicketPriority
1
StatusqueryfalseTicketStatus
1
ChannelqueryfalseTicketChannel
1
CustomerIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
CustomerNamequeryfalsestring
string
ContactIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
ContactNamequeryfalsestring
string
ProductIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
ProductNamequeryfalsestring
string
OrderIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
OrderCodequeryfalsestring
string
OwnerIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
OwnerNamequeryfalsestring
string
OrgUnitIdqueryfalsestring(uuid)
00000000-0000-0000-0000-000000000000
OrgUnitNamequeryfalsestring
string
CreatedOnqueryfalsestring(date-time)
2026-02-27T00:00:00+07:00
Request body schema + JSON
Requiredfalse
Content-Typemultipart/form-data
Schemaobject
{
  "FormFiles": [
    "<binary>"
  ]
}
Example cURL copy/paste
curl --location --request PUT 'https://api.crmtop.vn/api/v1/ticket/update'
  --header 'accept: application/json'
  --header 'Authorization: Bearer <access_token>'
  --form 'FormFile=@<file>'
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
}