# Swaps

Each token has it's own implementation and each chain is different, so in order to cover ALL tokens on the chains we support, we built 4 different mechanisms so tokens that can't be swapped using one mechanism can be covered by another mechanism, thus allowing us to provide swaps for ALL tokens.

## Different types of swaps

In order for SmolRefuel to handle swapping **all** tokens across different networks, we have 4 different types of swaps.

* Permit Swaps - Tokens that support the permit function allow us to transfer and swap your coins to gas, all you need to do is a sign a single message, gas-free.
* Uncollateralized Loan Swaps - For tokens that do not support permit, we loan the user just enough gas to approve trade of the coin they are swapping without taking collateral. In order to get the loan you must sign a transaction agreeing to go through with the swap completely. After using our loan to approve your token, the swap will be completed, the loan will be repaid and you will receive your gas.
* Delegated Swaps - When you have enough gas to approve a token for trade but not enough for a swap, we can trigger the swap transaction for you
* Bundle/MEV Swaps- After switching over to our own RPC, the RPC pretends that your wallet has gas and allows you to submit an approval transaction for your token. After sending this transaction to our RPC, we submit a bundle to Flashbots with the following transactions:&#x20;
  1. We send you gas so you can approve your token
  2. The approval transaction you submitted is confirmed
  3. Your coins are swapped and the gas is sent to you

## Other transactions

For chains where we do not yet support gas-less swaps, we have integrated 3rd party bridge providers so users can send gas across 81 different chains in order to refuel.&#x20;


---

# 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.smolrefuel.com/swaps.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.
