Browse documentation

Access tokens and permissions

Why short-lived tokens keep breaking, and how to generate one that does not expire.

MsgOrb calls Meta with the token you connect. If that token expires or lacks permissions, every send, every template submission and every status sync fails at once.

Use a System User token

Tokens copied from Meta's API Setup page or the Graph API Explorer are short-lived — often one or two hours — and frequently lack the permissions MsgOrb needs. They work when you paste them and stop working the same day.

Generate a permanent one instead:

  1. 1Go to business.facebook.com → Settings → Users → System users.
  2. 2Select or create a system user with admin access.
  3. 3Click Add Assets and assign both your Meta app and your WhatsApp Business Account.
  4. 4Click Generate new token. Choose your app, set Token expiration to Never.
  5. 5Tick whatsapp_business_messaging and whatsapp_business_management. Both are required.
  6. 6Copy the token and paste it into WhatsApp Settings.

You can check any token's permissions and expiry at Meta's Access Token Debugger.

What MsgOrb shows you when a token goes bad

  • A red banner across the dashboard: WhatsApp connection expired — messages are not being delivered.
  • An amber banner when a stored expiry is less than seven days away.
  • On Delivery and Queue Health, failures reading *Your WhatsApp access token does not have the permissions Meta requires* (Meta error 131005). That error is never retried, because a retry cannot add a missing permission to a token.
Never paste a token into a support ticket, a chat message or a shared document. Anyone holding it can send messages as your business.