API โปรไฟล์ผู้ใช้ช่วยให้คุณสามารถใช้ ID ในเพจ (PSID) เพื่อเรียกดูข้อมูลโปรไฟล์ของผู้ใช้ ซึ่งสามารถใช้เพื่อปรับประสบการณ์ให้เหมาะกับแต่ละบุคคลที่โต้ตอบกับ Messenger ของคุณ
หากต้องการเรียกดูข้อมูลโปรไฟล์ของผู้ใช้ คุณจำเป็นต้องมีสิทธิ์การเข้าถึงระดับสูงสำหรับฟีเจอร์สิทธิ์การเข้าถึงโปรไฟล์ผู้ใช้ในสินทรัพย์ธุรกิจ บางช่องจำเป็นต้องมีสิทธิ์การอนุญาตเพิ่มเติมสำหรับการเข้าถึง
แม้ว่า PSID อาจจะถูกต้อง แต่ในบางกรณีคุณอาจไม่สามารถใช้ PSID เพื่อเรียกดูข้อมูลโปรไฟล์ของผู้ใช้ได้ ตัวอย่างเช่น PSID ที่เชื่อมโยงกับเพจเกมทันใจไม่สามารถเข้าถึงได้ผ่าน API โปรไฟล์ผู้ใช้
เหตุการณ์ต่อไปนี้จะเป็นการอนุญาตให้บอท Messenger ของคุณเข้าถึงข้อมูลโปรไฟล์ของผู้ใช้
askPermission()
ของ SDK ส่วนขยายของ Messenger ในตัวแสดงหน้าเว็บ เพื่อขอสิทธิ์การอนุญาต user_profile
จุดเข้าใช้งานบางรายการจะช่วยให้แอพสามารถเริ่มการสนทนาได้โดยไม่ต้องอนุญาตให้แอพเข้าถึงโปรไฟล์สาธารณะของผู้ใช้ ในกรณีเหล่านี้ แอพจะได้รับสิทธิ์การอนุญาตให้เข้าถึงโปรไฟล์ของผู้ใช้ได้หลังจากที่ผู้ใช้ตอบกลับข้อความเริ่มต้น ทั้งนี้ สถานการณ์เด่นๆ ที่ผู้ใช้อาจเริ่มการสนทนากับแอพ แต่ไม่ได้ให้สิทธิ์การอนุญาตในการเข้าถึงโปรไฟล์จะมีดังต่อไปนี้
ในปัจจุบัน API โปรไฟล์ผู้ใช้ไม่รองรับการเรียกดูข้อมูลโปรไฟล์สำหรับบัญชี Messenger ที่สร้างขึ้นโดยใช้หมายเลขโทรศัพท์
ในกรณีนี้ API นี้จะส่งคืนรหัสข้อผิดพลาด 2018218
พร้อมข้อความว่า "ไม่มีโปรไฟล์ที่พร้อมใช้งานสำหรับผู้ใช้รายนี้"
เมื่อแอพได้รับการอนุมัติในการตรวจสอบแอพสำหรับฟีเจอร์และสิทธิ์การอนุญาตที่จำเป็น แอพนั้นจะสามารถเรียกดูช่องต่อไปนี้สำหรับผู้ใช้ที่เปิดให้เข้าถึงข้อมูลได้แบบสาธารณะและได้เลือกใช้เพจของคุณ
ชื่อฟิลด์ | คำอธิบาย | สิทธิ์การอนุญาต |
---|---|---|
| PSID ของผู้ใช้ | N/A |
| ชื่อและนามสกุลของผู้ใช้ | N/A |
| ชื่อ | N/A |
| นามสกุล | N/A |
| รูปโปรไฟล์ | N/A |
| ระบบภาษาของผู้ใช้บน Facebook |
|
| โซนเวลา ตัวเลขสัมพันธ์กับ GMT |
|
| เพศ |
|
หากต้องการใช้ API โปรไฟล์ผู้ใช้ ให้ส่งคำขอ GET
พร้อมช่องโปรไฟล์ที่คุณต้องการสำหรับผู้ใช้รายนั้นๆ ดังนี้
curl -X GET "https://graph.facebook.com/<PSID>?fields=first_name,last_name,profile_pic&access_token=<PAGE_ACCESS_TOKEN>"
หากแอพสามารถเข้าถึงโปรไฟล์ของผู้ใช้ได้ API โปรไฟล์ผู้ใช้ก็จะส่งคืนสตริง JSON พร้อมช่องที่ร้องขอจากโปรไฟล์ของผู้ใช้รายนั้นๆ
{
"first_name": "Peter",
"last_name": "Chang",
"profile_pic": "https://fbcdn-profile-a.akamaihd.net/hprofile-ak-xpf1/v/t1.0-1/p200x200/13055603_10105219398495383_8237637584159975445_n.jpg?oh=1d241d4b6d4dac50eaf9bb73288ea192&oe=57AF5C03&__gda__=1470213755_ab17c8c8e3a0a447fed3f272fa2179ce",
"locale": "en_US",
"timezone": -7,
"gender": "male",
"last_ad_referral": {
"source": "ADS",
"type": "OPEN_THREAD",
"ad_id": "6045246247433"
}
}
แต่หากแอพไม่สามารถเข้าถึงโปรไฟล์ของผู้ใช้ได้ ระบบก็จะส่งคืนมาเป็นอ็อบเจ็กต์ที่ว่างเปล่า