# Agent Read state with status 451

**URL:** <https://forum.dfinity.org/t/agent-read-state-with-status-451/13329>\
**Category:** Developers\
**Tags:** Discussing\
**Created:** [May 28, 2022, 5:00am UTC](https://forum.dfinity.org/t/agent-read-state-with-status-451/13329 "2022-05-28T05:00:46Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![pyd](https://avatars.discourse-cdn.com/v4/letter/p/a4c791/32.png) [@pyd](https://forum.dfinity.org/u/pyd)\
**Post date:** [May 28, 2022, 5:00am UTC](https://forum.dfinity.org/t/agent-read-state-with-status-451/13329/1 "2022-05-28T05:00:46Z")

</div>

When I try to get the canister hash of lwio7-laaaa-aaaad-qb25q-cai using [https://github.com/mix-labs/IC-Go](https://go-agent), the resp status is “451 Unavailable For Legal Reasons”. I want to know what this means? The canister has been deleted? Or the canister hash is not public anymore?

---

<div class="post-metadata">

**Author:** ![paulyoung](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/paulyoung/32/5251_2.png) [@paulyoung](https://forum.dfinity.org/u/paulyoung)\
**Post date:** [May 28, 2022, 5:53am UTC](https://forum.dfinity.org/t/agent-read-state-with-status-451/13329/2 "2022-05-28T05:53:31Z")

</div>

This says the same thing: [https://lwio7-laaaa-aaaad-qb25q-cai.ic0.app/](https://lwio7-laaaa-aaaad-qb25q-cai.ic0.app/)

---

<div class="post-metadata">

**Author:** ![paulyoung](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/paulyoung/32/5251_2.png) [@paulyoung](https://forum.dfinity.org/u/paulyoung)\
**Post date:** [May 28, 2022, 6:00am UTC](https://forum.dfinity.org/t/agent-read-state-with-status-451/13329/3 "2022-05-28T06:00:58Z")

</div>

> <https://twitter.com/ic_scan/status/1530427932115468288>

 ![image](https://us1.discourse-cdn.com/flex023/uploads/dfn/original/2X/5/5582f38c7ddf719c3ec1ecf875bc7f778aaf2f83.jpeg)

---

<div class="post-metadata">

**Author:** ![Vivienne](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/vivienne/32/29170_2.png) [@Vivienne](https://forum.dfinity.org/u/Vivienne)\
**Post date:** [May 30, 2022, 6:54am UTC](https://forum.dfinity.org/t/agent-read-state-with-status-451/13329/4 "2022-05-30T06:54:30Z")

</div>

> [@pyd](#):
>
> I want to know what this means? The canister has been deleted? Or the canister hash is not public anymore?

This means the boundary node you’re trying to access the canister through does not serve responses from that canister. You can read more about that approach here: [Boundary Nodes as Censors](https://forum.dfinity.org/t/boundary-nodes-as-censors/9640). As for the reasons why this canister is blocked, I don’t know.

---

<div class="post-metadata">

**Author:** ![cryptoschindler](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/cryptoschindler/32/26_2.png) [@cryptoschindler](https://forum.dfinity.org/u/cryptoschindler)\
**Post date:** [June 1, 2022, 12:29pm UTC](https://forum.dfinity.org/t/agent-read-state-with-status-451/13329/5 "2022-06-01T12:29:00Z")

</div>

How can we access this canister to find out without going through the boundary nodes deployed by the foundation? Can I setup my own gateway to the IC right now?

---

<div class="post-metadata">

**Author:** ![Vivienne](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/vivienne/32/29170_2.png) [@Vivienne](https://forum.dfinity.org/u/Vivienne)\
**Post date:** [June 1, 2022, 12:45pm UTC](https://forum.dfinity.org/t/agent-read-state-with-status-451/13329/6 "2022-06-01T12:45:02Z")

</div>

From [this reddit post](https://www.reddit.com/r/dfinity/comments/v276c6/can_canisters_be_taken_down_by_a_3rd_party/):

"Currently all boundary nodes are run by DFINITY (and so far only canisters that would have caused the ic0.app domain to be taken down, such as obvious phishing sites, are being blocked) but there’s [ongoing work](https://forum.dfinity.org/t/path-forward-on-leveraging-boundary-nodes-for-content-filtering/10911) to decentralize them and allow anyone to run their own boundary nodes, under their own web domain.

That way, if one boundary node operator blocks access to a canister, it can still be accessed via other operators’ boundary nodes. With operators under different legal jurisdictions, it is quite likely that any canister (except egregious offenders, such as child abuse content) will be accessible through one boundary node or other."

---

<div class="post-metadata">

**Author:** ![cryptoschindler](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/cryptoschindler/32/26_2.png) [@cryptoschindler](https://forum.dfinity.org/u/cryptoschindler)\
**Post date:** [June 3, 2022, 9:52pm UTC](https://forum.dfinity.org/t/agent-read-state-with-status-451/13329/7 "2022-06-03T21:52:53Z")

</div>

Yes that’s nice, but if I want to run a boundary node right now, how do I do this? Is there any repo out there? I believe fleek does this since a couple of months and I’d love to play around with it 🙂

---

<div class="post-metadata">

**Author:** ![Vivienne](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/vivienne/32/29170_2.png) [@Vivienne](https://forum.dfinity.org/u/Vivienne)\
**Post date:** [June 7, 2022, 6:27am UTC](https://forum.dfinity.org/t/agent-read-state-with-status-451/13329/8 "2022-06-07T06:27:07Z")

</div>

The thing fleek does is for their own domain, not the ic0 one IIRC. I am not sure how they do it. Maybe @domwoe knows where to dig up more info on that one?

---

<div class="post-metadata">

**Author:** ![paulyoung](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/paulyoung/32/5251_2.png) [@paulyoung](https://forum.dfinity.org/u/paulyoung)\
**Post date:** [June 7, 2022, 6:57am UTC](https://forum.dfinity.org/t/agent-read-state-with-status-451/13329/9 "2022-06-07T06:57:36Z")

</div>

In case this helps, I believe Origyn is just running `icx-proxy` behind a custom domain instead of a full boundary node.

See thread:

> [@Boundary node http response headers](https://forum.dfinity.org/t/boundary-node-http-response-headers/10747/60):
>
> Range requests work through icx proxy. See: [https://nft.origyn.network/-/nftforgood\_uffc/-/ogy.nftforgood\_uffc.1/social](https://nft.origyn.network/-/nftforgood_uffc/-/ogy.nftforgood_uffc.1/social) Even works in safari for the most part.

---

<div class="post-metadata">

**Author:** ![domwoe](https://sea1.discourse-cdn.com/flex023/user_avatar/forum.dfinity.org/domwoe/32/5165_2.png) [@domwoe](https://forum.dfinity.org/u/domwoe)\
**Post date:** [June 7, 2022, 10:43am UTC](https://forum.dfinity.org/t/agent-read-state-with-status-451/13329/10 "2022-06-07T10:43:27Z")

</div>

There’s no way to access the replicas of the Internet Computer without going through the boundary nodes and hence there’s no way to run a boundary node yourself because this node would talk to the replicas directly. There’s ongoing work on how to decentralize operation of boundary nodes but we aren’t there yet.

If you run [icx-proxy](https://github.com/dfinity/icx-proxy), your request will still go through a regular boundary node, but not through the icx-proxy at the boundary node since your instance already performs the encapsulation of the HTTP request to a proper IC API call.
