Facebook’s Open Graph API stands out as a powerful tool for developers and businesses alike. It allows you to interact with Facebook’s vast ecosystem, sharing content, managing pages, and accessing user data seamlessly. However, one common challenge developers face is the expiration of access tokens, which can disrupt the functionality of applications and services relying on Facebook’s API.
In this tutorial, I’ll guide you through the process of creating a permanent Facebook Open Graph access token that never expires. By following the steps outlined here, you will learn how to generate a permanent access token from a long-lived access token that can be used for continuous access to the Open Graph API without the need for frequent renewals. This will not only save you time but also enhance the reliability of your applications.
Whether you’re a seasoned developer or just starting with Facebook’s API, this tutorial will provide you with the knowledge and tools necessary to streamline your integration process. Let’s see how to unlock the full potential of Facebook’s Open Graph API with a permanent Page access token!
What You Need to Begin
Here are the preliminary Set-Up tasks.
Get your Page ID ready
Ensure you have a Facebook page ID.
If your page is part of a Business Portfolio, your page ID will be found here: https://business.facebook.com/latest/settings/pages
(Business Portfolio Info > Accounts > Pages)
If your page is NOT part of a Business Portfolio, it’s in the URL here: https://business.facebook.com/latest/home?asset_id=THISNUMBER
Create a Facebook Developer App
Go to the Facebook Developer website and sign up if you haven’t already.
Once you’re in, click “Create App”
Give your app a name and email. I just use my page name. Click Next.
On Add use cases, click “Other” at the bottom. Click Next.
On Select an app type, select “Business”. Click Next.
On “Business portfolio” select your Business portfolio if you have one.
Click “Create App” to finish up.

Ok, once you have those things ready to go, you can begin the process!
Open up Two Tabs
Graph API Explorer: https://developers.facebook.com/tools/explorer/
Access Token Debugger: https://developers.facebook.com/tools/debug/accesstoken/
Start in the Graph API Explorer page
Under “Meta App” select your App from the dropdown menu
Under “User or Page” select “Get User Access Token” from the dropdown
Under Permissions, click the dropdown “Add a Permission” and select the required permissions.
Most will be found in the “Events Groups Pages” section for FB Pages and “Other” for Instagram. I select these to enable both Instagram and Facebook publishing and commenting:
business_management
instagram_manage_events
pages_manage_engagement
pages_manage_posts
pages_messaging
pages_read_engagement
instagram_basic
instagram_content_publish
instagram_manage_comments
instagram_manage_messages
publish_video
Above, click the big blue button “Generate Access Token.”
A pop-up will ask for your permission. Click “Continue” and select the page(s) you want to publish to. Click Save. Click Got it.
Under “Access Token” click the two-paper icon next to the generated token field beginning with E to copy the generated token.
Go to the Access Token Debugger page
Paste the copied token and press “Debug”
Scroll to the very bottom.
Click the “Extend Access Token” button, enter your password if asked, and copy the generated long-lived user access token in green letters.
Go back to the Graph API Explorer tab
Paste the copied token into the “Access Token” field at the top right.
Towards the top, make a GET request by replacing the “me/accounts” text with YOUR_PAGE_ID?fields=access_token
Click Submit.
The “access_token” key will display your permanent Facebook Page access token!
If you are using n8n, this is the token you will paste into your Facebook Graph Credentials.
Optional: Verify Token in the Access Token Debugger
If you want, you can verify your token is valid by going back to the “Debugger” tab.
Paste your permanent token and press “Debug”
“Expires” should display “Never”