# Access Control Layer

A kind of Proxy layer called ACL is introduced to the framework. Now, every Smart Contract has the native power to review, limit, restrict, or redirect any endpoint request.

Data stored inside a scope might be confidential, and the need to make it private arises, at least when certain conditions are met. Alternatively, your data structures inside your NxtFi implementation may require some processing before delivery in certain actions. These are some of the use-cases that require the implementation of ACL middleware.

Having a proxy context to execute instructions before data delivery from the API is a very powerful feature. It enables privacy and protection for blocks and data storage, thus allowing for the capability to personalize responses granularly for different requests on the same endpoint.

Lets dive into this feature starting from:

* [How it works](/access-control-layer/how-it-works.md).
* [Syntax & Smart Contract requirements](/access-control-layer/syntax-and-smart-contract-requirements.md).
* [Error & exceptions handling.](broken://pages/L30dKhhzI437KBxC70QN)
* [Examples](broken://pages/sTs7QW6ofSkh7OGbDcFm)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.nxtfi.org/access-control-layer.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
