> For the complete documentation index, see [llms.txt](https://docs.ees.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ees.xyz/concepts/applications.md).

# Applications

Applications are smart contracts with logic to be executed by the `JobManager` contract. An application contract must implement the `IApplication` interface:

```solidity
interface IApplication {
    function onExecuteJob(uint256 _index, address _owner) external;
    function onCreatedJob(uint256 _index, bytes1 _executionModule, address _owner, bytes calldata _inputs) external;
    function onDeletedJob(uint256 _index, address _owner) external;
}
```

The functions `onExecuteJob`, `onCreatedJob` and `onDeletedJob` are callback functions which the `JobManager` contract will call upon execution, creation  and deletion of a job respectively.

Applications can be implemented by anyone and can contain any logic such as calling external contracts. This makes it possible to execute any logic through EES jobs.&#x20;
