Webhooks của Meta

Với Webhooks, bạn có thể nhận thông báo HTTP tức thì về những thay đổi đối với các đối tượng cụ thể trong đồ thị mạng xã hội của Meta. Ví dụ: chúng tôi có thể gửi cho bạn thông báo khi bất kỳ Người dùng ứng dụng nào thay đổi địa chỉ email của họ hoặc mỗi khi họ bình luận trên Trang Facebook của bạn. Nhờ vậy, bạn không phải truy vấn API Đồ thị để biết các thay đổi đối với đối tượng có thể đã hoặc chưa xảy ra. Đồng thời, bạn có thể tránh đạt đến giới hạn tốc độ.

Webhooks dành cho thanh toánWebhooks dành cho Messenger có các bước đặt cấu hình hơi khác nhau. Nếu bạn đang thiết lập Webhook cho một trong hai sản phẩm này, vui lòng tham khảo các tài liệu tương ứng để xem hướng dẫn thiết lập.

Đối tượng, trường và giá trị

Đồ thị mạng xã hội của Meta có nhiều loại đối tượng, chẳng hạn như đối tượng Người dùng và đối tượng Trang. Do đó, bất cứ khi nào đặt cấu hình Webhook, trước tiên, bạn phải chọn một loại đối tượng. Vì mỗi đối tượng sẽ có những trường khác nhau nên bạn phải đăng ký các trường cụ thể cho loại đối tượng đó. Mỗi khi có thay đổi đối với giá trị của bất kỳ trường đối tượng nào mà bạn đăng ký, chúng tôi sẽ gửi thông báo cho bạn.

Thông báo được gửi cho bạn dưới dạng yêu cầu HTTP POST và chứa phần tải dữ liệu JSON mô tả thay đổi đó. Ví dụ: giả sử bạn thiết lập Webhook User và đăng ký trường Photos. Nếu một trong những Người dùng ứng dụng của bạn tải ảnh lên, chúng tôi sẽ gửi cho bạn thông báo có dạng như sau:

Thông báo mẫu

{
  "entry": [
    {
      "time": 1520383571,
      "changes": [
        {
          "field": "photos",
          "value": {
            "verb": "update",
            "object_id": "10211885744794461"
          }
        }
      ],
      "id": "10210299214172187",
      "uid": "10210299214172187"
    }
  ],
  "object": "user"
}

Máy chủ HTTPS

Webhooks được gửi bằng HTTPS nên máy chủ của bạn phải có khả năng nhận và xử lý các yêu cầu HTTPS, đồng thời phải cài đặt sẵn chứng chỉ TLS/SSL hợp lệ. Chứng chỉ tự ký không được hỗ trợ.

Xét duyệt ứng dụng

Webhooks không yêu cầu Xét duyệt ứng dụng. Tuy nhiên, để nhận thông báo Webhooks về các thay đổi liên quan đến đối tượng khi ứng dụng của bạn ở chế độ Chính thức, ứng dụng này phải được cấp các quyền phù hợp để truy cập những đối tượng đó. Hãy xem phần Quyền ở bên dưới.

Quyền

Trước khi có thể ra mắt công chúng, ứng dụng thường phải trải qua quy trình Xét duyệt ứng dụng. Trong quy trình xét duyệt này, ứng dụng có thể yêu cầu phê duyệt các quyền cụ thể để kiểm soát loại dữ liệu mà ứng dụng đó có thể truy cập khi sử dụng API Đồ thị.

Dù không yêu cầu Xét duyệt ứng dụng nhưng sản phẩm Webhooks có tuân theo các quyền. Tức là ngay cả khi thiết lập Webhook và đăng ký các trường cụ thể trên một loại đối tượng, bạn vẫn sẽ không nhận được thông báo về bất kỳ thay đổi nào liên quan đến đối tượng thuộc loại đó trừ khi:

  • ứng dụng của bạn đã được phê duyệt (các) quyền tương ứng với loại dữ liệu đó và
  • đối tượng sở hữu dữ liệu đã cấp cho ứng dụng của bạn quyền truy cập vào dữ liệu đó (ví dụ: một Người dùng cho phép ứng dụng của bạn truy cập vào Bảng feed của họ)

Chế độ phát triển

Các ứng dụng ở chế độ phát triển chỉ có thể nhận thông báo thử nghiệm được tạo thông qua bảng điều khiển ứng dụng hoặc thông báo do những người có vai trò trên ứng dụng đó tạo.

Lưu ý rằng đối với các Sự kiện Webhooks trên Messenger, hành vi ở chế độ phát triển sẽ khác. Hãy tham khảo tài liệu về Webhooks dành cho Messenger để biết chi tiết.

Thiết lập

Để sử dụng Webhooks, bạn cần thiết lập một điểm cuối trên máy chủ (HTTPS) an toàn của mình, sau đó thêm và đặt cấu hình sản phẩm Webhooks trong bảng điều khiển của ứng dụng. Phần còn lại của những tài liệu này sẽ giải thích cách hoàn thành cả hai bước trên.

Bạn đã sẵn sàng? Hãy bắt đầu nào!

Tìm hiểu thêm