REST API
3 MinutesTìm hiểu những kiến thức cơ bản để sử dụng REST API, bắt đầu bằng xác thực và một số ví dụ về điểm cuối.
Tổng quan
Cách dễ nhất để làm quen với API là thông qua cURL. Tuy nhiên, đối với hầu hết các ứng dụng, chúng tôi khuyên bạn nên sử dụng thư viện wrapper:
Xác thực
API SupportPro sử dụng Xác thực cơ bản thông qua mã thông báo API.
Sử dụng cờ -u
để cung cấp mã thông báo API. Lưu ý, trường mật khẩu bị bỏ qua, do đó bạn có thể sử dụng giá trị tùy chọn của mình, trong trường hợp này chúng tôi đang sử dụng X
. Thay thế $token
với giá trị của mã thông báo API của bạn.
$ curl -i -u ’$token:X’ -X GET https://www.example.com/api/selfservice/type
Lỗi xác thực
Không xác thực được vì thông tin xác thực không hợp lệ hoặc tiêu đề ủy quyền không hợp lệ.
Apache
Quyền HTTP sẽ hoạt động ngay trên Apache bằng cách sử dụng được xác định trước .htaccess
. Nếu bạn gặp sự cố, vui lòng kiểm tra những điều sau:
mod_rewrite
được bật trên Apache.- Chỉ thị AllowOverride được đặt thành
All
itrong cấu hình Apache của bạn để cho phép người dùng xác định thư mục.htaccess
. - Chuyển ra khỏi
cgi
Trình xử lý Apache đểSuPHP
hoặcFPM
.
Máy chủ web khác
Vui lòng tham khảo tài liệu về máy chủ web, cách bật tiêu đề Xác thực HTTP.
Điểm cuối
Để xem tất cả các điểm cuối được hỗ trợ, vui lòng truy cập đến https://api.supportpro.com.
Thay đổi ngôn ngữ
Nếu bạn sử dụng Nội dung đa ngôn ngữ API sẽ trả về giá trị mặc định của nội dung và bản dịch sẽ có thể truy cập được dưới dạng mối quan hệ trong kết quả. Bạn có thể buộc API thay thế nội dung mặc định bằng bản dịch cụ thể (nếu có) bằng cách thêm tham số lang
cho yêu cầu.
Dưới đây là ví dụ về cách lấy trạng thái Mở có và không có tham số ngôn ngữ (đặt thành tiếng Pháp).
http://www.mydomain.com/api/ticket/status/1
{
"status": "success",
"message": null,
"data": {
"id": 1,
"name": "Open",
"colour": "#35a600",
"auto_close": 1,
"order": 1,
"created_at": 1486732738,
"updated_at": 1486732738,
"translations": [
{
"status_id": 1,
"name": "Ouvrir",
"locale": "fr"
}
]
}
}
http://www.mydomain.com/api/ticket/status/1?lang=fr
{
"status": "success",
"message": null,
"data": {
"id": 1,
"name": "Ouvrir",
"colour": "#35a600",
"auto_close": 1,
"order": 1,
"created_at": 1486732738,
"updated_at": 1486732738,
"translations": [
{
"status_id": 1,
"name": "Ouvrir",
"locale": "fr"
}
]
}
}