เอกสารนี้จะอธิบายวิธีเรียกใช้การรองรับ Messenger API สำหรับ Instagram (หรือที่ในนโยบายผู้พัฒนาของเราเรียกว่า API การส่งข้อความบน Instagram) ด้วยแอพของคุณและรับข้อความในบัญชีมืออาชีพบน Instagram ให้สำเร็จ เอกสารนี้เหมาะสำหรับผู้ที่คุ้นเคยกับ API กราฟและการเข้าสู่ระบบด้วย Facebook
คุณจะต้องมีสิทธิ์การเข้าถึงต่อไปนี้
MODERATE
ในเพจนี้ได้ ผู้พัฒนาที่ไม่เคยใช้แพลตฟอร์ม Messenger มาก่อน
ผู้พัฒนาที่มีประสบการณ์การใช้งานบนแพลตฟอร์ม Messenger มาก่อน
คุณสามารถใช้การเข้าสู่ระบบด้วย Facebook หรือการเข้าสู่ระบบธุรกิจสำหรับ Instagram เพื่อขอสิทธิ์การอนุญาตที่จำเป็นจากผู้ใช้แอพของคุณได้
ขั้นตอนการเข้าสู่ระบบธุรกิจสำหรับ Instagram ช่วยให้ผู้ใช้สามารถดำเนินการต่อไปนี้ระหว่างขั้นตอนการเข้าสู่ระบบ
หากต้องการใช้การเข้าสู่ระบบธุรกิจสำหรับ Instagram ให้ไปที่คู่มือการเข้าสู่ระบบธุรกิจสำหรับ Instagram จากนั้นกลับมาที่คู่มือนี้
ตรวจสอบให้แน่ใจว่าคุณลงชื่อเข้าใช้บัญชีผู้พัฒนา Facebook จากนั้นให้เข้าใช้แอพของคุณและเรียกใช้กล่องรับค่าการเข้าสู่ระบบด้วย Facebook โปรดอย่าลืมว่าบัญชีผู้พัฒนา Facebook ของคุณต้องสามารถดำเนินงานบนเพจ Facebook ที่เชื่อมต่อกับบัญชี Instagram ที่คุณต้องการสืบค้น โดยมีสิทธิ์การเข้าถึงเพจที่ระดับ "ควบคุม" เป็นอย่างน้อย
เมื่อคุณเรียกใช้กล่องรับค่าดังกล่าวแล้ว ให้คลิกตกลงเพื่อให้สิทธิ์การอนุญาต instagram_basic
, instagram_manage_messages
และ pages_manage_metadata
แก่แอพของคุณ
API ควรจะส่งคืนโทเค็นการเข้าถึงผู้ใช้ ให้เก็บบันทึกโทเค็นดังกล่าวไว้ เพื่อที่แอพของคุณจะสามารถใช้โทเค็นนั้นเพื่อทำการสืบค้นใน 2-3 ครั้งถัดไปได้ หากคุณกำลังใช้ Graph API Explorer ระบบจะเก็บบันทึกโทเค็นให้โดยอัตโนมัติ และจะแสดงโทเค็นนั้นในช่องโทเค็นการเข้าถึงเพื่อใช้อ้างอิง
สืบค้นตำแหน่งข้อมูล GET /me/accounts
(ซึ่งจะแปลเป็น GET /{user-id}/accounts
โดยดำเนินการ GET บนโหนดผู้ใช้ Facebook ตามโทเค็นการเข้าถึงของคุณ)
curl -i -X GET \ "https://graph.facebook.com/v9.0/me/accounts?access_token={access-token}"
การดำเนินการนี้ควรส่งคืนคอลเลกชั่นของเพจ Facebook ที่ผู้ใช้ Facebook ปัจจุบันสามารถดำเนินงาน MANAGE
, CREATE_CONTENT
, MODERATE
หรือ 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" ] } ] }
ดึงข้อมูล ID ของเพจ Facebook ที่เชื่อมต่อกับบัญชี Instagram ที่คุณต้องการสืบค้น โปรดทราบว่าผู้ใช้แอพของคุณอาจดำเนินงานในหลายๆ เพจได้ ดังนั้นในท้ายที่สุด คุณจะต้องสร้างตรรกะที่ช่วยระบุ ID เพจที่จะดึงข้อมูลที่ถูกต้องได้ (หรือสร้าง UI ที่ผู้ใช้แอพของคุณสามารถระบุเพจที่ถูกต้องสำหรับคุณได้)
หากต้องการดำเนินการเรียกใช้ API การส่งข้อความบน Instagram ต่างๆ คุณจะต้องใช้โทเค็นการเข้าถึงเพจ (PAT) ที่เชื่อมโยงอยู่กับบัญชีมืออาชีพบน Instagram ที่เกี่ยวข้อง ซึ่งเคยได้รับมาผ่านขั้นตอนการเข้าสู่ระบบด้วย Facebook ก่อนหน้านี้
ส่งคำขอ GET
ไปยังตำแหน่งข้อมูล /{page-id}
โดยใช้โทเค็นการเข้าถึงผู้ใช้ของคุณ ตัวอย่างเช่น
curl -i -X GET "https://graph.facebook.com/{page-id}? fields=access_token& access_token={user-access-token}"
เมื่อดำเนินการสำเร็จ แอพของคุณจะได้รับการตอบกลับนี้:
{ "access_token":"{page-access-token}", "id":"{page-id}" }
ในการสร้างโทเค็นการเข้าถึงเพจแบบใช้งานระยะยาว คุณสามารถปฏิบัติตามคำแนะนำได้ที่นี่
ขณะนี้เรากำลังจะเปิดตัวเครื่องมือดังกล่าวสำหรับผู้พัฒนาทุกคนภายในอีกไม่กี่สัปดาห์ข้างหน้า หากคุณไม่พบการตั้งค่าดังกล่าวในแดชบอร์ดของแอพ คุณสามารถปฏิบัติตามขั้นตอนที่ 1-5 ข้างต้นเพื่อสร้างโทเค็นการเข้าถึงเพจได้
หรือถ้าหากคุณเป็นเจ้าของสินทรัพย์ (บัญชี Instagram และเพจ Facebook) ที่คุณต้องการนำมาใช้กับการรองรับ Messenger API สำหรับ Instagram คุณสามารถใช้เครื่องมือการตั้งค่า Instagram ในแดชบอร์ดของแอพสำหรับผู้พัฒนาเพื่อช่วยให้คุณตั้งค่าโทเค็นการเข้าถึงเพจและ Webhooks ได้อย่างง่ายดาย คุณสามารถค้นหาเครื่องมือได้ในแดชบอร์ดของแอพสำหรับผู้พัฒนา → Messenger → การตั้งค่า Instagram วิธีการกำหนดค่าโทเค็นและ Webhook ที่มีอยู่เดิมจะยังคงใช้งานได้อยู่ แต่เครื่องมือนี้จะช่วยให้คุณสามารถตั้งค่าสิ่งแวดล้อมได้ง่ายขึ้น
หากต้องการจัดการข้อความบน Instagram ผ่าน API บัญชีมืออาชีพบน Instagram จะต้องเปิดใช้งานปุ่มเปิดปิดของเครื่องมือที่เชื่อมต่อในการตั้งค่าการควบคุมข้อความ
ใช้ ID เพจที่คุณบันทึกไว้และโทเค็นการเข้าถึงเพจ (PAT) เพื่อสืบค้นตำแหน่งข้อมูล GET /{page-id}/conversations?platform=instagram
ดังนี้
curl -i -X GET \ "https://graph.facebook.com/v9.0/17841405822304914/conversations?platform=instagram&access_token={access-token}"
การดำเนินการนี้ควรส่งคืน ID ของอ็อบเจ็กต์เธรดทั้งหมดบนผู้ใช้ Instagram ดังนี้
{ "data": [ { "id": "aWdfZAG06MTpJR01lc3NhZA2VUaHJlYWQ6OTAwMTAxNDYyOTkyODI6MzQwMjgyMzY2ODQxNzEwMzAwOTQ5MTI4MTM2MDk5MDc1MzYyOTgx" }, { "id": "aWdfZAG06MTpJR01lc3NhZA2VUaHJlYWQ6OTAwMTAxNDYyOTkyODI6MzQwMjgyMzY2ODQxNzEwMzAwOTQ5MTI4MTYzMzQ2MzE5NjM1NDcy" }, { "id": "aWdfZAG06MTpJR01lc3NhZA2VUaHJlYWQ6OTAwMTAxNDYyOTkyODI6MzQwMjgyMzY2ODQxNzEwMzAwOTQ5MTI4MTk3MTY0NjI2NzAyMjMw" }, { "id": "aWdfZAG06MTpJR01lc3NhZA2VUaHJlYWQ6OTAwMTAxNDYyOTkyODI6MzQwMjgyMzY2ODQxNzEwMzAwOTQ5MTI4MzkzNDI5MDYzMzkyNjU0" } }
หากคุณสามารถสืบค้นขั้นสุดท้ายนี้ได้สำเร็จ คุณควรจะสามารถสืบค้นโดยใช้ตำแหน่งข้อมูลการรองรับ Messenger API สำหรับ Instagram ทั้งหมดได้ โดยคุณสามารถดูคำแนะนำและข้อมูลอ้างอิงต่างๆ ของเราเพื่อเรียนรู้ว่าตำแหน่งข้อมูลแต่ละรายการสามารถทำอะไรได้บ้างและต้องได้รับสิทธิ์การอนุญาตใดบ้าง