Instant Games

Zero Permissions

Updated: Mar 3, 2026
Copy for LLM
Zero Permissions is a networking mode for Instant Games that allows your game to make network requests to external servers. By default, Instant Games run in a sandboxed environment that restricts outbound network access to Facebook-owned domains. Zero Permissions lifts this restriction, giving your game the ability to communicate with your own backend servers and third-party APIs.
This mode was formerly known as “Network Enabled Zero Permissions” (NEZP). If you see references to NEZP in older documentation or tooling, it refers to the same capability described here.

Why You Might Need Zero Permissions

Many Instant Games can be built entirely as client-side applications, using the Instant Games SDK for data persistence, social features, and monetization. However, some games require server-side capabilities that go beyond what the SDK provides. Zero Permissions enables these use cases.

Multiplayer and Real-Time Communication

If your game features real-time multiplayer gameplay — such as turn-based matches with live updates, cooperative play, or competitive PvP — you likely need a backend server to coordinate game state between players. Zero Permissions allows your game client to open WebSocket connections or make HTTP requests to your multiplayer server.

Server-Side Game Logic

For games that require authoritative server-side logic — such as anti-cheat validation, matchmaking, server-side economy management, or procedural content generation — Zero Permissions enables the game client to communicate with your backend services.

External APIs and Services

If your game integrates with third-party services — such as analytics platforms, custom leaderboard services, content delivery networks for dynamic assets, or machine learning APIs — Zero Permissions allows those outbound requests.

Custom Authentication and User Management

While the Instant Games SDK provides player identity through Facebook, some developers maintain their own user accounts or need to integrate with existing user management systems. Zero Permissions allows your game to authenticate with your own backend.

How Zero Permissions Works

Zero Permissions overall structure
When Zero Permissions is enabled for your app, the Instant Games runtime uses Content Security Policy (CSP) to control which external domains your game can use. You can configure trusted domains in the App Dashboard so your game can:
  • Make HTTPS requests (via fetch, XMLHttpRequest, or similar APIs) to your own servers or third-party APIs.
  • Use secure WebSocket connections for real-time communication.
  • Load external resources such as scripts, images, or other assets from your own CDN.
Without Zero Permissions enabled, any attempt to make requests to non-Facebook domains will be blocked by the platform’s security policy, and you will see errors in the browser console.

Enabling Zero Permissions

To enable Zero Permissions for your Instant Game:
  1. Go to the App Dashboard and select your app.
  2. Navigate to Instant Games in the left sidebar.
  3. Under the settings or configuration section, find the Zero Permissions option.
  4. Toggle Zero Permissions to Enabled.
  5. Save your changes.
Once enabled, the change takes effect for all new game sessions. Players who are currently in a session may need to restart the game to pick up the updated configuration.

Requirements and Considerations

HTTPS Required

All external network requests from your game must use HTTPS. Plain HTTP connections are not supported and will be blocked. Ensure that your backend servers and any third-party APIs you integrate with support HTTPS.

Content Security Policy Configuration

If your game needs to communicate with external services or load assets from external domains, add those domains to the Content Security Policy configuration in the App Dashboard. For complete setup steps, see Content Security Policy.
The CSP configuration is shared across Instant Games owned by the same business portfolio. You need permission to manage Instant Games for the owning business to change this configuration.
Supported directives:
DirectiveUse this when your game needs to
connect-src
Make network requests with fetch, XMLHttpRequest, WebSockets, or similar APIs.
font-src
Load font files.
frame-src
Load iframe content.
img-src
Load images.
media-src
Load audio or video.
script-src
Load JavaScript.
style-src
Load stylesheets.
New domains must have valid SSL certificates before they can be added. Wildcard domains, scheme sources such as data:, and CSP keywords such as 'unsafe-inline' are not accepted through the self-serve configuration UI.
Some common domains may already be allowed by the platform. However, if your game depends on an external domain, add it to your CSP configuration so the dependency remains explicit and easier to maintain.

App Review

Games with Zero Permissions enabled are subject to the same review process as all Instant Games. However, reviewers may ask additional questions about how your game uses network access, particularly if your game communicates with servers that handle player data. Be prepared to explain the purpose of your external network requests.

Data Privacy and Compliance

When your game communicates with external servers, you are responsible for complying with all applicable data privacy laws and Facebook Platform policies. Specifically:
  • Do not transmit Facebook user data (such as player IDs, names, or photos) to your servers without complying with the Facebook Platform Terms and applicable privacy regulations.
  • Ensure that your server-side data handling practices are documented in your app’s privacy policy.
  • If you store player data on your servers, implement appropriate security measures to protect that data.

Performance Considerations

Network requests to external servers introduce latency that is outside of Facebook’s control. Consider the following:
  • Minimize blocking requests during loading. If your game needs to fetch data from your server at startup, do so in parallel with asset loading and report progress to the player using FBInstant.setLoadingProgress().
  • Handle network failures gracefully. Mobile players may have unreliable connections. Implement timeouts, retries, and offline fallbacks where appropriate.
  • Use regional servers. Instant Games have a global audience. If you run your own backend, consider deploying servers in multiple regions to reduce latency for players worldwide.

Zero Permissions vs. Older Networking Restrictions

In earlier versions of the Instant Games platform, networking was either fully restricted (no external requests allowed) or required manual configuration to enable limited access. Zero Permissions and self-serve CSP configuration replace those older models with a dashboard-based flow: enable Zero Permissions, add the external domains your game depends on, and select the CSP directives your game needs for each domain.
If your game was previously configured with an older networking mode, we recommend migrating to Zero Permissions for the most straightforward and fully supported experience.

Migration Guides

If you are moving to Instant Games from another platform, the following guides walk you through the process:

Next Steps

  • Quick Start — If you are new to Instant Games, start here to build your first game.
  • Unity Plugin — If you are building your game in Unity, use the Unity plugin for C# access to the full SDK including overlay views.
  • Game Testing — Learn how to test your game on the platform, including testing network requests.
  • Bundle Configuration — Configure your game bundle with fbapp-config.json.
  • SDK Reference — Full API documentation for the Instant Games SDK.