Auth
Xác thực access token khi đăng nhập vào CSDL POS
POST /people/auth
Xác thực access token khi đăng nhập vào CSDL POS
Request
Headers
| Header | Value |
|---|---|
| Accept | application/vnd.people.v1+json
application/hal+json
application/json |
| Content-Type | application/vnd.people.v1+json
application/json |
| Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Body
//Yêu cầu "Device-Id" trong header
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 201: Created
- 401: Unauthorized
- 403: Forbidden
Headers
| Header | Value |
|---|---|
| Content-Type | application/vnd.people.v1+json
application/hal+json
application/json |
| Allow | Comma-separated list of all HTTP methods allowed |
Body
//SUCCESS
{
'result' => 'SUCCESS',
'person_name',
'pos_name',
'location_name'
}
//ERROR
- NOT_LOGGED_IN: Chưa đăng nhập.
- NOT_REGISTERED_POS: Tài khoản chưa được đăng ký quản lý POS.
- NOT_VERIFIED_POS: Tài khoản đang chờ xác thực quản lý POS. Gởi kèm pos_name, seller_uuid để yêu cầu xác thực.
- NOT_POS_ACCOUNT: Tài khoản POS liên kết không tồn tại hoặc chưa được kích hoạt.
- EXIST_ACCESS_TOKEN: Access token đã được đăng ký
- ERROR: Lỗi hệ thống khác
People
Quản lý tài khoản nhân viên
POST /people/people
Tạo tài khoản nhân viên
Fields
| Field | Type | Description | Required |
|---|---|---|---|
| name | Tên nhân viên |
NO | |
| username | Tên đăng nhập của nhân viên |
NO | |
| password | Mật khẩu đăng nhập của nhân viên |
NO | |
| role_id | Vai trò set cho nhân viên |
NO | |
| visible | Tài khoản nhân viên được phép hoạt động hay không |
NO | |
| action | NO | ||
| phone_customer | Số điện thoại customerVuadungcu |
NO | |
| location | NO |
Request
Headers
| Header | Value |
|---|---|
| Accept | application/vnd.people.v1+json
application/hal+json
application/json |
| Content-Type | application/vnd.people.v1+json
application/json |
| Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Body
{
"name": "Tên nhân viên",
"username": "Tên đăng nhập của nhân viên",
"password": "Mật khẩu đăng nhập của nhân viên",
"role_id": "Vai trò set cho nhân viên",
"visible": "Tài khoản nhân viên được phép hoạt động hay không",
"location": "Danh sách kho quản lý" //String JSON array_location_id
}
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 201: Created
- 400: Client Error
- 422: Unprocessable Entity
- 401: Unauthorized
- 403: Forbidden
Headers
| Header | Value |
|---|---|
| Content-Type | application/vnd.people.v1+json
application/hal+json
application/json |
| Allow | Comma-separated list of all HTTP methods allowed |
Body
//SUCCESS
{"result":"SUCCESS"}
//Các lỗi có thể xảy ra:
- EXIST_USERNAME: username đã tồn tại.
- NOT_EXIST_ROLE: role_id không đúng.
- ERROR: Lỗi hệ thống khác.
GET /people/people
Lấy danh sách nhân viên. Có thể truyền param "name" để tìm kiếm tương đối. Truyền param "visible=Y" để chỉ lấy các nhân viên được phép hoạt động.
Fields
| Field | Type | Description | Required |
|---|---|---|---|
| name | Tên nhân viên |
NO | |
| username | Tên đăng nhập của nhân viên |
NO | |
| password | Mật khẩu đăng nhập của nhân viên |
NO | |
| role_id | Vai trò set cho nhân viên |
NO | |
| visible | Tài khoản nhân viên được phép hoạt động hay không |
NO | |
| action | NO | ||
| phone_customer | Số điện thoại customerVuadungcu |
NO | |
| location | NO |
Request
Headers
| Header | Value |
|---|---|
| Accept | application/vnd.people.v1+json
application/hal+json
application/json |
| Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
- 401: Unauthorized
- 403: Forbidden
Headers
| Header | Value |
|---|---|
| Content-Type | application/vnd.people.v1+json
application/hal+json
application/json |
| Allow | Comma-separated list of all HTTP methods allowed |
Body
{
"_embedded": {
"person": [
{
"person_id",
"person_name",
"visible":"Y|N",
"role_id",
"role_name",
},
...
]
}
}
GET /people/people[/:id]
Lấy thông tin nhân viên
Fields
| Field | Type | Description | Required |
|---|---|---|---|
| name | Tên nhân viên |
NO | |
| username | Tên đăng nhập của nhân viên |
NO | |
| password | Mật khẩu đăng nhập của nhân viên |
NO | |
| role_id | Vai trò set cho nhân viên |
NO | |
| visible | Tài khoản nhân viên được phép hoạt động hay không |
NO | |
| action | NO | ||
| phone_customer | Số điện thoại customerVuadungcu |
NO | |
| location | NO |
Request
Headers
| Header | Value |
|---|---|
| Accept | application/vnd.people.v1+json
application/hal+json
application/json |
| Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
- 404: Not Found
- 401: Unauthorized
- 403: Forbidden
Headers
| Header | Value |
|---|---|
| Content-Type | application/vnd.people.v1+json
application/hal+json
application/json |
| Allow | Comma-separated list of all HTTP methods allowed |
Body
{
"result": "SUCCESS",
"person": {
"person_id",
"person_name",
"username",
"visible": "Y|N",
"role_id",
"role_name",
"linking_customerVuadungcu":"Y|N|W" trạng thái liên kết customer VDC
"location": array_location
}
}
//Lỗi có thể xảy ra:
- NOT_FOUND_PERSON: không tìm thấy nhân viên, $id không đúng.
PUT /people/people[/:id]
Chỉnh sửa thông tin tài khoản nhân viên
Fields
| Field | Type | Description | Required |
|---|---|---|---|
| name | Tên nhân viên |
NO | |
| username | Tên đăng nhập của nhân viên |
NO | |
| password | Mật khẩu đăng nhập của nhân viên |
NO | |
| role_id | Vai trò set cho nhân viên |
NO | |
| visible | Tài khoản nhân viên được phép hoạt động hay không |
NO | |
| action | NO | ||
| phone_customer | Số điện thoại customerVuadungcu |
NO | |
| location | NO |
Request
Headers
| Header | Value |
|---|---|
| Accept | application/vnd.people.v1+json
application/hal+json
application/json |
| Content-Type | application/vnd.people.v1+json
application/json |
| Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Body
{
"action": "editName | editUsername | editPassword | editRole | editVisible | linkCustomerVuadungcu | editLocation"
"name", // require action editName
"username", // require action editUsername
"password", // require action editPassword
"role_id", // require action editRole
"visible", // require action editVisible
"phone_customer", //require action linkCustomerVuadungcu. Truyền giá trị "unlink" để xóa link
"location",//string JSON array location. Require action editLocation
}
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
- 404: Not Found
- 400: Client Error
- 422: Unprocessable Entity
- 401: Unauthorized
- 403: Forbidden
Headers
| Header | Value |
|---|---|
| Content-Type | application/vnd.people.v1+json
application/hal+json
application/json |
| Allow | Comma-separated list of all HTTP methods allowed |
Body
//SUCCESS
{"result":"SUCCESS"}
//ERROR
- NOT_FOUND_PERSON: Không tìm thấy nhân viên bởi $id
- ERROR: Lỗi hệ thống khác.
- EXIST_USERNAME: username đã tồn tại. //Đối với action editUsername
- NOT_EXIST_ROLE: role_id không đúng. //Đối với action editRole
////Đối với action linkCustomerVuadungcu
//////với phone_customer=unlink
- NOT_EXIST_LINK_CUSTOMERVUADUNGCU: Không tồn tại liên kết.
//////Với phone_customer!=unlink
- EXIST_LINK_CUSTOMERVUADUNGCU: Đã tồn tại liên kết với customer VDC
- NOT_FOUND_CUSTOMERVUADUNGCU: Không tìm thấy customer VDC by phone
- NOT_YET_CONFIRM_PHONE_CUSTOMERVUADUNGCU: customer VDC chưa xác thực SDT
- EXIST_LINK_CUSTOMERVUADUNGCU_BYPHONE: customer VDC by phone đã tồn tại liên kết với tài khoản nhân viên POS khác.
DELETE /people/people[/:id]
Xóa tài khoản nhân viên. Các lỗi có thể xảy ra: - NOT_FOUND_PERSON: Không tìm thấy nhân viên bởi $id; - PERSON_LINKING_CUSTOMERVUADUNGCU: Tài khoản nhân viên đang liên kết customer vuadungcu
Fields
| Field | Type | Description | Required |
|---|---|---|---|
| name | Tên nhân viên |
NO | |
| username | Tên đăng nhập của nhân viên |
NO | |
| password | Mật khẩu đăng nhập của nhân viên |
NO | |
| role_id | Vai trò set cho nhân viên |
NO | |
| visible | Tài khoản nhân viên được phép hoạt động hay không |
NO | |
| action | NO | ||
| phone_customer | Số điện thoại customerVuadungcu |
NO | |
| location | NO |
Request
Headers
| Header | Value |
|---|---|
| Accept | application/vnd.people.v1+json
application/hal+json
application/json |
| Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 204: No Content
- 404: Not Found
- 401: Unauthorized
- 403: Forbidden
Headers
| Header | Value |
|---|---|
| Content-Type | application/vnd.people.v1+json
application/hal+json
application/json |
| Allow | Comma-separated list of all HTTP methods allowed |
Permissions
Quản lý quyền
GET /people/permissions[/:permission]
Lấy danh sách quyền dành cho nhân viên quản lý (Đã sắp xếp theo group và thứ tự permission)
Request
Headers
| Header | Value |
|---|---|
| Accept | application/vnd.people.v1+json
application/hal+json
application/json |
| Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
- 401: Unauthorized
- 403: Forbidden
Headers
| Header | Value |
|---|---|
| Content-Type | application/vnd.people.v1+json
application/hal+json
application/json |
| Allow | Comma-separated list of all HTTP methods allowed |
Body
{
"_embedded": {
"permissions": [
{
"permission",
"group",
"label",
},
...
]
}
}
Person
Quản lý tài khoản cá nhân nhân viên đang đăng nhập
GET /people/person[/:type]
Lấy thông tin nhân viên: - /info: Lấy thông tin nhân viên (name); - /permissions: Lấy danh sách quyền api của nhân viên
Request
Headers
| Header | Value |
|---|---|
| Accept | application/vnd.people.v1+json
application/hal+json
application/json |
| Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
- 404: Not Found
- 401: Unauthorized
- 403: Forbidden
Headers
| Header | Value |
|---|---|
| Content-Type | application/vnd.people.v1+json
application/hal+json
application/json |
| Allow | Comma-separated list of all HTTP methods allowed |
Body
// Thông tin nhân viên
{
"info": {
"name"
},
}
//Danh sách quyền
{
"permissions": [
"[permission1]",
"[permission2]",
...
],
}
Roles
Quản lý vai trò nhân viên
GET /people/roles
Lấy danh sách vai trò nhân viên
Fields
| Field | Type | Description | Required |
|---|---|---|---|
| name | Tên vai trò nhân viên |
NO | |
| permissions | NO | ||
| action | NO |
Request
Headers
| Header | Value |
|---|---|
| Accept | application/vnd.people.v1+json
application/hal+json
application/json |
| Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
- 401: Unauthorized
- 403: Forbidden
Headers
| Header | Value |
|---|---|
| Content-Type | application/vnd.people.v1+json
application/hal+json
application/json |
| Allow | Comma-separated list of all HTTP methods allowed |
Body
{
"_embedded": {
"roles": [
{
"role_id",
"role_name",
},
...
]
}
}
POST /people/roles
Thêm vai trò
Fields
| Field | Type | Description | Required |
|---|---|---|---|
| name | Tên vai trò nhân viên |
NO | |
| permissions | NO | ||
| action | NO |
Request
Headers
| Header | Value |
|---|---|
| Accept | application/vnd.people.v1+json
application/hal+json
application/json |
| Content-Type | application/vnd.people.v1+json
application/json |
| Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Body
{
"name",
"permissions": STRING_JSON,
}
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 201: Created
- 400: Client Error
- 422: Unprocessable Entity
- 401: Unauthorized
- 403: Forbidden
Headers
| Header | Value |
|---|---|
| Content-Type | application/vnd.people.v1+json
application/hal+json
application/json |
| Allow | Comma-separated list of all HTTP methods allowed |
Body
//SUCCESS
{"result":"SUCCESS"}
//ERROR
- EXIST_NAME: Tên vai trò đã tồn tại
- ERROR: Lỗi khác
GET /people/roles[/:role_id]
Lấy thông tin vai trò
Fields
| Field | Type | Description | Required |
|---|---|---|---|
| name | Tên vai trò nhân viên |
NO | |
| permissions | NO | ||
| action | NO |
Request
Headers
| Header | Value |
|---|---|
| Accept | application/vnd.people.v1+json
application/hal+json
application/json |
| Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
- 404: Not Found
- 401: Unauthorized
- 403: Forbidden
Headers
| Header | Value |
|---|---|
| Content-Type | application/vnd.people.v1+json
application/hal+json
application/json |
| Allow | Comma-separated list of all HTTP methods allowed |
Body
{
"result": "SUCCESS",
"role": {
"role_id",
"role_name",
"permission": [
"[permission_1]",
"[permission_2]",
...
],
"people": [
[
"person_id",
"person_name"
],
...
]
}
}
PUT /people/roles[/:role_id]
Chỉnh sửa tên, quyền của vai trò
Fields
| Field | Type | Description | Required |
|---|---|---|---|
| name | Tên vai trò nhân viên |
NO | |
| permissions | NO | ||
| action | NO |
Request
Headers
| Header | Value |
|---|---|
| Accept | application/vnd.people.v1+json
application/hal+json
application/json |
| Content-Type | application/vnd.people.v1+json
application/json |
| Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Body
{
"action": "editName | editPermissions"
"name", // require by action editName
"permissions", // require by action editPermissions
}
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 200: OK
- 404: Not Found
- 400: Client Error
- 422: Unprocessable Entity
- 401: Unauthorized
- 403: Forbidden
Headers
| Header | Value |
|---|---|
| Content-Type | application/vnd.people.v1+json
application/hal+json
application/json |
| Allow | Comma-separated list of all HTTP methods allowed |
Body
//SUCCESS
{"result": "SUCCESS"}
//ERROR
- NOT_FOUND_ROLE: Không tìm thấy role;
- EXIST_NAME: Tên vai trò đã tồn tại (action editName)
- ERROR: Lỗi khác
DELETE /people/roles[/:role_id]
Xóa vai trò. Các lỗi có thể xảy ra: - NOT_FOUND_ROLE: Không tìm thấy role; - EXIST_PERSON_IN_ROLE: Có nhân viên thuộc vai trò này; - ERROR: Lỗi khác
Fields
| Field | Type | Description | Required |
|---|---|---|---|
| name | Tên vai trò nhân viên |
NO | |
| permissions | NO | ||
| action | NO |
Request
Headers
| Header | Value |
|---|---|
| Accept | application/vnd.people.v1+json
application/hal+json
application/json |
| Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 204: No Content
- 404: Not Found
- 401: Unauthorized
- 403: Forbidden
Headers
| Header | Value |
|---|---|
| Content-Type | application/vnd.people.v1+json
application/hal+json
application/json |
| Allow | Comma-separated list of all HTTP methods allowed |
Verify
Xác thực đồng ý quản lý POS
POST /people/verify
Xác thực đồng ý quản lý POS
Fields
| Field | Type | Description | Required |
|---|---|---|---|
| seller_uuid | YES | ||
| verify | YES |
Request
Headers
| Header | Value |
|---|---|
| Accept | application/vnd.people.v1+json
application/hal+json
application/json |
| Content-Type | application/vnd.people.v1+json
application/json |
| Authorization | HTTP Basic, HTTP Digest, or OAuth2 Bearer token (check API provider for details) |
Body
{
"seller_uuid",
"verify": "Y|N"
}
Response
Status Codes
- 406: Not Acceptable
- 415: Unsupported Media Type
- 201: Created
- 400: Client Error
- 422: Unprocessable Entity
- 401: Unauthorized
- 403: Forbidden
Headers
| Header | Value |
|---|---|
| Content-Type | application/vnd.people.v1+json
application/hal+json
application/json |
| Allow | Comma-separated list of all HTTP methods allowed |
Body
//SUCCESS
{
"result" => "SUCCESS"
}
//ERROR
- NOT_LOGGED_IN: Chưa đăng nhập
- NOT_REGISTERED_POS: Tài khoản chưa được đăng ký quản lý POS.
- VERIFIED_POS: Tài khoản đã xác thực quản lý POS.
- INVALID_SELLER_UUID: seller_uuid yêu cầu không đúng với seller_uuid đã đăng ký quản lý POS.
- ERROR: Lỗi hệ thống khác