Tài liệu này đã được cập nhật.
Bản dịch sang Tiếng Việt chưa hoàn tất.
Cập nhật bằng tiếng Anh: 22 tháng 5

Bắt đầu

Tài liệu này giải thích cách gọi thành công Messenger API hỗ trợ Instagram (còn gọi là API Nhắn tin trên Instagram trong Chính sách dành cho nhà phát triển của chúng tôi) bằng ứng dụng của bạn và nhận tin nhắn của Tài khoản công việc trên Instagram. Giả sử bạn đã quen dùng API Đồ thị và phương thức Đăng nhập bằng Facebook.

Trước khi bắt đầu

Bạn sẽ cần có quyền truy cập vào các mục sau:

Nhà phát triển mới sử dụng Nền tảng Messenger

  • Làm theo hướng dẫn từng bước được nêu chi tiết bên dưới để biết cách tạo Mã truy cập Trang, thiết lập webhooks.
  • Tìm hiểu về nhiều tính năng của nền tảng và áp dụng những tính năng phù hợp với nhu cầu của bạn.

Nhà phát triển có kinh nghiệm sử dụng Nền tảng Messenger từ trước

  • Các khái niệm về mã truy cập và webhooks tương tự như trường hợp trên. Messenger API hỗ trợ Instagram sẽ yêu cầu quyền instagram_manage_messages trong Mã truy cập Trang và yêu cầu đăng ký các webhook trong chủ đề Instagram.
  • Hầu hết các tính năng đều tương tự như Messenger API. Hãy xem lại thông tin chi tiết trên danh sách tính năng và áp dụng những tính năng phù hợp với nhu cầu của bạn.

Quy trình đăng nhập

Bạn có thể sử dụng phương thức Đăng nhập bằng Facebook hoặc Đăng nhập bằng Instagram cho doanh nghiệp để yêu cầu người dùng ứng dụng cấp các quyền cần thiết.

Quy trình Đăng nhập bằng Instagram cho doanh nghiệp cho phép một người dùng hoàn tất các thao tác sau đây trong quy trình đăng nhập:

  • chuyển tài khoản Instagram của họ thành Tài khoản công việc trên Instagram
  • tạo Trang Facebook cho doanh nghiệp của họ
  • kết nối Trang đó với Tài khoản công việc của họ trên Instagram

Để triển khai quy trình Đăng nhập bằng Instagram cho doanh nghiệp, hãy truy cập vào hướng dẫn về quy trình Đăng nhập bằng Instagram cho doanh nghiệp rồi quay lại hướng dẫn này.

1. Lấy mã truy cập dành cho người dùng

Đảm bảo bạn đăng nhập vào Tài khoản nhà phát triển trên Facebook rồi truy cập vào ứng dụng của mình và kích hoạt phương thức Đăng nhập bằng Facebook. Lưu ý rằng Tài khoản nhà phát triển trên Facebook phải có khả năng thực hiện các Tác vụ với quyền truy cập tối thiểu ở cấp độ "Kiểm duyệt" trên Trang Facebook kết nối với tài khoản Instagram mà bạn muốn truy vấn.

Sau khi kích hoạt phương thức này, hãy nhấp vào OK để cấp cho ứng dụng của bạn các quyền instagram_basic, instagram_manage_messagespages_manage_metadata.

API sẽ trả về mã truy cập dành cho Người dùng. Hãy chụp mã đó để ứng dụng của bạn có thể dùng trong một vài truy vấn tiếp theo. Nếu bạn đang dùng Trình khám phá API Đồ thị, mã sẽ được chụp tự động và hiển thị trong trường Mã truy cập để bạn tham khảo:

2. Lấy các Trang của người dùng

Truy vấn điểm cuối GET /me/accounts (điểm cuối này sẽ chuyển đổi thành GET /{user-id}/accounts để thực hiện yêu cầu GET trên nút Người dùng Facebook dựa trên mã truy cập của bạn).

curl -i -X GET \
 "https://graph.facebook.com/v9.0/me/accounts?access_token={access-token}"

Truy vấn này sẽ trả về tập hợp các Trang Facebook cho phép Người dùng Facebook hiện tại thực hiện các tác vụ MANAGE, CREATE_CONTENT, MODERATE hoặc ADVERTISE:

{
  "data": [
    {
      "access_token": "EAAJjmJ...",
      "category": "App Page",
      "category_list": [
        {
          "id": "2301",
          "name": "App Page"
        }
      ],
      "name": "Metricsaurus",
      "id": "134895793791914",  // capture the Page ID
      "tasks": [
        "ANALYZE",
        "ADVERTISE",
        "MODERATE",
        "CREATE_CONTENT",
        "MANAGE"
      ]
    }
  ]
}

Sau đó, chụp ID của Trang Facebook kết nối với tài khoản Instagram mà bạn muốn truy vấn. Lưu ý rằng người dùng ứng dụng có thể thực hiện các tác vụ trên nhiều trang. Do đó, cuối cùng bạn sẽ phải đưa ra logic có thể xác định đúng ID Trang cần chụp (hoặc tạo một giao diện người dùng nơi người dùng ứng dụng có thể xác định đúng Trang cho bạn).

3. Lấy mã truy cập Trang

Để thực hiện các lệnh gọi API Nhắn tin trên Instagram khác nhau, bạn sẽ cần sử dụng Mã truy cập Trang (PAT) được liên kết của Tài khoản công việc phù hợp trên Instagram đã được cấp trước đó thông qua quy trình đăng nhập bằng Facebook.

Gửi yêu cầu GET đến điểm cuối /{page-id} bằng cách sử dụng mã truy cập dành cho Người dùng. Ví dụ:

curl -i -X GET "https://graph.facebook.com/{page-id}?
  fields=access_token&
  access_token={user-access-token}"  

Khi thành công, ứng dụng của bạn sẽ nhận được phản hồi sau:

{
  "access_token":"{page-access-token}",
  "id":"{page-id}"              
}  
  • Nếu bạn sử dụng mã truy cập dành cho Người dùng ngắn hạn, mã truy cập Trang sẽ chỉ có hiệu lực trong 1 giờ.
  • Nếu bạn sử dụng mã truy cập dài hạn dành cho Người dùng, mã truy cập Trang sẽ không có ngày hết hạn.

Bạn có thể làm theo hướng dẫn tại đây để tạo mã truy cập Trang dài hạn.

3a. Lấy mã truy cập Trang qua Công cụ bảng điều khiển dành cho nhà phát triển trên Instagram

Chúng tôi đang triển khai công cụ này cho tất cả các nhà phát triển trong những tuần sắp tới. Nếu không nhìn thấy mục cài đặt trong Bảng điều khiển ứng dụng, bạn có thể làm theo các Bước 1-5 ở trên để tạo Mã truy cập Trang.

Nếu muốn tích hợp các tài sản (tài khoản Instagram và trang Facebook) của mình với Messenger API hỗ trợ Instagram, bạn có thể tận dụng công cụ thiết lập Instagram trong Bảng điều khiển ứng dụng dành cho nhà phát triển để dễ dàng thiết lập Mã truy cập Trang và Webhooks. Bạn có thể tìm thấy công cụ này trong Bảng điều khiển ứng dụng dành cho nhà phát triển → Messenger → Cài đặt Instagram. Bạn vẫn có thể sử dụng phương thức hiện có là đặt cấu hình mã và webhook. Tuy nhiên, công cụ này sẽ giúp bạn thiết lập môi trường dễ dàng hơn.

4. Bật công cụ được kết nối trong phần cài đặt kiểm soát tin nhắn

Để quản lý tin nhắn trên Instagram qua API, Tài khoản công việc trên Instagram cần phải bật công cụ được kết nối trong phần cài đặt kiểm soát tin nhắn.

5. Lấy đối tượng hộp thư của Tài khoản công việc trên Instagram

Sử dụng ID Trang mà bạn đã chụp và Mã truy cập Trang (PAT) để truy vấn điểm cuối GET /{page-id}/conversations?platform=instagram:

curl -i -X GET \
 "https://graph.facebook.com/v9.0/17841405822304914/conversations?platform=instagram&access_token={access-token}"  

Thao tác này sẽ trả về ID của tất cả đối tượng chuỗi trò chuyện cho người dùng Instagram:

{
  "data": [
    {
      "id": "aWdfZAG06MTpJR01lc3NhZA2VUaHJlYWQ6OTAwMTAxNDYyOTkyODI6MzQwMjgyMzY2ODQxNzEwMzAwOTQ5MTI4MTM2MDk5MDc1MzYyOTgx"
    },
    {
      "id": "aWdfZAG06MTpJR01lc3NhZA2VUaHJlYWQ6OTAwMTAxNDYyOTkyODI6MzQwMjgyMzY2ODQxNzEwMzAwOTQ5MTI4MTYzMzQ2MzE5NjM1NDcy"
    },
    {
      "id": "aWdfZAG06MTpJR01lc3NhZA2VUaHJlYWQ6OTAwMTAxNDYyOTkyODI6MzQwMjgyMzY2ODQxNzEwMzAwOTQ5MTI4MTk3MTY0NjI2NzAyMjMw"
    },
    {
      "id": "aWdfZAG06MTpJR01lc3NhZA2VUaHJlYWQ6OTAwMTAxNDYyOTkyODI6MzQwMjgyMzY2ODQxNzEwMzAwOTQ5MTI4MzkzNDI5MDYzMzkyNjU0"
    }
}

Nếu thực hiện thành công truy vấn cuối cùng này, bạn sẽ có thể thực hiện các truy vấn thông qua bất kỳ điểm cuối Messenger API hỗ trợ Instagram nào. Bạn chỉ cần tham khảo các hướng dẫn và tài liệu tham khảo khác nhau của chúng tôi để tìm hiểu những việc có thể làm và những quyền cần đến của từng điểm cuối.

Bước tiếp theo

  • Phát triển ứng dụng hơn nữa để có thể sử dụng thành công bất kỳ điểm cuối nào khác nếu cần và theo dõi quyền mà mỗi điểm cuối yêu cầu
  • Hoàn tất quy trình thiết lập webhook để có thể nhận được thông báo theo thời gian thực mỗi khi người dùng gửi tin nhắn đến Tài khoản công việc trên Instagram.
  • Hoàn tất quy trình Xét duyệt ứng dụng và yêu cầu phê duyệt tất cả các quyền cần thiết cho ứng dụng của bạn để người dùng có thể cấp các quyền đó khi ứng dụng ở chế độ chính thức.

Hỗ trợ nhà phát triển