Changelog
New updates and improvements at Cloudflare. Subscribe to RSS
Access your Worker's environment variables from process.env
You can now access environment variables and
secrets on process.env
when using the nodejs_compat
compatability flag.
const apiClient = ApiClient.new({ apiKey: process.env.API_KEY });const LOG_LEVEL = process.env.LOG_LEVEL || "info";
In Node.js, environment variables are exposed via the global process.env
object. Some libraries
assume that this object will be populated, and many developers may be used to accessing variables
in this way.
Previously, the process.env
object was always empty unless written to in Worker code. This could
cause unexpected errors or friction when developing Workers using code previously written for Node.js.
Now, environment variables,
secrets, and version metadata
can all be accessed on process.env
.
To opt-in to the new process.env
behaviour now, add the nodejs_compat_populate_process_env
compatibility flag to your
wrangler.json
configuration:
{ // Rest of your configuration // Add "nodejs_compat_populate_process_env" to your compatibility_flags array "compatibility_flags": ["nodejs_compat", "nodejs_compat_populate_process_env"], // Rest of your configuration
compatibility_flags = [ "nodejs_compat", "nodejs_compat_populate_process_env" ]
After April 1, 2025, populating process.env
will become the default behavior when both nodejs_compat
is enabled and
your Worker's compatability_date
is after "2025-04-01".
Was this helpful?
- Resources
- API
- New to Cloudflare?
- Products
- Sponsorships
- Open Source
- Support
- Help Center
- System Status
- Compliance
- GDPR
- Company
- cloudflare.com
- Our team
- Careers
- 2025 Cloudflare, Inc.
- Privacy Policy
- Terms of Use
- Report Security Issues
- Trademark