service/get.all
POST/extapi/v1/service/get.allGọi qua 360: POST https://partner.quantri360.com/v1/base_service/extapi/v1/service/get.all
Sắp mở. API này đã chạy thật qua 360 và đang được chốt giá — bạn có thể đọc tài liệu và chuẩn bị tích hợp trước.
Mô tả API
Danh sách QUY TRÌNH (service) mà token xem được: mã, tên, nhóm, trường thông tin của phiếu (form), quản lý / người theo dõi, quy tắc chạy. Bước đầu để lấy service_id cho ticket/get.all và service/get.stages.
- Không cần tham số; trả toàn bộ quy trình một lần (phản hồi có thể vài chục KB).
- Phản hồi có
incoming_webhook(mã webhook nhận phiếu từ ngoài) — không chia sẻ công khai.
Request
Địa chỉ
POST https://partner.quantri360.com/v1/base_service/extapi/v1/service/get.all
Xác thực & gian hàng
| Tên | Vị trí | Kiểu | Mẫu | Mô tả |
|---|---|---|---|---|
| Authorization | header | header | Bearer q360_live_ab12cd34_… | Khóa API của brand (tạo ở mục API key). Bắt buộc với mọi request. Brand suy từ key — không truyền mã brand. |
| platform_shop_id | query | string | heradg | Tên kết nối Base Service (GET /v1/platforms). Có thể bỏ khi chỉ nối một token. |
| username | body | string | nguyenvana | API ghi (tạo / sửa / thực thi / chuyển khối / giao người) chạy DƯỚI TÊN người dùng Base này — phải là người có quyền ở khối đó. |
Tham số request
Không có tham số riêng (ngoài tham số chung).
Ví dụ request
curl -s -X POST "https://partner.quantri360.com/v1/base_service/extapi/v1/service/get.all" \
-H "Authorization: Bearer $KEY" \
-H "Content-Type: application/json" \
-d '{}'
Python
import requests
KEY = "q360_live_..." # khóa API của brand
r = requests.post(
"https://partner.quantri360.com/v1/base_service/extapi/v1/service/get.all",
params={},
json={},
headers={"Authorization": f"Bearer {KEY}"},
timeout=60,
)
print(r.status_code)
print(r.json())Node.js
const KEY = 'q360_live_...'; // khóa API của brand
const url = new URL('https://partner.quantri360.com/v1/base_service/extapi/v1/service/get.all');
for (const [k, v] of Object.entries({})) url.searchParams.set(k, typeof v === 'object' ? JSON.stringify(v) : String(v));
const r = await fetch(url, {
method: 'POST',
headers: { Authorization: `Bearer ${KEY}`, 'Content-Type': 'application/json' },
body: JSON.stringify({}),
});
console.log(r.status, await r.json());PHP
<?php
$key = 'q360_live_...'; // khóa API của brand
$url = 'https://partner.quantri360.com/v1/base_service/extapi/v1/service/get.all' . '?' . http_build_query([]);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer ' . $key, 'Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{}');
$res = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
echo $status, "\n", $res;Response
Tham số phản hồi (nguyên của Base Service)
| Tên | Kiểu | Mẫu | Mô tả |
|---|---|---|---|
| code | int | 1 | 1 = thành công · 0 = lỗi. |
| message | string | GET_DATA_SUCCESSFULLY | |
| services | object[] | Mới tạo trước. | |
| id | string | 73460 | Mã quy trình = `service_id`. |
| name | string | 2. QT theo dõi đơn hàng (theo đơn) | Tên. |
| group_id | string | 383 | Nhóm (group/get.all). |
| status | string | 1 | 1 = đang dùng · 0 = đã tắt. |
| metatype | string | service | |
| form | object[] | Trường thông tin của phiếu. | |
| id | string | service_file_pakd | Khóa trường — dùng khi sửa trường tùy chỉnh. |
| name | string | File PAKD | Nhãn. |
| type | string | filebox | Kiểu: `filebox` · `select` · `input-table` · … |
| required | string|int | 0 | Bắt buộc. |
| options | string[] | ["Có","Không"] | Lựa chọn (kiểu select). |
| managers | string[] | ["nguyenvana"] | Quản lý quy trình. |
| followers | string[] | [] | Người theo dõi mặc định. |
| rules | object | Quy tắc: workflow (`sequential`…), assignment_rule, permissions… | |
| properties | object | Sơ đồ: next_block_ids (khối đầu tiên), output_block_ids, ticket_creators… | |
| since / last_update | string | 1787715932 | Tạo / sửa (Unix giây). |
| acl | object | Quyền của token: manage, perform, view, view_ticket. | |
| … | Còn: notification_config, permissions, embed_link, incoming_webhook, hid, keywords… |
Mẫu phản hồi
{
"code": 1,
"message": "GET_DATA_SUCCESSFULLY",
"data": null,
"httpCode": "200",
"services": [
{
"id": "73460",
"name": "2. QT theo dõi đơn hàng (theo đơn)",
"group_id": "383",
"metatype": "service",
"status": "1",
"root_id": "0",
"form": [
{
"id": "service_co_can_cap_nhat_don_hang_khong",
"name": "Có cần cập nhật đơn hàng không?",
"type": "select",
"required": "1",
"options": [
"Có",
"Không"
],
"index": 2
},
{
"id": "service_file_pakd",
"name": "File PAKD",
"type": "filebox",
"required": 0,
"options": [],
"index": 4
}
],
"managers": [
"nguyenvana",
"phamthid"
],
"assignees": [],
"followers": [
"levanc"
],
"rules": {
"workflow": "sequential",
"assignment_rule": "keep_prev_assignee"
},
"properties": {
"next_block_ids": [
"73461"
],
"output_block_ids": [
"73464"
]
},
"since": "1787715932",
"last_update": "1788407446",
"acl": {
"manage": 0,
"perform": 0,
"view": 1,
"view_ticket": false
}
}
]
}
Bắt đầu dùng
- Đăng ký tài khoản Partner
- Mở loại dữ liệu thuộc nhóm Quy trình & khối ở trang nền tảng
- Tạo API key (tick kênh Base Service)
- Gọi theo ví dụ ở trên