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

# Triggers

Trigger lifecycle management

## GET /triggers

> List triggers

```json
{"openapi":"3.0.3","info":{"title":"Mimic Protocol API","version":"1.0.1"},"tags":[{"name":"Triggers","description":"Trigger lifecycle management"}],"servers":[{"url":"https://api-protocol.mimic.fi"}],"paths":{"/triggers":{"get":{"summary":"List triggers","operationId":"getTriggers","tags":["Triggers"],"parameters":[{"name":"sigs","in":"query","description":"Comma-separated list of trigger signatures to filter by","schema":{"type":"string"}},{"name":"functionCid","in":"query","schema":{"$ref":"#/components/schemas/CID"}},{"name":"signer","in":"query","schema":{"$ref":"#/components/schemas/Address"}},{"name":"active","in":"query","description":"Filter by active state","schema":{"type":"boolean"}},{"name":"createdAfter","in":"query","schema":{"$ref":"#/components/schemas/Timestamp"}},{"name":"createdBefore","in":"query","schema":{"$ref":"#/components/schemas/Timestamp"}},{"$ref":"#/components/parameters/OffsetParam"},{"$ref":"#/components/parameters/LimitParam"},{"$ref":"#/components/parameters/SortParam"}],"responses":{"200":{"description":"List of triggers","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Trigger"}}}}}}}}},"components":{"schemas":{"CID":{"type":"string","description":"An IPFS content identifier (CIDv0 or CIDv1 base32)."},"Address":{"type":"string","description":"A valid EVM (0x-prefixed hex) address."},"Timestamp":{"type":"integer","description":"Unix timestamp in milliseconds."},"Trigger":{"type":"object","required":["sig","functionCid","signer","version","description","createdAt","input","config","executionFeeLimit","minValidations","types","endDate"],"properties":{"sig":{"$ref":"#/components/schemas/Signature"},"functionCid":{"$ref":"#/components/schemas/CID"},"signer":{"$ref":"#/components/schemas/Address"},"version":{"$ref":"#/components/schemas/SemVer"},"description":{"type":"string"},"deactivateSig":{"$ref":"#/components/schemas/Signature"},"createdAt":{"type":"string","format":"date-time"},"input":{"type":"object","additionalProperties":true},"config":{"$ref":"#/components/schemas/TriggerConfig"},"executionFeeLimit":{"$ref":"#/components/schemas/BigInteger"},"minValidations":{"type":"integer","minimum":0},"types":{"$ref":"#/components/schemas/TriggerTypes"},"endDate":{"$ref":"#/components/schemas/Timestamp"}}},"Signature":{"type":"string","description":"A 65-byte hex-encoded ECDSA signature (130 hex chars + 0x prefix)."},"SemVer":{"type":"string","description":"A semantic version string."},"TriggerConfig":{"description":"Trigger schedule configuration. Discriminated by the integer `type` field: `0` → CronTriggerConfig, `1` → EventTriggerConfig, `2` → OnceTriggerConfig.\n","oneOf":[{"$ref":"#/components/schemas/CronTriggerConfig"},{"$ref":"#/components/schemas/EventTriggerConfig"},{"$ref":"#/components/schemas/OnceTriggerConfig"}]},"CronTriggerConfig":{"type":"object","required":["type","schedule","delta","endDate"],"properties":{"type":{"type":"integer","enum":[0]},"schedule":{"type":"string","description":"A valid cron expression (e.g. `\"0 * * * *\"`)"},"delta":{"type":"string","description":"A time delta string (e.g. `\"1d\"`, `\"30m\"`)"},"endDate":{"$ref":"#/components/schemas/Timestamp"}}},"EventTriggerConfig":{"type":"object","required":["type","chainId","contract","topics","delta","endDate"],"properties":{"type":{"type":"integer","enum":[1]},"chainId":{"$ref":"#/components/schemas/ChainId"},"contract":{"description":"Contract address to filter events from, or `\"any\"` for any contract","oneOf":[{"$ref":"#/components/schemas/Address"},{"type":"string","enum":["any"]}]},"topics":{"type":"array","description":"Array of 1–4 topic groups. Each group is an OR filter; groups are AND-combined.\n","minItems":1,"maxItems":4,"items":{"type":"array","items":{"$ref":"#/components/schemas/HexString"}}},"delta":{"type":"string","description":"Time delta after the event before execution fires"},"endDate":{"$ref":"#/components/schemas/Timestamp"}}},"ChainId":{"type":"integer","description":"A supported chain ID."},"HexString":{"type":"string","description":"An arbitrary 0x-prefixed hex string."},"OnceTriggerConfig":{"type":"object","required":["type","startDate","delta","endDate"],"properties":{"type":{"type":"integer","enum":[2]},"startDate":{"$ref":"#/components/schemas/Timestamp"},"delta":{"type":"string","description":"Duration window; `endDate` must equal `startDate + delta`"},"endDate":{"$ref":"#/components/schemas/Timestamp"}}},"BigInteger":{"type":"string","description":"A non-negative integer represented as a decimal string."},"TriggerTypes":{"type":"object","required":["Input","Config","Trigger"],"description":"EIP-712 type definitions for the trigger's typed data","additionalProperties":{"type":"array","items":{"$ref":"#/components/schemas/TypedDataField"}},"properties":{"Input":{"type":"array","items":{"$ref":"#/components/schemas/TypedDataField"}},"Config":{"type":"array","items":{"$ref":"#/components/schemas/TypedDataField"}},"Trigger":{"type":"array","items":{"$ref":"#/components/schemas/TypedDataField"}}}},"TypedDataField":{"type":"object","required":["name","type"],"properties":{"name":{"type":"string"},"type":{"type":"string","description":"Solidity type or a custom type (`Token`, `TokenAmount`)"}}}},"parameters":{"OffsetParam":{"name":"offset","in":"query","schema":{"type":"integer","minimum":0,"default":0}},"LimitParam":{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":100,"default":10}},"SortParam":{"name":"sort","in":"query","description":"Sort order: `1` for ascending, `-1` for descending","schema":{"type":"integer","enum":[1,-1],"default":-1}}}}}
```

## Create a new trigger

> Registers a new trigger. The \`typedData\` is an EIP-712 typed data structure signed by \`signer\`. The signature is recovered on-chain to verify ownership.<br>

```json
{"openapi":"3.0.3","info":{"title":"Mimic Protocol API","version":"1.0.1"},"tags":[{"name":"Triggers","description":"Trigger lifecycle management"}],"servers":[{"url":"https://api-protocol.mimic.fi"}],"paths":{"/triggers":{"post":{"summary":"Create a new trigger","description":"Registers a new trigger. The `typedData` is an EIP-712 typed data structure signed by `signer`. The signature is recovered on-chain to verify ownership.\n","operationId":"createTrigger","tags":["Triggers"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TriggerCreateRequest"}}}},"responses":{"200":{"description":"Trigger created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Trigger"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"}}}}},"components":{"schemas":{"TriggerCreateRequest":{"type":"object","required":["description","typedData","sig","signer"],"properties":{"description":{"type":"string"},"typedData":{"$ref":"#/components/schemas/TriggerTypedData"},"sig":{"allOf":[{"$ref":"#/components/schemas/Signature"}],"description":"EIP-712 signature over `typedData` by `signer`"},"signer":{"$ref":"#/components/schemas/EvmAddress"}}},"TriggerTypedData":{"type":"object","required":["types","values"],"properties":{"types":{"$ref":"#/components/schemas/TriggerTypes"},"values":{"$ref":"#/components/schemas/TriggerTypedDataValues"}}},"TriggerTypes":{"type":"object","required":["Input","Config","Trigger"],"description":"EIP-712 type definitions for the trigger's typed data","additionalProperties":{"type":"array","items":{"$ref":"#/components/schemas/TypedDataField"}},"properties":{"Input":{"type":"array","items":{"$ref":"#/components/schemas/TypedDataField"}},"Config":{"type":"array","items":{"$ref":"#/components/schemas/TypedDataField"}},"Trigger":{"type":"array","items":{"$ref":"#/components/schemas/TypedDataField"}}}},"TypedDataField":{"type":"object","required":["name","type"],"properties":{"name":{"type":"string"},"type":{"type":"string","description":"Solidity type or a custom type (`Token`, `TokenAmount`)"}}},"TriggerTypedDataValues":{"type":"object","required":["functionCid","version","input","config","executionFeeLimit","minValidations"],"properties":{"functionCid":{"$ref":"#/components/schemas/CID"},"version":{"$ref":"#/components/schemas/SemVer"},"input":{"type":"object","additionalProperties":true,"description":"Key-value map matching the function's manifest input schema"},"config":{"$ref":"#/components/schemas/TriggerConfig"},"executionFeeLimit":{"allOf":[{"$ref":"#/components/schemas/BigInteger"}],"description":"Maximum fee (in protocol units) the signer accepts per execution"},"minValidations":{"type":"integer","minimum":0,"description":"Minimum number of validator confirmations required"}}},"CID":{"type":"string","description":"An IPFS content identifier (CIDv0 or CIDv1 base32)."},"SemVer":{"type":"string","description":"A semantic version string."},"TriggerConfig":{"description":"Trigger schedule configuration. Discriminated by the integer `type` field: `0` → CronTriggerConfig, `1` → EventTriggerConfig, `2` → OnceTriggerConfig.\n","oneOf":[{"$ref":"#/components/schemas/CronTriggerConfig"},{"$ref":"#/components/schemas/EventTriggerConfig"},{"$ref":"#/components/schemas/OnceTriggerConfig"}]},"CronTriggerConfig":{"type":"object","required":["type","schedule","delta","endDate"],"properties":{"type":{"type":"integer","enum":[0]},"schedule":{"type":"string","description":"A valid cron expression (e.g. `\"0 * * * *\"`)"},"delta":{"type":"string","description":"A time delta string (e.g. `\"1d\"`, `\"30m\"`)"},"endDate":{"$ref":"#/components/schemas/Timestamp"}}},"Timestamp":{"type":"integer","description":"Unix timestamp in milliseconds."},"EventTriggerConfig":{"type":"object","required":["type","chainId","contract","topics","delta","endDate"],"properties":{"type":{"type":"integer","enum":[1]},"chainId":{"$ref":"#/components/schemas/ChainId"},"contract":{"description":"Contract address to filter events from, or `\"any\"` for any contract","oneOf":[{"$ref":"#/components/schemas/Address"},{"type":"string","enum":["any"]}]},"topics":{"type":"array","description":"Array of 1–4 topic groups. Each group is an OR filter; groups are AND-combined.\n","minItems":1,"maxItems":4,"items":{"type":"array","items":{"$ref":"#/components/schemas/HexString"}}},"delta":{"type":"string","description":"Time delta after the event before execution fires"},"endDate":{"$ref":"#/components/schemas/Timestamp"}}},"ChainId":{"type":"integer","description":"A supported chain ID."},"Address":{"type":"string","description":"A valid EVM (0x-prefixed hex) address."},"HexString":{"type":"string","description":"An arbitrary 0x-prefixed hex string."},"OnceTriggerConfig":{"type":"object","required":["type","startDate","delta","endDate"],"properties":{"type":{"type":"integer","enum":[2]},"startDate":{"$ref":"#/components/schemas/Timestamp"},"delta":{"type":"string","description":"Duration window; `endDate` must equal `startDate + delta`"},"endDate":{"$ref":"#/components/schemas/Timestamp"}}},"BigInteger":{"type":"string","description":"A non-negative integer represented as a decimal string."},"Signature":{"type":"string","description":"A 65-byte hex-encoded ECDSA signature (130 hex chars + 0x prefix)."},"EvmAddress":{"type":"string","description":"A valid EVM address (0x-prefixed, 20 bytes)."},"Trigger":{"type":"object","required":["sig","functionCid","signer","version","description","createdAt","input","config","executionFeeLimit","minValidations","types","endDate"],"properties":{"sig":{"$ref":"#/components/schemas/Signature"},"functionCid":{"$ref":"#/components/schemas/CID"},"signer":{"$ref":"#/components/schemas/Address"},"version":{"$ref":"#/components/schemas/SemVer"},"description":{"type":"string"},"deactivateSig":{"$ref":"#/components/schemas/Signature"},"createdAt":{"type":"string","format":"date-time"},"input":{"type":"object","additionalProperties":true},"config":{"$ref":"#/components/schemas/TriggerConfig"},"executionFeeLimit":{"$ref":"#/components/schemas/BigInteger"},"minValidations":{"type":"integer","minimum":0},"types":{"$ref":"#/components/schemas/TriggerTypes"},"endDate":{"$ref":"#/components/schemas/Timestamp"}}},"Error":{"type":"object","properties":{"message":{"type":"string"}}}},"responses":{"BadRequest":{"description":"Bad request — invalid parameters or body","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Unauthorized":{"description":"Unauthorized — missing or invalid credentials","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotFound":{"description":"Resource not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}
```

## Compute EIP-712 sign parameters for a trigger

> Returns the EIP-712 typed data structure (domain, primaryType, types, and message) needed to sign a new trigger. The caller must sign the returned \`message\` and submit it with the signature to \`POST /triggers\`.<br>

```json
{"openapi":"3.0.3","info":{"title":"Mimic Protocol API","version":"1.0.1"},"tags":[{"name":"Triggers","description":"Trigger lifecycle management"}],"servers":[{"url":"https://api-protocol.mimic.fi"}],"paths":{"/triggers/sign-params":{"post":{"summary":"Compute EIP-712 sign parameters for a trigger","description":"Returns the EIP-712 typed data structure (domain, primaryType, types, and message) needed to sign a new trigger. The caller must sign the returned `message` and submit it with the signature to `POST /triggers`.\n","operationId":"getTriggerSignParams","tags":["Triggers"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TriggerSignParamsRequest"}}}},"responses":{"200":{"description":"EIP-712 sign parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TriggerSignParams"}}}},"400":{"$ref":"#/components/responses/BadRequest"},"404":{"$ref":"#/components/responses/NotFound"}}}}},"components":{"schemas":{"TriggerSignParamsRequest":{"type":"object","required":["functionCid","version","input","config"],"properties":{"functionCid":{"$ref":"#/components/schemas/CID"},"version":{"$ref":"#/components/schemas/SemVer"},"input":{"type":"object","additionalProperties":true,"description":"Key-value map matching the function's manifest input schema"},"config":{"$ref":"#/components/schemas/TriggerConfig"}}},"CID":{"type":"string","description":"An IPFS content identifier (CIDv0 or CIDv1 base32)."},"SemVer":{"type":"string","description":"A semantic version string."},"TriggerConfig":{"description":"Trigger schedule configuration. Discriminated by the integer `type` field: `0` → CronTriggerConfig, `1` → EventTriggerConfig, `2` → OnceTriggerConfig.\n","oneOf":[{"$ref":"#/components/schemas/CronTriggerConfig"},{"$ref":"#/components/schemas/EventTriggerConfig"},{"$ref":"#/components/schemas/OnceTriggerConfig"}]},"CronTriggerConfig":{"type":"object","required":["type","schedule","delta","endDate"],"properties":{"type":{"type":"integer","enum":[0]},"schedule":{"type":"string","description":"A valid cron expression (e.g. `\"0 * * * *\"`)"},"delta":{"type":"string","description":"A time delta string (e.g. `\"1d\"`, `\"30m\"`)"},"endDate":{"$ref":"#/components/schemas/Timestamp"}}},"Timestamp":{"type":"integer","description":"Unix timestamp in milliseconds."},"EventTriggerConfig":{"type":"object","required":["type","chainId","contract","topics","delta","endDate"],"properties":{"type":{"type":"integer","enum":[1]},"chainId":{"$ref":"#/components/schemas/ChainId"},"contract":{"description":"Contract address to filter events from, or `\"any\"` for any contract","oneOf":[{"$ref":"#/components/schemas/Address"},{"type":"string","enum":["any"]}]},"topics":{"type":"array","description":"Array of 1–4 topic groups. Each group is an OR filter; groups are AND-combined.\n","minItems":1,"maxItems":4,"items":{"type":"array","items":{"$ref":"#/components/schemas/HexString"}}},"delta":{"type":"string","description":"Time delta after the event before execution fires"},"endDate":{"$ref":"#/components/schemas/Timestamp"}}},"ChainId":{"type":"integer","description":"A supported chain ID."},"Address":{"type":"string","description":"A valid EVM (0x-prefixed hex) address."},"HexString":{"type":"string","description":"An arbitrary 0x-prefixed hex string."},"OnceTriggerConfig":{"type":"object","required":["type","startDate","delta","endDate"],"properties":{"type":{"type":"integer","enum":[2]},"startDate":{"$ref":"#/components/schemas/Timestamp"},"delta":{"type":"string","description":"Duration window; `endDate` must equal `startDate + delta`"},"endDate":{"$ref":"#/components/schemas/Timestamp"}}},"TriggerSignParams":{"type":"object","description":"EIP-712 typed data structure ready to be signed by the caller","required":["domain","primaryType","types","message"],"properties":{"domain":{"type":"object","required":["name","version"],"properties":{"name":{"type":"string"},"version":{"type":"string"}}},"primaryType":{"type":"string"},"types":{"$ref":"#/components/schemas/TriggerTypes"},"message":{"$ref":"#/components/schemas/TriggerTypedDataValues"}}},"TriggerTypes":{"type":"object","required":["Input","Config","Trigger"],"description":"EIP-712 type definitions for the trigger's typed data","additionalProperties":{"type":"array","items":{"$ref":"#/components/schemas/TypedDataField"}},"properties":{"Input":{"type":"array","items":{"$ref":"#/components/schemas/TypedDataField"}},"Config":{"type":"array","items":{"$ref":"#/components/schemas/TypedDataField"}},"Trigger":{"type":"array","items":{"$ref":"#/components/schemas/TypedDataField"}}}},"TypedDataField":{"type":"object","required":["name","type"],"properties":{"name":{"type":"string"},"type":{"type":"string","description":"Solidity type or a custom type (`Token`, `TokenAmount`)"}}},"TriggerTypedDataValues":{"type":"object","required":["functionCid","version","input","config","executionFeeLimit","minValidations"],"properties":{"functionCid":{"$ref":"#/components/schemas/CID"},"version":{"$ref":"#/components/schemas/SemVer"},"input":{"type":"object","additionalProperties":true,"description":"Key-value map matching the function's manifest input schema"},"config":{"$ref":"#/components/schemas/TriggerConfig"},"executionFeeLimit":{"allOf":[{"$ref":"#/components/schemas/BigInteger"}],"description":"Maximum fee (in protocol units) the signer accepts per execution"},"minValidations":{"type":"integer","minimum":0,"description":"Minimum number of validator confirmations required"}}},"BigInteger":{"type":"string","description":"A non-negative integer represented as a decimal string."},"Error":{"type":"object","properties":{"message":{"type":"string"}}}},"responses":{"BadRequest":{"description":"Bad request — invalid parameters or body","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotFound":{"description":"Resource not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}
```

## GET /triggers/{sig}

> Get a trigger by its signature

```json
{"openapi":"3.0.3","info":{"title":"Mimic Protocol API","version":"1.0.1"},"tags":[{"name":"Triggers","description":"Trigger lifecycle management"}],"servers":[{"url":"https://api-protocol.mimic.fi"}],"paths":{"/triggers/{sig}":{"get":{"summary":"Get a trigger by its signature","operationId":"getTrigger","tags":["Triggers"],"parameters":[{"name":"sig","in":"path","required":true,"schema":{"$ref":"#/components/schemas/Signature"}}],"responses":{"200":{"description":"Trigger details","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Trigger"}}}},"404":{"$ref":"#/components/responses/NotFound"}}}}},"components":{"schemas":{"Signature":{"type":"string","description":"A 65-byte hex-encoded ECDSA signature (130 hex chars + 0x prefix)."},"Trigger":{"type":"object","required":["sig","functionCid","signer","version","description","createdAt","input","config","executionFeeLimit","minValidations","types","endDate"],"properties":{"sig":{"$ref":"#/components/schemas/Signature"},"functionCid":{"$ref":"#/components/schemas/CID"},"signer":{"$ref":"#/components/schemas/Address"},"version":{"$ref":"#/components/schemas/SemVer"},"description":{"type":"string"},"deactivateSig":{"$ref":"#/components/schemas/Signature"},"createdAt":{"type":"string","format":"date-time"},"input":{"type":"object","additionalProperties":true},"config":{"$ref":"#/components/schemas/TriggerConfig"},"executionFeeLimit":{"$ref":"#/components/schemas/BigInteger"},"minValidations":{"type":"integer","minimum":0},"types":{"$ref":"#/components/schemas/TriggerTypes"},"endDate":{"$ref":"#/components/schemas/Timestamp"}}},"CID":{"type":"string","description":"An IPFS content identifier (CIDv0 or CIDv1 base32)."},"Address":{"type":"string","description":"A valid EVM (0x-prefixed hex) address."},"SemVer":{"type":"string","description":"A semantic version string."},"TriggerConfig":{"description":"Trigger schedule configuration. Discriminated by the integer `type` field: `0` → CronTriggerConfig, `1` → EventTriggerConfig, `2` → OnceTriggerConfig.\n","oneOf":[{"$ref":"#/components/schemas/CronTriggerConfig"},{"$ref":"#/components/schemas/EventTriggerConfig"},{"$ref":"#/components/schemas/OnceTriggerConfig"}]},"CronTriggerConfig":{"type":"object","required":["type","schedule","delta","endDate"],"properties":{"type":{"type":"integer","enum":[0]},"schedule":{"type":"string","description":"A valid cron expression (e.g. `\"0 * * * *\"`)"},"delta":{"type":"string","description":"A time delta string (e.g. `\"1d\"`, `\"30m\"`)"},"endDate":{"$ref":"#/components/schemas/Timestamp"}}},"Timestamp":{"type":"integer","description":"Unix timestamp in milliseconds."},"EventTriggerConfig":{"type":"object","required":["type","chainId","contract","topics","delta","endDate"],"properties":{"type":{"type":"integer","enum":[1]},"chainId":{"$ref":"#/components/schemas/ChainId"},"contract":{"description":"Contract address to filter events from, or `\"any\"` for any contract","oneOf":[{"$ref":"#/components/schemas/Address"},{"type":"string","enum":["any"]}]},"topics":{"type":"array","description":"Array of 1–4 topic groups. Each group is an OR filter; groups are AND-combined.\n","minItems":1,"maxItems":4,"items":{"type":"array","items":{"$ref":"#/components/schemas/HexString"}}},"delta":{"type":"string","description":"Time delta after the event before execution fires"},"endDate":{"$ref":"#/components/schemas/Timestamp"}}},"ChainId":{"type":"integer","description":"A supported chain ID."},"HexString":{"type":"string","description":"An arbitrary 0x-prefixed hex string."},"OnceTriggerConfig":{"type":"object","required":["type","startDate","delta","endDate"],"properties":{"type":{"type":"integer","enum":[2]},"startDate":{"$ref":"#/components/schemas/Timestamp"},"delta":{"type":"string","description":"Duration window; `endDate` must equal `startDate + delta`"},"endDate":{"$ref":"#/components/schemas/Timestamp"}}},"BigInteger":{"type":"string","description":"A non-negative integer represented as a decimal string."},"TriggerTypes":{"type":"object","required":["Input","Config","Trigger"],"description":"EIP-712 type definitions for the trigger's typed data","additionalProperties":{"type":"array","items":{"$ref":"#/components/schemas/TypedDataField"}},"properties":{"Input":{"type":"array","items":{"$ref":"#/components/schemas/TypedDataField"}},"Config":{"type":"array","items":{"$ref":"#/components/schemas/TypedDataField"}},"Trigger":{"type":"array","items":{"$ref":"#/components/schemas/TypedDataField"}}}},"TypedDataField":{"type":"object","required":["name","type"],"properties":{"name":{"type":"string"},"type":{"type":"string","description":"Solidity type or a custom type (`Token`, `TokenAmount`)"}}},"Error":{"type":"object","properties":{"message":{"type":"string"}}}},"responses":{"NotFound":{"description":"Resource not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}
```

## Deactivate one or more triggers

> Permanently deactivates one or more triggers. The \`signature\` must be signed by the original trigger signer, and all provided \`triggerSigs\` must belong to that same signer.<br>

```json
{"openapi":"3.0.3","info":{"title":"Mimic Protocol API","version":"1.0.1"},"tags":[{"name":"Triggers","description":"Trigger lifecycle management"}],"servers":[{"url":"https://api-protocol.mimic.fi"}],"paths":{"/triggers/deactivate":{"post":{"summary":"Deactivate one or more triggers","description":"Permanently deactivates one or more triggers. The `signature` must be signed by the original trigger signer, and all provided `triggerSigs` must belong to that same signer.\n","operationId":"deactivateTriggers","tags":["Triggers"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TriggerDeactivateRequest"}}}},"responses":{"204":{"description":"Triggers deactivated"},"400":{"$ref":"#/components/responses/BadRequest"}}}}},"components":{"schemas":{"TriggerDeactivateRequest":{"type":"object","required":["triggerSigs","signature"],"properties":{"triggerSigs":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/components/schemas/Signature"},"description":"Trigger signatures to deactivate"},"signature":{"allOf":[{"$ref":"#/components/schemas/Signature"}],"description":"Signature authorizing the deactivation of all provided triggers"}}},"Signature":{"type":"string","description":"A 65-byte hex-encoded ECDSA signature (130 hex chars + 0x prefix)."},"Error":{"type":"object","properties":{"message":{"type":"string"}}}},"responses":{"BadRequest":{"description":"Bad request — invalid parameters or body","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}
```
