Errors and Rate Limits
HTTPS Errors
HTTPS Errors are all request with response status code different than 200 (successful HTTP), must be considered as failure of a particular API call. You should expect additional JSON inside the body of the response with the error message encapsulated inside it as shown in the example.
We recommend, as best practice, to store all error messages somewhere along with request data for further manual review. We use the following error codes:
Error Code | Description |
---|---|
400 (Bad Request) | Something is wrong with your request, possibly due to invalid argument. |
401 (Unauthorized) | Lack of valid authentication credentials, your API key is wrong/invalid. |
403 (Forbidden) | The request was rejected due to a permission issue. Your API does not have enough privileges/credits to access this resource. |
404 (No Data) | You requested specific single item that we don’t have at this moment. |
429 (Too Many Requests) | Your API key rate limits have been exceeded. |
500 (Internal Server Error) | An unexpected server error was encountered, we are working on fixing this. |
Rate Limits
Crypto API’s professional service is subject to API call rate limits, based on your subscription plan tier. If you are interested in custom subscription tier for higher limits, reach out to us.
If you exceed these limits, your requests will return an HTTPS Status Code 429.
The rate limits are on call per day, per hour, per minute & per second in correspondence to available credits. Your daily credits are accounted for 24 hrs from the initial call to our API-Gateway.
Maximum Limit
All Endpoints which return list of items support Index and Limit, Index and Limit are needed to get the data in portions.
Example: thousands of transactions in one block.
The default value for limit is 50, the minimum is 1 and the maximum is 500.
These values are valid for all endpoints except for some special endpoints, then the values will be mentioned in the documentation of this special endpoint.
Error Codes
CryptoAPI responses may result with an internal error code and description.
Response Body
{
"meta": {
"error": {
"code": 6001,
"message": "Asset not found"
}
}
}
We use the following error codes:
General error codes
Error Code | Description |
---|---|
1 | General error: %s |
16 | Please provide a proper query parameter, refer to the documentation for more information |
15 | Password is too weak |
16 | Request method not supported: %s |
17 | Required request body is missing |
18 | Could not delete payment forwarding with uuid: %s |
19 | Wrong password |
20 | We are facing technical issues, please try again later |
21 | Transaction not found |
22 | Could not retrieve webhooks for this user |
23 | Could not delete webhook with id: %s |
24 | We are facing technical issues, please try again later |
26 | Block not found |
27 | We are facing technical issues, please try again later |
28 | Password cannot be null or empty |
29 | Address not found |
30 | Bad JSON formatting |
31 | Blockchain connection error: %s |
32 | Invalid authentication credentials |
33 | Invalid API Key |
34 | Authorization header (API Key) is missing |
35 | Not enough privileges for the requested operation |
36 | We are facing technical issues, please try again later |
37 | We are facing technical issues, please try again later |
38 | Use HTTPS requests |
39 | Unsupported Media Type. Content-Type header should be 'application/json'. |
40 | Method must be one of: %s |
41 | URI not found. Check the documentation. |
42 | There is mismatch relation with provided API Key. Please contact our support team. |
43 | Exceeded limit of %d records per request! |
44 | Limit must be a positive number! |
50 | Wrong or missing blockchain network |
51 | Unknown blockchain layer or wrong or missing layer network |
52 | Your current package plan Webhooks limit of %d reached. Please contact us if you need more or upgrade your plan. |
60 | This endpoint has not been enabled for your package plan. Please contact us if you need this or upgrade your plan. |
61 | Your package plan includes only % days historical data. Please contact us if you need more or upgrade your plan. |
62 | Insufficient credits. Please contact us if you need more or upgrade your plan. |
63 | Request limit reached. Maximum %1$d requests per %2$d second(s). Please contact us if you need more or upgrade your plan. |
64 | This endpoint is temporarily stopped due to performance reasons, for more information please contact [email protected] |
68 | Support for %s is not implemented yet |
400 | Something is wrong with your request, possibly due to invalid argument. |
401 | Lack of valid authentication credentials, your API key is wrong/invalid. |
403 | The request was rejected due to a permission issue. Your API does not have enough privileges/credits to access this resource. |
404 | You requested specific single item that we don’t have at this moment. |
429 | Your API key rate limits have been exceeded. |
500 | An unexpected server error was encountered, we are working on fixing this. |
Exchanges error codes
Error Code | Description | Additional info |
---|---|---|
6000 | Exchange rate not found for the pair | Exchange rate not found for the pair |
6001 | Asset not found | There is no Asset that corresponds to the given name |
6002 | Invalid time format | Timestamp value contains non-numeric symbols |
6003 | Exceeded limit of %d records per request | |
6004 | Unknown symbol | |
6005 | Exchange not found | There is no Exchange that corresponds to the given name or ID |
6006 | Exceeded limit of 1 day period for historical data | |
6007 | General validation error: %s | |
6008 | Exchange specific error, refer to the documentation for more information |
Exchanges Accounts error codes
Error Code | Description | Additional info |
---|---|---|
7000 | Your current package plan Accounts limit of %d reached. Please contact us if you need more or upgrade your plan. | We have a limitation of the active accounts for exchanges |
7002 | You have more accounts created than the allowed in your plan, please delete them first or upgrade your plan |
ETH error codes
Error Code | Description | Additional Info |
---|---|---|
3000 | %s is not a valid Ethereum address | |
3001 | Value is not provided | |
3002 | Could not generate new address | |
3003 | Could not generate new account | |
3004 | fromAddress cannot be null or empty | |
3005 | toAddress cannot be null or empty | |
3006 | privateKey cannot be null or empty | deploy smart contract and transaction create with privateKey |
3007 | There is no registry for address: %s | When trying to send a tx with non-existing keystore file |
3008 | fromAddress cannot be equal to toAddress | |
3009 | Sign.Signature failure | |
3010 | There is already a registry for this address | When making a payment forwarding(duplicate error) |
3011 | BigInt or BigDecimal conversion error | when value is not a number |
3012 | Password is too weak... | token transfer and payment forwarding |
3013 | signed_tx cannot be empty or null | |
3014 | Ethereum VM errors (different messages) | e.g. not enough eth; nonce error |
3015 | %s is not a valid Ethereum network | |
3016 | byteCode cannot be null or empty | |
3017 | Byte code is not in the correct format | |
3018 | Could not sign the transaction | |
3019 | Could not estimate gas price | |
3020 | Could not estimate gas limit | |
3021 | Webhook validator default messages | when url or event is missing |
3022 | Not enough tokens | |
3023 | Balance is not enough | when sending tokens |
3024 | contract cannot be null or empty | when sending tokens |
3025 | Check input data, no reference found to provided contract and fromAddress | when sending tokens |
3026 | Invalid address or contract | token balance |
3027 | Gas price should be at least 5000000000 wei | |
3028 | Gas limit should be at least 21000 wei | |
3029 | Could not generate new account | |
3030 | Address already imported | |
3031 | Field 'confirmations' should be a value between 1 and 100 | |
3032 | Invalid token type. Valid options are: ERC-20 and ERC-721 | |
3033 | Contract Internal Transactions for the specified transaction not found | |
3034 | Token amount error (different messages) | |
3035 | txHash field is incorrect! | |
3036 | totalSupply call not available for contract %s" | |
3037 | Exceeded limit of %d records per request | |
3038 | address cannot be null or empty |
BTC error codes
Error Code | Description |
---|---|
2000 | Can not decode transaction |
2001 | Can not create transaction |
2002 | Can not sign transaction |
2003 | Can not send transaction |
2004 | txs must not be empty |
2005 | Transaction '%s' is invalid |
2006 | txHex must not be empty |
2007 | Address is not valid |
2008 | Block '%s' has '%d' transaction. Index '%d' out of range. |
2009 | Sum of input values is different then sum of output values |
2010 | Not enough balance in '%s' available '%.8f', but needed is '%.8f' (including fee) |
2100 | Field 'walletName' Error: %s |
2101 | addresses' contains invalid address(es): %s |
2102 | Wallet '%s' is Hierarchical Deterministic wallet, please check https://docs.cryptoapis.io/?http#btc-wallet-api for HD wallets |
2103 | Wallet '%s' is Normal wallet, please check https://docs.cryptoapis.io/?http#btc-wallet-api for Normal wallets |
2104 | addressCount must not be empty |
2105 | addressCount must be number value between 1 and 10 |
2106 | walletName' must not be empty |
2107 | walletName' must be string |
2108 | walletName' is too long. Max size is 64 characters, actual is %d |
2109 | walletName' is too short. Min size is 3 characters, actual is %d |
2110 | Wallet '%s' already exists |
2111 | Field 'addresses' Error: %s |
2112 | addresses' must not be empty |
2113 | addresses' must be array |
2114 | addresses' contains duplicate address(es) |
2115 | Wallet '%s' does not exist |
2116 | Address '%s' can not be found in wallet '%s' |
2117 | password' must be string |
2118 | password' is too long. Max size is 64 characters, actual is %d |
2119 | password' is too weak. Min size is 10 characters, actual is %d |
2120 | Wallet can not be decrypted with this 'password' |
2201 | from' address must not be empty |
2202 | from' address must be string |
2203 | from' address is not valid |
2204 | to' address must not be empty |
2205 | to' address must be string |
2206 | to' address is not valid |
2204 | to' address must be different from 'from' address |
2207 | callback' url must not be empty |
2208 | callback' url must be string |
2209 | callback' url is not valid |
2210 | password' url must not be empty |
2211 | password' url must be string |
2212 | password' is too long. Max size is 64 characters, actual is %d |
2213 | password' is too weak. Min size is 10 characters, actual is %d |
2214 | wallet' name must not be empty |
2215 | wallet' name must be string |
2216 | wallet' name is too long. Max size is 64 characters, actual is %d |
2217 | wallet' name is too short. Min size is 3 characters, actual is %d |
2217 | wallet' can not be decrypted with this 'password' |
2218 | Payment Forwarding from address '%s' already created |
2219 | Address '%s' can not be found in wallet '%s' |
2217 | Payment Forwarding not found |
2301 | event' address must not be empty |
2302 | event' should be UNCONFIRMED_TX, NEW_BLOCK, CONFIRMED_TX or ADDRESS |
2303 | address' must not be empty |
2304 | address' must be string |
2305 | address' is not valid |
2306 | confirmations' must not be empty |
2307 | confirmations' must be number value between 1 and 100 |
2308 | confirmations' is not valid |
2309 | transaction' must not be empty |
2310 | transaction' size must be exactly 64 characters |
2311 | transaction' is not valid |
2312 | url' must not be empty |
2313 | url' must be string |
2314 | url' is not valid |
2325 | Exceeded limit of %d records per request |
BCH error codes
Error Code | Description |
---|---|
4000 | Can not decode transaction |
4001 | Can not create transaction |
4002 | Can not sign transaction |
4003 | Can not send transaction |
4004 | txs must not be empty |
4005 | Transaction '%s' is invalid |
4006 | txHex must not be empty |
4007 | Address is not valid |
4008 | Block '%s' has '%d' transaction. Index '%d' out of range. |
4009 | Sum of input values is different then sum of output values |
4010 | Not enough balance in '%s' available '%.8f', but needed is '%.8f' (including fee) |
4100 | Field 'walletName' Error: %s |
4101 | addresses' contains invalid address(es): %s |
4102 | Wallet '%s' is Hierarchical Deterministic wallet, please check https://docs.cryptoapis.io/?http#bch-wallet-api for HD wallets |
4103 | Wallet '%s' is Normal wallet, please check https://docs.cryptoapis.io/?http#bch-wallet-api for Normal wallets |
4104 | addressCount must not be empty |
4105 | addressCount must be number value between 1 and 10 |
4106 | walletName' must not be empty |
4107 | walletName' must be string |
4108 | walletName' is too long. Max size is 64 characters, actual is %d |
4109 | walletName' is too short. Min size is 3 characters, actual is %d |
4110 | Wallet '%s' already exists |
4111 | Field 'addresses' Error: %s |
4112 | addresses' must not be empty |
4113 | addresses' must be array |
4114 | addresses' contains duplicate address(es) |
4115 | Wallet '%s' does not exist |
4116 | Address '%s' can not be found in wallet '%s' |
4117 | password' must be string |
4118 | password' is too long. Max size is 64 characters, actual is %d |
4119 | password' is too weak. Min size is 10 characters, actual is %d |
4120 | Wallet can not be decrypted with this 'password' |
4201 | from' address must not be empty |
4202 | from' address must be string |
4203 | from' address is not valid |
4204 | to' address must not be empty |
4205 | to' address must be string |
4206 | to' address is not valid |
4204 | to' address must be different from 'from' address |
4207 | callback' url must not be empty |
4208 | callback' url must be string |
4209 | callback' url is not valid |
4210 | password' url must not be empty |
4211 | password' url must be string |
4212 | password' is too long. Max size is 64 characters, actual is %d |
4213 | password' is too weak. Min size is 10 characters, actual is %d |
4214 | wallet' name must not be empty |
4215 | wallet' name must be string |
4216 | wallet' name is too long. Max size is 64 characters, actual is %d |
4217 | wallet' name is too short. Min size is 3 characters, actual is %d |
4217 | wallet' can not be decrypted with this 'password' |
4218 | Payment Forwarding from address '%s' already created |
4219 | Address '%s' can not be found in wallet '%s' |
4217 | Payment Forwarding not found |
4301 | event' address must not be empty |
4302 | event' should be UNCONFIRMED_TX, NEW_BLOCK, CONFIRMED_TX or ADDRESS |
4303 | address' must not be empty |
4304 | address' must be string |
4305 | address' is not valid |
4306 | confirmations' must not be empty |
4307 | confirmations' must be number value between 1 and 100 |
4308 | confirmations' is not valid |
4309 | transaction' must not be empty |
4310 | transaction' size must be exactly 64 characters |
4311 | transaction' is not valid |
4312 | url' must not be empty |
4313 | url' must be string |
4314 | url' is not valid |
4325 | Exceeded limit of %d records per request |
LTC error codes
Error Code | Description |
---|---|
5000 | Can not decode transaction |
5001 | Can not create transaction |
5002 | Can not sign transaction |
5003 | Can not send transaction |
5004 | txs must not be empty |
5005 | Transaction '%s' is invalid |
5006 | txHex must not be empty |
5007 | Address is not valid |
5008 | Block '%s' has '%d' transaction. Index '%d' out of range. |
5009 | Sum of input values is different then sum of output values |
5010 | Not enough balance in '%s' available '%.8f', but needed is '%.8f' (including fee) |
5100 | Field 'walletName' Error: %s |
5101 | addresses' contains invalid address(es): %s |
5102 | Wallet '%s' is Hierarchical Deterministic wallet, please check https://docs.cryptoapis.io/?http#ltc-wallet-api for HD wallets |
5103 | Wallet '%s' is Normal wallet, please check https://docs.cryptoapis.io/?http#ltc-wallet-api for Normal wallets |
5104 | addressCount must not be empty |
5105 | addressCount must be number value between 1 and 10 |
5106 | walletName' must not be empty |
5107 | walletName' must be string |
5108 | walletName' is too long. Max size is 64 characters, actual is %d |
5109 | walletName' is too short. Min size is 3 characters, actual is %d |
5110 | Wallet '%s' already exists |
5111 | Field 'addresses' Error: %s |
5112 | addresses' must not be empty |
5113 | addresses' must be array |
5114 | addresses' contains duplicate address(es) |
5115 | Wallet '%s' does not exist |
5116 | Address '%s' can not be found in wallet '%s' |
5117 | password' must be string |
5118 | password' is too long. Max size is 64 characters, actual is %d |
5119 | password' is too weak. Min size is 10 characters, actual is %d |
5120 | Wallet can not be decrypted with this 'password' |
5201 | from' address must not be empty |
5202 | from' address must be string |
5203 | from' address is not valid |
5204 | to' address must not be empty |
5205 | to' address must be string |
5206 | to' address is not valid |
5204 | to' address must be different from 'from' address |
5207 | callback' url must not be empty |
5208 | callback' url must be string |
5209 | callback' url is not valid |
5210 | password' url must not be empty |
5211 | password' url must be string |
5212 | password' is too long. Max size is 64 characters, actual is %d |
5213 | password' is too weak. Min size is 10 characters, actual is %d |
5214 | wallet' name must not be empty |
5215 | wallet' name must be string |
5216 | wallet' name is too long. Max size is 64 characters, actual is %d |
5217 | wallet' name is too short. Min size is 3 characters, actual is %d |
5217 | wallet' can not be decrypted with this 'password' |
5218 | Payment Forwarding from address '%s' already created |
5219 | Address '%s' can not be found in wallet '%s' |
5217 | Payment Forwarding not found |
5301 | event' address must not be empty |
5302 | event' should be UNCONFIRMED_TX, NEW_BLOCK, CONFIRMED_TX or ADDRESS |
5303 | address' must not be empty |
5304 | address' must be string |
5305 | address' is not valid |
5306 | confirmations' must not be empty |
5307 | confirmations' must be number value between 1 and 100 |
5308 | confirmations' is not valid |
5309 | transaction' must not be empty |
5310 | transaction' size must be exactly 64 characters |
5311 | transaction' is not valid |
5312 | url' must not be empty |
5313 | url' must be string |
5314 | url' is not valid |
5325 | Exceeded limit of %d records per request |
DOGE error codes
Error Code | Description |
---|---|
8000 | Can not decode transaction |
8001 | Can not create transaction |
8002 | Can not sign transaction |
8003 | Can not send transaction |
8004 | txs must not be empty |
8005 | Transaction '%s' is invalid |
8006 | txHex must not be empty |
8007 | Address is not valid |
8008 | Block '%s' has '%d' transaction. Index '%d' out of range. |
8009 | Sum of input values is different then sum of output values |
8010 | Not enough balance in '%s' available '%.8f', but needed is '%.8f' (including fee) |
8100 | Field 'walletName' Error: %s |
8101 | addresses' contains invalid address(es): %s |
8102 | Wallet '%s' is Hierarchical Deterministic wallet, please check https://docs.cryptoapis.io/?http#doge-wallet-api for HD wallets |
8103 | Wallet '%s' is Normal wallet, please check https://docs.cryptoapis.io/?http#doge-wallet-api for Normal wallets |
8104 | addressCount must not be empty |
8105 | addressCount must be number value between 1 and 10 |
8106 | walletName' must not be empty |
8107 | walletName' must be string |
8108 | walletName' is too long. Max size is 64 characters, actual is %d |
8109 | walletName' is too short. Min size is 3 characters, actual is %d |
8110 | Wallet '%s' already exists |
8111 | Field 'addresses' Error: %s |
8112 | addresses' must not be empty |
8113 | addresses' must be array |
8114 | addresses' contains duplicate address(es) |
8115 | Wallet '%s' does not exist |
8116 | Address '%s' can not be found in wallet '%s' |
8117 | password' must be string |
8118 | password' is too long. Max size is 64 characters, actual is %d |
8119 | password' is too weak. Min size is 10 characters, actual is %d |
8120 | Wallet can not be decrypted with this 'password' |
8201 | from' address must not be empty |
8202 | from' address must be string |
8203 | from' address is not valid |
8204 | to' address must not be empty |
8205 | to' address must be string |
8206 | to' address is not valid |
8204 | to' address must be different from 'from' address |
8207 | callback' url must not be empty |
8208 | callback' url must be string |
8209 | callback' url is not valid |
8210 | password' url must not be empty |
8211 | password' url must be string |
8212 | password' is too long. Max size is 64 characters, actual is %d |
8213 | password' is too weak. Min size is 10 characters, actual is %d |
8214 | wallet' name must not be empty |
8215 | wallet' name must be string |
8216 | wallet' name is too long. Max size is 64 characters, actual is %d |
8217 | wallet' name is too short. Min size is 3 characters, actual is %d |
8217 | wallet' can not be decrypted with this 'password' |
8218 | Payment Forwarding from address '%s' already created |
8219 | Address '%s' can not be found in wallet '%s' |
8217 | Payment Forwarding not found |
8301 | event' address must not be empty |
8302 | event' should be UNCONFIRMED_TX, NEW_BLOCK, CONFIRMED_TX or ADDRESS |
8303 | address' must not be empty |
8304 | address' must be string |
8305 | address' is not valid |
8306 | confirmations' must not be empty |
8307 | confirmations' must be number value between 1 and 100 |
8308 | confirmations' is not valid |
8309 | transaction' must not be empty |
8310 | transaction' size must be exactly 64 characters |
8311 | transaction' is not valid |
8312 | url' must not be empty |
8313 | url' must be string |
8314 | url' is not valid |
8325 | Exceeded limit of %d records per request |
DASH error codes
Error Code | Description |
---|---|
9000 | Can not decode transaction |
9001 | Can not create transaction |
9002 | Can not sign transaction |
9003 | Can not send transaction |
9004 | txs must not be empty |
9005 | Transaction '%s' is invalid |
9006 | txHex must not be empty |
9007 | Address is not valid |
9008 | Block '%s' has '%d' transaction. Index '%d' out of range. |
9009 | Sum of input values is different then sum of output values |
9010 | Not enough balance in '%s' available '%.8f', but needed is '%.8f' (including fee) |
9100 | Field 'walletName' Error: %s |
9101 | addresses' contains invalid address(es): %s |
9102 | Wallet '%s' is Hierarchical Deterministic wallet, please check https://docs.cryptoapis.io/?http#dash-wallet-api for HD wallets |
9103 | Wallet '%s' is Normal wallet, please check https://docs.cryptoapis.io/?http#dash-wallet-api for Normal wallets |
9104 | addressCount must not be empty |
9105 | addressCount must be number value between 1 and 10 |
9106 | walletName' must not be empty |
9107 | walletName' must be string |
9108 | walletName' is too long. Max size is 64 characters, actual is %d |
9109 | walletName' is too short. Min size is 3 characters, actual is %d |
9110 | Wallet '%s' already exists |
9111 | Field 'addresses' Error: %s |
9112 | addresses' must not be empty |
9113 | addresses' must be array |
9114 | addresses' contains duplicate address(es) |
9115 | Wallet '%s' does not exist |
9116 | Address '%s' can not be found in wallet '%s' |
9117 | password' must be string |
9118 | password' is too long. Max size is 64 characters, actual is %d |
9119 | password' is too weak. Min size is 10 characters, actual is %d |
9120 | Wallet can not be decrypted with this 'password' |
9201 | from' address must not be empty |
9202 | from' address must be string |
9203 | from' address is not valid |
9204 | to' address must not be empty |
9205 | to' address must be string |
9206 | to' address is not valid |
9204 | to' address must be different from 'from' address |
9207 | callback' url must not be empty |
9208 | callback' url must be string |
9209 | callback' url is not valid |
9210 | password' url must not be empty |
9211 | password' url must be string |
9212 | password' is too long. Max size is 64 characters, actual is %d |
9213 | password' is too weak. Min size is 10 characters, actual is %d |
9214 | wallet' name must not be empty |
9215 | wallet' name must be string |
9216 | wallet' name is too long. Max size is 64 characters, actual is %d |
9217 | wallet' name is too short. Min size is 3 characters, actual is %d |
9217 | wallet' can not be decrypted with this 'password' |
9218 | Payment Forwarding from address '%s' already created |
9219 | Address '%s' can not be found in wallet '%s' |
9217 | Payment Forwarding not found |
9301 | event' address must not be empty |
9302 | event' should be UNCONFIRMED_TX, NEW_BLOCK, CONFIRMED_TX or ADDRESS |
9303 | address' must not be empty |
9304 | address' must be string |
9305 | address' is not valid |
9306 | confirmations' must not be empty |
9307 | confirmations' must be number value between 1 and 100 |
9308 | confirmations' is not valid |
9309 | transaction' must not be empty |
9310 | transaction' size must be exactly 64 characters |
9311 | transaction' is not valid |
9312 | url' must not be empty |
9313 | url' must be string |
9314 | url' is not valid |
9325 | Exceeded limit of %d records per request |