---
title: Access Durable Object jurisdiction via `ctx.id.jurisdiction`
description: Read the jurisdiction of a Durable Object from within the object itself.
image: https://developers.cloudflare.com/changelog-preview.png
---

> Documentation Index  
> Fetch the complete documentation index at: https://developers.cloudflare.com/changelog/llms.txt  
> Use this file to discover all available pages before exploring further. 

[Skip to content](#%5Ftop) 

# Changelog

New updates and improvements at Cloudflare.

[ Subscribe to RSS ](https://developers.cloudflare.com/changelog/rss/index.xml) [ View RSS feeds ](https://developers.cloudflare.com/fundamentals/new-features/available-rss-feeds/) 

![hero image](https://developers.cloudflare.com/_astro/hero.CVYJHPAd_26AMqX.svg) 

[ ← Back to all posts ](https://developers.cloudflare.com/changelog/) 

## Access Durable Object jurisdiction via \`ctx.id.jurisdiction\`

Mar 26, 2026 

[ Durable Objects ](https://developers.cloudflare.com/durable-objects/)[ Workers ](https://developers.cloudflare.com/workers/) 

`ctx.id.jurisdiction` inside a Durable Object now reports the [jurisdiction](https://developers.cloudflare.com/durable-objects/reference/data-location/#restrict-durable-objects-to-a-jurisdiction) the object was created in — for example `"eu"` when accessed through `env.MY_DURABLE_OBJECT.jurisdiction("eu")` — so you can make region-aware decisions without passing the jurisdiction through method arguments or persisting it in storage. For the full list of ID-construction paths that preserve `jurisdiction`, refer to the [Durable Object ID documentation](https://developers.cloudflare.com/durable-objects/api/id/#jurisdiction).

JavaScript

```
export class RegionalRoom extends DurableObject {  async fetch(request) {    // "eu" when accessed through env.MY_DURABLE_OBJECT.jurisdiction("eu")    const region = this.ctx.id.jurisdiction;    return new Response(`Hello from ${region ?? "the default region"}!`);  }}
// Workerexport default {  async fetch(request, env) {    const stub = env.MY_DURABLE_OBJECT.jurisdiction("eu").getByName("general");    return stub.fetch(request);  },};
```

`ctx.id.jurisdiction` is `undefined` for Durable Objects that were not created in a jurisdiction-restricted namespace. Alarms scheduled before 2026-03-15 also do not have `jurisdiction` stored; to backfill the value, reschedule the alarm from a `fetch()` or RPC handler.

```json
{"@context":"https://schema.org","@type":"BlogPosting","@id":"https://developers.cloudflare.com/changelog/post/2026-03-26-durable-object-id-jurisdiction/#page","headline":"Access Durable Object jurisdiction via `ctx.id.jurisdiction` · Changelog","description":"Read the jurisdiction of a Durable Object from within the object itself.","url":"https://developers.cloudflare.com/changelog/post/2026-03-26-durable-object-id-jurisdiction/","inLanguage":"en","image":"https://developers.cloudflare.com/changelog-preview.png","dateModified":"2026-03-26","datePublished":"2026-03-26","publisher":{"@type":"Organization","name":"Cloudflare","url":"https://www.cloudflare.com/"},"isPartOf":{"@type":"WebSite","@id":"https://developers.cloudflare.com/#website","name":"Cloudflare Docs","url":"https://developers.cloudflare.com/"}}
```
