> For the complete documentation index, see [llms.txt](https://sinqlarity.gitbook.io/sinqlarity-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://sinqlarity.gitbook.io/sinqlarity-docs/contract-details/gas-whitelist.md).

# GAS WHITELIST

### DESCRIPTION

The GasWhitelist contract allows users to get whitelisted without paying gas fees. Instead, they need to sign a message using the keccak256 hashing algorithm. The contract provides a function to check if an address is in the whitelist by verifying a merkle proof against the merkle root. This allows for efficient and gas-free verification of address whitelist status.

### FUNCTIONS

1. **checkInWhitelist(bytes32\[] calldata proof, uint64 maxAllowanceToMint) view public returns (bool)**

* **Parameters:**

a. **proof -** An array of proof elements for verifying the membership of an address in the whitelist.

b. **maxAllowanceToMint -** The maximum number of tokens that can be minted.

* **Description:** A function to check if an address is in the whitelist by verifying the proof against the merkle root.
* **Returns:** A boolean value indicating whether the verification is successful or not.

2. **merkleRoot()**&#x20;

### EXTRA PARAMETERS

1. **merkleRoot: bytes32 (string)**

**Contract Level:** Easy

**Utility Tags:** Address Whitelisting, Gas-free Verification, Merkle Proof

### USES

1. **Token Sales and Airdrops:** Gas Whitelist can be used in token sales or airdrop campaigns where users need to be whitelisted to participate. By allowing users to sign a message instead of paying gas fees, it lowers the entry barrier and encourages wider participation.
2. **Access Control and Permissions:** Gas Whitelist can be utilized in systems where access control and permissions are crucial. For example, in decentralized applications (dApps), certain features or actions may be restricted to whitelisted addresses. Gas Whitelist enables gas-free address verification for granting access privileges.
3. **Membership-Based Services:** Platforms offering membership-based services can use Gas Whitelist for managing and verifying member addresses. By leveraging merkle proofs, the contract provides an efficient and cost-effective way to validate membership status without incurring high gas fees for each verification.
4. **Whitelist-Based Token Minting:** Gas Whitelist can be integrated with token minting mechanisms to ensure that only whitelisted addresses are eligible to mint tokens. This can be useful in scenarios such as non-fungible token (NFT) projects where limited edition or exclusive tokens are reserved for whitelisted participants.
5. **Identity Verification:** Gas Whitelist can serve as a component in identity verification systems. By using merkle proofs to make sure an address is real, it provides a gas-efficient way to build trust and confirm users' identities without needing to do a lot of work on the blockchain.
6. **Gaming and Virtual Worlds:** Gas Whitelist can be used in gaming platforms or virtual worlds where access to certain in-game features, items, or privileges is restricted to whitelisted addresses. It allows for efficient address verification, ensuring that only authorized participants can access exclusive gameplay elements.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://sinqlarity.gitbook.io/sinqlarity-docs/contract-details/gas-whitelist.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
