# Authz

Authz Precompiles contract is a gate-way that allowed Solidity contracts can interact with Cosmos SDK Authz module. By this, user now can grants permission to execute a specific message to differents address.

## Solidity Interfaces

The Authz solidity interfaces include the following transactions:

* grant

Grant method allow to register grant in Authz module

```
function grant(
        address granter,
        address grantee,
        string memory denom
    ) external view returns (uint256 amount);
```

* setGrant

SetGrant method allow to grant a message in Authz module

```
function setGrant(
        address grantee,
        string memory denom,
        uint256 amount
    ) external returns (bool success);
```

* execGrant

ExecGrant method allowed caller to execute grant message

```
function execGrant(
        address granter,
        address recipient,
        string memory denom,
        uint256 amount
    ) external returns (bool success);
```


---

# 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.orai.io/developer-guides/oraichainevm/smart-contracts/authz.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.
