Skip to Content

REST API

3 Minutes

Tì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ặc FPM.
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"
            }
        ]
    }
}
REST API