> ## Documentation Index
> Fetch the complete documentation index at: https://docs.eco.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Gelato Network (gelato)

> Web3 automation network for scheduling and executing smart contract functions and off-chain computations.

Web3 automation network for scheduling and executing smart contract functions and off-chain computations.

| Fact | Value |
| - | - |
| Category | Infrastructure and standards |
| Family | none |
| Namespace | `Gelato` on ethereum, optimism, bsc, polygon, base, arbitrum, avalanche |
| Chains | ethereum, optimism, bsc, polygon, base, arbitrum, avalanche |

## What it offers

* **createTask**: Create an automated task for scheduled execution
* **cancelTask**: Cancel an existing automated task

## Notes

* Same address across all 7 chains
* Supports time-based triggers, event-based triggers, and custom resolver conditions
* Gelato bots execute tasks when conditions are met, paid via prepaid balance or task fee
* moduleData configures when the task should execute (time interval, resolver function, etc.)
* feeToken: use address(0) for ETH, or an ERC-20 address for token payment
* Module types: 0=Resolver (custom check), 1=Time (interval), 2=Proxy, 3=SingleExec
* args\[] contains encoded config for each module

## Its names in a program

On Ethereum, `Gelato` is a namespace: its contracts need no import.

```ts theme={null}
function main() {
  // Ethereum's automate, `0x2A6C106ae13B558BB9E2Ec64Bd2f1f7BEFF3A5E0`.
  require(Gelato.Automate != 0);
}
```

## Deployments

| Chain | Contract | Address | In a program |
| - | - | - | - |
| [Ethereum](https://docs.eco.com/sauce-sdk/reference/chains/ethereum.md) | automate | `0x2A6C106ae13B558BB9E2Ec64Bd2f1f7BEFF3A5E0` | `Gelato.Automate` |
| [Optimism](https://docs.eco.com/sauce-sdk/reference/chains/optimism.md) | automate | `0x2A6C106ae13B558BB9E2Ec64Bd2f1f7BEFF3A5E0` | `Gelato.Automate` |
| [BNB Chain](https://docs.eco.com/sauce-sdk/reference/chains/bsc.md) | automate | `0x2A6C106ae13B558BB9E2Ec64Bd2f1f7BEFF3A5E0` | `Gelato.Automate` |
| [Polygon](https://docs.eco.com/sauce-sdk/reference/chains/polygon.md) | automate | `0x2A6C106ae13B558BB9E2Ec64Bd2f1f7BEFF3A5E0` | `Gelato.Automate` |
| [Base](https://docs.eco.com/sauce-sdk/reference/chains/base.md) | automate | `0x2A6C106ae13B558BB9E2Ec64Bd2f1f7BEFF3A5E0` | `Gelato.Automate` |
| [Arbitrum One](https://docs.eco.com/sauce-sdk/reference/chains/arbitrum.md) | automate | `0x2A6C106ae13B558BB9E2Ec64Bd2f1f7BEFF3A5E0` | `Gelato.Automate` |
| [Avalanche C-Chain](https://docs.eco.com/sauce-sdk/reference/chains/avalanche.md) | automate | `0x2A6C106ae13B558BB9E2Ec64Bd2f1f7BEFF3A5E0` | `Gelato.Automate` |

## ABI

### `GelatoAutomateABI`

`import GelatoAutomateABI from "./protocols/gelato/GelatoAutomateABI.json";` Speaks for: automate.

* `createTask(address execAddress, bytes execDataOrSelector, (uint8[] modules, bytes[] args) moduleData, address feeToken) returns (bytes32 taskId)`
* `cancelTask(bytes32 taskId)`

## Next steps

* [Protocols](https://docs.eco.com/sauce-sdk/reference/protocols.md): the other protocols, by what they do.
* [Protocols and tokens](https://docs.eco.com/sauce/names.md): calling a contract by its namespace, or through its ABI.
* [Glossary](https://docs.eco.com/sauce/glossary.md): the words these pages use, in plain terms.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.