# Method whitelisting

Defining the methods that are going to be whitelisted can be done when the wrapper token is being offered for rent by calling the following function defined in Renfter smart contract:

{% code lineNumbers="true" %}

```solidity
function offerForRent(
        address wContract,
        uint256 tokenId,
        uint96 pricePerSecond,
        uint64 maxRendDuration,
        IMethodWhitelist.WhitelistedDTO[] calldata whitelisted
 ) external;
```

{% endcode %}

{% hint style="info" %}
Description of used structures can be found in [Smart Contract Documentation](/developers/integration/smart-contracts/documentation.md), under `Structure` page.
{% endhint %}

<mark style="color:red;">`whitelisted`</mark> parameter should contain an array of [WhitelistedDTO](https://renfter.gitbook.io/renter-protocol-smart-contracts/docs/structs#whitelisted-1) structure objects. This object contains info about the method selector, the call limit of the method, and if it's whitelisted or not. The lender can call the following function of NFT collection wrapper in order to add/remove whitelist and configure it:

{% code lineNumbers="true" %}

```solidity
function setWhitelistedMethods(
    uint256 tokenId,
    WhitelistedDTO[] calldata whitelisted
)
```

{% endcode %}

{% hint style="warning" %}
The whitelist can only be changed only when the token of interest is not rented out.
{% endhint %}


---

# 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.renfter.com/developers/integration/smart-contracts/functionality-specific-details/method-whitelisting.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.
