If you're encountering issues with our API, this guide will help you understand some common error messages and their meanings.

_Please note: This list is not comprehensive. Other errors involving the dynamics of generic EVM transaction estimations might require deeper investigation._

:::tip Save the `X-Request-Id` header
Every API response includes an `X-Request-Id` header. When you encounter an error, save this value -- it uniquely identifies your request in server logs. You can share it with support or use the [MCP `debug` tool](/portal/documentation/ai-integration/ecosystem#debug) to pull matching log lines for your organization.
:::

## General Errors

- **400 - Bad Request:** This indicates an incorrect parameter. Ensure that all required parameters are correctly set.

- **403 - Forbidden:** This indicates that the origin address is a banned or restricted address (see [terms and conditions](/assets/legal-docs/terms_of_service_public_api_20260218.pdf))

- **403 - Unauthorized:** Your API key is missing or incomplete. Please double check that correct key was entered and try again.

- **429 - Rate Limit:** You've made too many requests to the API within a 1 second time period. Reduce your requests per second (RPS) to stay below the free 1rps limit. If higher limits are required, please fill out the 1inch Network Enterprise API application.

- **503 - Banned IP:** The IP address you're using to access the API is banned. Please ensure you're adhering to 1inch Network's terms of use.

- **The API isn't behaving as expected:** In certain cases you may be passing in a parameter supported by the API but the wrong type or expected value. For example `disableEstimate=true` will work but `disableEstimate=True` will not. All parameters are CAsE SenSiTive. This is especially apparent when stringifying boolean values in python.

## Specific Errors

- **Cannot sync token:** The token either doesn't exist on the blockchain or isn't a valid token. Also, double check that you are using the correct chainID in relation to the token used.

- **Amount is not set:** The 'amount' field hasn't been specified.

  - **_Please note:_** All token amounts must be in the correct decimal format! The decimal format can be found by looking up the token contract on the block explorer.
  - **Example:** If the [source token is DAI](https://etherscan.io/token/0x6b175474e89094c44da98b954eedeac495271d0f), and you are sending 1 DAI, the amount with 18 decimals would be `1000000000000000000`.

<img src="assets/docs-assets/img/token-decimals.png" alt="Token Decimals">

- **Src is not set:** The 'src' (source token contract) field is missing.

- **Dst is not set:** The 'dst' (destination token contract) field is missing.

- **Insufficient liquidity:** The aggregator can't find a route for the swap due to low liquidity.

## Swap-specific Errors

- **Not enough src balance:** This means your source token balance is insufficient. It provides the required amount and your current balance.

- **Not enough Allowance:** You haven't granted the necessary token allowance to the 1inch router. It'll indicate the amount, current allowance, and the spender address, e.g., "Spender: 0x1111111254eeb25477b68fb85ed929f73a960582".

- **Insufficient liquidity:** As mentioned earlier, the aggregator couldn't route the swap.

:::info
For workloads that require higher RPS, expanded quotas, or sustained performance, explore the available paid plans on the [**pricing page**](/pricing)￼.
For organizations with significant trading volumes or advanced requirements, [**complete this application**](/get-enterprise) to explore tailored Enterprise options.

:::
