API
Mimic API provides a secure and modular interface to automate tasks, and coordinate relayer-based executions across blockchains.
1. Authentication
1.1. Nonce
Request a new nonce for a wallet address. Used to initialize the signature-based login flow.
POST /users/nonceRequest
{
"address": "address"
}Response
{
"address": "address",
"nonce": "hash"
}1.2. Authenticate
Authenticate a user by signing the nonce with their wallet.
POST /users/authenticate
Request
Response
2. Users
2.1. Api key
Fetch a user API key.
Requires authentication with x-auth-token.
Response
2.2. Tokens
Fetch a list of the user’s non-zero balances and allowances granted to settlers.
Requires authentication with x-auth-token.
Response
2.3. Balances
Manage protocol balances.
2.3.1. Create/update balance entry
Request
Response
2.3.2. All balances
Query balances with optional filters.
Query Parameters
address: Ethereum address (optional)offset: number (default: 0)limit: number (default: 20)sort: string (asc|desc, default:desc)
Response
2.3.3. Balance total
Get the current total balance for an address.
Response
3. Tasks
3.1. Create task
Upload a task manifest and files. Returns a CID pointing to the task.
Requires authentication with x-api-key and file upload (multipart/form-data).
Response
3.2. All tasks
Query tasks with optional filters.
Query Parameters
cids: string[]creator: Ethereum addressoffset: number (default: 0)limit: number (default: 20)
Response
3.3. Find task
Retrieve a task by its CID.
Response
3.4. Task manifest
Retrieve the task manifest from IPFS.
Headers:
Cache-Control: public, max-age=3600ETag: <cid>Content-Type: application/json
3.5. Task WASM binary
Retrieve the task WASM binary from IPFS.
Returns a binary payload with appropriate content headers.
4. Configs
4.1. Create config
Create a new task configuration. Includes signature verification.
The
typesfields must be in the order they appear below. TheInputelements must match the task manifest inputs, in the same order.
Request
Response
4.2. All configs
Fetch a list of task configurations with optional filters.
Query Parameters
sigs: string[]taskCid: string (CID)signer: Ethereum addressactive: booleancreatedAfter: timestampcreatedBefore: timestampoffset: number (default: 0)limit: number (default: 20)
Response
4.3. Find config
Fetch a specific task configuration by signature.
Response
4.4. Deactivate config
Deactivates a specific task configuration by signature. Includes signature verification.
This change cannot be reverted.
Request
Response
5. Executions
5.1. Create execution
Creates a new relayer task execution.
Request
5.2. All executions
Fetch a list of relayer task executions with optional filters.
Query Parameters
configSig: stringcreatedAfter: timestampcreatedBefore: timestampoffset: number (default: 0)limit: number (default: 20)
Response
5.3. Find execution
Fetch a specific relayer task execution by its ID. The response may include execution logs.
Response
5.4. Add execution validation
Submit a validator signature for an execution.
Request
6. Intents
6.1. All intents
Fetch a list of intents with optional filters.
Query Parameters
user: addresssettler: addressdeadlineAfter: timestampdeadlineBefore: timestampoffset: number (default: 0)limit: number (default: 20)
Response
6.2. Find intent
Fetch a specific intent by its hash.
Response
7. Miscellaneous
7.1. Settlers
Fetch a list of enabled settlers.
Response
7.2. Oracles
Fetch an active oracle by address.
Response
7.3. Relayers
Fetch an active relayer by address.
Response
7.4. Execution pricings
Fetch execution pricing history.
Query Parameters
createdAfter: timestamp (optional)createdBefore: timestamp (optional)offset: number (default: 0)limit: number (default: 20)sort: string (asc|desc, default:desc)
Response
8.2. Health
Check API status.
Response
Last updated