Temporary access token
Generated directly in the Meta developer dashboard under WhatsApp → API Setup → “Generate access token”. It works immediately but expires in approximately 24 hours. Use only for testing — never in production.Permanent system-user token
Generated via Meta Business Manager (business.facebook.com):
Generate the token
Click Generate token on that system user, assign the app and required permissions
(
whatsapp_business_messaging, whatsapp_business_management).Walkthrough screenshots





Frequently asked
Why did my WhatsApp API stop working overnight?
Why did my WhatsApp API stop working overnight?
Almost certainly your temporary access token expired (~24h). Switch to a permanent
system-user token for any production use.
How do I get a token that never expires?
How do I get a token that never expires?
Create a system user in Meta Business Manager, generate a token for that system user with
the WhatsApp permissions, and use that token in your API calls. It does not expire.
What is a system user?
What is a system user?
A non-human admin account in Meta Business Manager used to generate permanent tokens for
automated systems (bots, integrations). It is not tied to a personal Facebook account, so
it won’t expire when someone leaves the team.
How do I check if my token is valid?
How do I check if my token is valid?
Paste it into the Meta Access Token Debugger at
developers.facebook.com/tools/debug/accesstoken/ and click Debug. It shows the token’s
expiry, permissions, and whether it is still valid.
