<!DOCTYPE html>
    <html lang="vi" xmlns="http://www.w3.org/1999/xhtml" prefix="og: http://ogp.me/ns#">
    <head>
<title>CÁCH LẤY PAGE TOKEN CHUẨN TRÊN FACEBOOK ĐỂ SỬ DỤNG GRAPH API |  Hoclaptrinh99.com</title>
<meta name="description" content="CÁCH LẤY PAGE TOKEN CHUẨN TRÊN FACEBOOK ĐỂ SỬ DỤNG GRAPH API - Savefile - Blog -...">
<meta name="keywords" content="blog lập trình">
<meta name="news_keywords" content="blog lập trình">
<meta name="author" content="Học Lập Trình 99">
<meta name="copyright" content="Học Lập Trình 99 [hoclaptrinh99@gmail.com]">
<meta name="generator" content="NukeViet v5.0">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="google-site-verification" content="BSwsW_B32JEmlT2cuZD1IQZqLeh5J64CB7lFDySkFVY">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta property="og:title" content="CÁCH LẤY PAGE TOKEN CHUẨN TRÊN FACEBOOK ĐỂ SỬ DỤNG GRAPH API">
<meta property="og:type" content="website">
<meta property="og:description" content="Savefile - Blog - https&#x3A;&#x002F;&#x002F;hoclaptrinh99.com&#x002F;blog&#x002F;savefile&#x002F;khac&#x002F;cach-lay-page-token-chuan-tren-facebook-de-su-dung-graph-api-23.html">
<meta property="og:site_name" content="Học Lập Trình 99">
<meta property="og:image" content="https://hoclaptrinh99.com/uploads/opengrap.png">
<meta property="og:image:url" content="https://hoclaptrinh99.com/uploads/opengrap.png">
<meta property="og:image:type" content="image/png">
<meta property="og:image:width" content="1058">
<meta property="og:image:height" content="887">
<meta property="og:image:alt" content="Học Lập Trình 99">
<meta property="og:url" content="https://hoclaptrinh99.com/blog/savefile/khac/cach-lay-page-token-chuan-tren-facebook-de-su-dung-graph-api-23.html">
<link rel="shortcut icon" href="https://hoclaptrinh99.com/uploads/500058390_729034789638068_2489363526938716286_n.jpg">
<link rel="canonical" href="https://hoclaptrinh99.com/blog/savefile/khac/cach-lay-page-token-chuan-tren-facebook-de-su-dung-graph-api-23.html">
<link rel="alternate" href="https://hoclaptrinh99.com/blog/rss/" title="Blog" type="application/rss+xml">
<link rel="alternate" href="https://hoclaptrinh99.com/blog/rss/nukeviet/" title="Blog - NUKEVIET" type="application/rss+xml">
<link rel="alternate" href="https://hoclaptrinh99.com/blog/rss/php-mysql/" title="Blog - PHP MYSQL" type="application/rss+xml">
<link rel="alternate" href="https://hoclaptrinh99.com/blog/rss/html-css-js/" title="Blog - HTML CSS JS" type="application/rss+xml">
<link rel="alternate" href="https://hoclaptrinh99.com/blog/rss/python/" title="Blog - PYTHON" type="application/rss+xml">
<link rel="alternate" href="https://hoclaptrinh99.com/blog/rss/linux/" title="Blog - LINUX" type="application/rss+xml">
<link rel="alternate" href="https://hoclaptrinh99.com/blog/rss/khac/" title="Blog - KHÁC" type="application/rss+xml">
<link rel="search" type="application/opensearchdescription+xml" href="https://hoclaptrinh99.com/seek/opensearch/blog/" title="Blog">
<link rel="preload" as="font" href="/assets/fonts/fontawesome-webfont.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="font" href="/themes/default/fonts/NukeVietIcons.woff2" type="font/woff2" crossorigin>
<link rel="preload" as="image" href="/themes/ts_sharecode/images/header.png" type="image/png">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/assets/js/jquery/jquery.min.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/assets/js/language/vi.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/assets/js/DOMPurify/purify3.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/assets/js/global.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/assets/js/site.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/themes/default/js/news.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/themes/ts_sharecode/js/main.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/themes/ts_sharecode/js/sweetalert.min.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/themes/ts_sharecode/toastr/toastr.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/themes/ts_sharecode/toastr/tienganh.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/php-email-form/validate.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/bootstrap/js/bootstrap.bundle.min.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/waypoints/jquery.waypoints.min.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/counterup/counterup.min.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/jquery.easing/jquery.easing.min.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/owl.carousel/owl.carousel.min.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/js/main.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/aos/aos.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/assets/js/select2/select2.min.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/themes/ts_sharecode/js/custom.js" type="text/javascript">
<link rel="preload" as="script" href="https://hoclaptrinh99.com/themes/ts_sharecode/js/bootstrap.min.js" type="text/javascript">
<link rel="preload" as="style" href="/assets/css/core.r.min.css?t=1764339859" type="text/css">
<link rel="preload" as="style" href="https://hoclaptrinh99.com/assets/css/font-awesome.min.css" type="text/css">
<link rel="preload" as="style" href="https://hoclaptrinh99.com/themes/ts_sharecode/css/bootstrap.min.css" type="text/css">
<link rel="preload" as="style" href="https://hoclaptrinh99.com/themes/ts_sharecode/css/style.css" type="text/css">
<link rel="preload" as="style" href="https://hoclaptrinh99.com/themes/ts_sharecode/css/style.responsive.css" type="text/css">
<link rel="preload" as="style" href="https://hoclaptrinh99.com/themes/ts_sharecode/css_custom/sweetalert.css" type="text/css">
<link rel="preload" as="style" href="https://hoclaptrinh99.com/themes/ts_sharecode/toastr/toastr.css" type="text/css">
<link rel="preload" as="style" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/css/style.css" type="text/css">
<link rel="preload" as="style" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/animate.css/animate.min.css" type="text/css">
<link rel="preload" as="style" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/owl.carousel/assets/owl.carousel.min.css" type="text/css">
<link rel="preload" as="style" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/remixicon/remixicon.css" type="text/css">
<link rel="preload" as="style" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/boxicons/css/boxicons.min.css" type="text/css">
<link rel="preload" as="style" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/icofont/icofont.min.css" type="text/css">
<link rel="preload" as="style" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/bootstrap/css/bootstrap.min.css" type="text/css">
<link rel="preload" as="style" href="https://hoclaptrinh99.com/assets/js/select2/select2.min.css" type="text/css">
<link rel="preload" as="style" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/aos/aos.css" type="text/css">
<link rel="preload" as="style" href="https://hoclaptrinh99.com/themes/ts_sharecode/css/custom.css" type="text/css">
<link rel="stylesheet" href="/assets/css/core.r.min.css?t=1764339859">
<link rel="stylesheet" href="https://hoclaptrinh99.com/assets/css/font-awesome.min.css">
<link rel="stylesheet" href="https://hoclaptrinh99.com/themes/ts_sharecode/css/bootstrap.min.css">
<link rel="stylesheet" href="https://hoclaptrinh99.com/themes/ts_sharecode/css/style.css">
<link rel="stylesheet" href="https://hoclaptrinh99.com/themes/ts_sharecode/css/style.responsive.css">
<link rel="stylesheet" href="https://hoclaptrinh99.com/themes/ts_sharecode/css_custom/sweetalert.css">
<link rel="stylesheet" href="https://hoclaptrinh99.com/themes/ts_sharecode/toastr/toastr.css">
<link rel="stylesheet" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/css/style.css">
<link rel="stylesheet" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/animate.css/animate.min.css">
<link rel="stylesheet" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/owl.carousel/assets/owl.carousel.min.css">
<link rel="stylesheet" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/remixicon/remixicon.css">
<link rel="stylesheet" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/boxicons/css/boxicons.min.css">
<link rel="stylesheet" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/icofont/icofont.min.css">
<link rel="stylesheet" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/bootstrap/css/bootstrap.min.css">
<link rel="stylesheet" href="https://hoclaptrinh99.com/assets/js/select2/select2.min.css">
<link rel="stylesheet" href="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/aos/aos.css">
<link rel="StyleSheet" href="https://hoclaptrinh99.com/themes/ts_sharecode/css/custom.css">
<style type="text/css">
    body{background: #fff;}
</style>
    </head>
    <body>
<div class="container-fluid"style="background-color:#fff;">
<div id="print">
    <div id="hd_print">
        <h2 class="pull-left">Học Lập Trình 99</h2>
        <p class="pull-right"><a title="Học Lập Trình 99" href="https://hoclaptrinh99.com/">https://hoclaptrinh99.com</a></p>
    </div>
    <div class="clear"></div>
    <hr />
    <div id="content">
        <h1>CÁCH LẤY PAGE TOKEN CHUẨN TRÊN FACEBOOK ĐỂ SỬ DỤNG GRAPH API</h1>
        <ul class="list-inline">
            <li>Thứ năm, 05 Tháng Ba 2026 8:22 SA</li>
            <li class="hidden-print txtrequired"><em class="fa fa-print">&nbsp;</em><a title="In ra" href="https://hoclaptrinh99.com/#" data-toggle="winCMD" data-cmd="print">In ra</a></li>
            <li class="hidden-print txtrequired"><em class="fa fa-power-off">&nbsp;</em><a title="Đóng cửa sổ này" href="https://hoclaptrinh99.com/#"  data-toggle="winCMD" data-cmd="close">Đóng cửa sổ này</a></li>
        </ul>
        <div class="clear"></div>
        <div id="hometext">
            Cách lấy Page Token Facebook chuẩn để sử dụng lấy dữ liệu đoạn chat của người dùng trên Page Facebook
        </div>
                <div class="imghome">
            <img alt="download" src="https://hoclaptrinh99.com/uploads/blog/2026_03/download.png" width="460" class="img-thumbnail" />
                        <p>
                <em>download</em>
            </p>
        </div>
        <div class="clear"></div>
        <div id="bodytext" class="clearfix">
            <p>CÁCH LẤY PAGE TOKEN FACEBOOK</p><p>Bước 1: Tạo 1 ứng dụng App tại link: <a href="https://developers.facebook.com/apps/">https://developers.facebook.com/apps/</a></p><p><img src="https://hoclaptrinh99.com/uploads/blog/2026_03/image_1.png" width="605" height="249" /></p><p>Bước 2: sau khi tạo app mở Dashborard, thực hiện thêm trường hợp sử dụng:</p><p><img src="https://hoclaptrinh99.com/uploads/blog/2026_03/image_2.png" width="605" height="297" /></p><p>Thêm option Tương tác với khác hàng trên Messenger form Meta</p><p><img src="https://hoclaptrinh99.com/uploads/blog/2026_03/image_3.png" width="605" height="236" /></p><p>Bước 3: Truy cập link để lấy User Access Token:</p><p><a href="https://developers.facebook.com/tools/explorer">https://developers.facebook.com/tools/explorer</a></p><p><img src="https://hoclaptrinh99.com/uploads/blog/2026_03/image_4.png" width="605" height="284" /></p><ol><li>Thực hiện chọn ứng dụng trên meta là Ứng dụng bạn vừa tạo ở bước 2</li><li>Người dùng hoặc Trang: Chọn đến Page Facebook</li><li>Thêm quyền</li></ol><p>pages_show_list<br />pages_messaging<br />pages_manage_metadata<br />business_management</p><p>Sau khi xong thực hiện Generate Access&nbsp; Token</p><p>Có thể test thử link bên trên: bấm gửi sẽ ra được đoạn thông tin Page, và PageID = data&#91;‘id’&#93; = 1912758555720941 ở ảnh bên dưới</p><p><img src="https://hoclaptrinh99.com/uploads/blog/2026_03/image.png" width="605" height="415" /></p><p>Bước 4: Thực hiện lấy Page Token bằng link:</p><p>$user_token: chính là bước 3 mình đã lấy được</p><p><a href="https://graph.facebook.com/v25.0/me/accounts?access_token">https://graph.facebook.com/v25.0/me/accounts?access_token</a>=&quot;. $user_token</p><p>Kết quả</p><p><img src="https://hoclaptrinh99.com/uploads/blog/2026_03/image_5.png" width="604" height="199" /></p><p>Page Token chính là key acces_token</p><p>Tổng hợp lại 4 bước trên ta có: Page Token, Page ID</p><p>Bước 5 thực hiện lấy danh sách Conversation bằng đoạn code PHP:</p><pre><code class="language-plaintext">$page_id = &quot;PAGE_ID&quot;;
$page_token = &quot;PAGE_ACCESS_TOKEN&quot;;
$url = &quot;https://graph.facebook.com/v25.0/$page_id/conversations? fields=id,snippet,updated_time,message_count,unread_count,participants,senders,can_reply,link &amp;access_token=$page_token&quot;;
$response = file_get_contents($url);
$data = json_decode($response,true);
print_r($data);</code></pre><p>Bước 6: Lấy toàn bộ tin nhắn trong chat:</p><pre><code class="language-plaintext">$conversation_id = &quot;CONVERSATION_ID&quot;;
$url = &quot;https://graph.facebook.com/v25.0/$conversation_id/messages?fields=message,from,created_time&amp;access_token=$page_token&quot;;
$response = file_get_contents($url);
$data = json_decode($response,true);
print_r($data);</code></pre><h1>1. Các field có thể lấy thêm từ conversations</h1><p>Các trường phổ biến của conversation giữa <strong>Page và khách hàng</strong> trong Facebook Messenger Platform:</p><figure class="table"><table><tr><th>Field</th><th>Ý nghĩa</th></tr><tbody><tr><td>id</td><td>ID của conversation</td></tr><tr><td>snippet</td><td>đoạn tin nhắn cuối</td></tr><tr><td>updated_time</td><td>thời gian cập nhật cuối</td></tr><tr><td>message_count</td><td>tổng số tin nhắn</td></tr><tr><td>unread_count</td><td>số tin chưa đọc</td></tr><tr><td>participants</td><td>danh sách người trong chat</td></tr><tr><td>senders</td><td>người gửi</td></tr><tr><td>can_reply</td><td>page có thể trả lời không</td></tr><tr><td>link</td><td>link mở conversation</td></tr></tbody></table></figure>
        </div>
                <div id="author">
                        <p>
                <strong>Tác giả:</strong>
                <a href="https://hoclaptrinh99.com/blog/author/Nguyen-Lam/">Nguyễn Lâm</a>
            </p>
        </div>
    </div>
    <div id="footer" class="clearfix">
        <div id="url">
            <strong>URL của bản tin này: </strong><a href="https://hoclaptrinh99.com/blog/savefile/khac/cach-lay-page-token-chuan-tren-facebook-de-su-dung-graph-api-23.html" title="CÁCH LẤY PAGE TOKEN CHUẨN TRÊN FACEBOOK ĐỂ SỬ DỤNG GRAPH API">https://hoclaptrinh99.com/blog/savefile/khac/cach-lay-page-token-chuan-tren-facebook-de-su-dung-graph-api-23.html</a>
        </div>
        <div class="clear"></div>
        <div class="copyright">
            &copy; Học Lập Trình 99
        </div>
        <div id="contact">
            <a href="mailto:hoclaptrinh99@gmail.com">hoclaptrinh99@gmail.com</a>
        </div>
    </div>
</div>
</div>
        <div id="timeoutsess" class="chromeframe">
            Bạn đã không sử dụng site, <a data-toggle="timeoutsesscancel" href="https://hoclaptrinh99.com/#">Bấm vào đây để duy trì trạng thái đăng nhập</a>. Thời gian chờ: <span id="secField"> 60 </span> giây
        </div>
        <div id="openidResult" class="nv-alert" style="display:none"></div>
        <div id="openidBt" data-result="" data-redirect=""></div>
<script src="https://hoclaptrinh99.com/assets/js/jquery/jquery.min.js"></script>
<script>var nv_base_siteurl="/",nv_assets_dir="assets",nv_lang_data="vi",nv_lang_interface="vi",nv_name_variable="nv",nv_fc_variable="op",nv_lang_variable="language",nv_module_name="blog",nv_func_name="savefile",nv_is_user=0, nv_my_ofs=-4,nv_my_abbr="EDT",nv_cookie_prefix="nv4",nv_check_pass_mstime=1738000,nv_area_admin=0,nv_safemode=0,theme_responsive=1,nv_recaptcha_ver=2,nv_recaptcha_sitekey="",nv_recaptcha_type="image",nv_turnstile_sitekey="",XSSsanitize=1,nv_jsdate_get="dd-mm-yyyy",nv_jsdate_post="dd/mm/yyyy",nv_gfx_width="150",nv_gfx_height="40",nv_gfx_num="6";</script>
<script src="https://hoclaptrinh99.com/assets/js/language/vi.js"></script>
<script src="https://hoclaptrinh99.com/assets/js/DOMPurify/purify3.js"></script>
<script src="https://hoclaptrinh99.com/assets/js/global.js"></script>
<script src="https://hoclaptrinh99.com/assets/js/site.js"></script>
<script src="https://hoclaptrinh99.com/themes/default/js/news.js"></script>
<script src="https://hoclaptrinh99.com/themes/ts_sharecode/js/main.js"></script>
<script src="https://hoclaptrinh99.com/themes/ts_sharecode/js/sweetalert.min.js"></script>
<script src="https://hoclaptrinh99.com/themes/ts_sharecode/toastr/toastr.js"></script>
<script src="https://hoclaptrinh99.com/themes/ts_sharecode/toastr/tienganh.js"></script>
<script src="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/php-email-form/validate.js"></script>
<script src="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/bootstrap/js/bootstrap.bundle.min.js"></script>
<script src="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/waypoints/jquery.waypoints.min.js"></script>
<script src="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/counterup/counterup.min.js"></script>
<script src="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/jquery.easing/jquery.easing.min.js"></script>
<script src="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/owl.carousel/owl.carousel.min.js"></script>
<script src="https://hoclaptrinh99.com/themes/ts_sharecode/assets/js/main.js"></script>
<script src="https://hoclaptrinh99.com/themes/ts_sharecode/assets/vendor/aos/aos.js"></script>
<script src="https://hoclaptrinh99.com/assets/js/select2/select2.min.js"></script>
<script src="https://hoclaptrinh99.com/themes/ts_sharecode/js/custom.js"></script>
<script>        // Debug AOS
        console.log("Checking AOS...");
        function initAOS() {
            if (typeof AOS !== "undefined") {
                console.log("AOS found, initializing...");
                AOS.init({
                    duration: 1000,
                    easing: "ease-in-out",
                    once: false,
                    mirror: true,
                    offset: 50,
                    delay: 0
                });
                console.log("AOS initialized successfully");
            } else {
                console.error("AOS library not found!");
            }
        }
        if (document.readyState === "loading") {
            document.addEventListener("DOMContentLoaded", initAOS);
        } else {
            initAOS();
        }</script>
<script src="https://hoclaptrinh99.com/themes/ts_sharecode/js/bootstrap.min.js"></script>
<script>
        $(function() {
            // Check wallet transaction status - chỉ hiển thị 1 lần
            $.ajax({
                url: '/index.php?language=vi&nv=wallet&op=check_transaction',
                type: 'POST',
                dataType: 'json',
                success: function(response) {
                    if (response.status === 'success' && response.transaction_info) {
                        swal({
                            title: "Thông báo",
                            text: response.transaction_info,
                            type: "success"
                        });
                    }
                },
                error: function() {
                    console.log('Error checking wallet transaction');
                }
            });
        });
        </script>
</body>
</html>