> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cryptoprocessing.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Errors

## 400 Bad Request

### Request body is invalid JSON

| Error    | `{"error":"Bad content format", "code":"bad_content_format"}`                                                                        |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| Problem  | The request body is malformed or invalid JSON. This can also happen when the `Content-Type` header is not set to `application/json`. |
| Solution | Send a valid JSON request body and set the `Content-Type` header to `application/json`.                                              |

## 403 Forbidden

### Signature header does not match the request body

| Error    | `{"error":"Bad signature header", "code":"bad_header_signature"}`                                                                                                                                                                           |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Problem  | The value in `X-Processing-Signature` was not generated from the exact request body that was sent.                                                                                                                                          |
| Solution | Generate the signature from the exact request body and include it in the `X-Processing-Signature` header. Do not modify the body after generating the signature. Refer to [Authentication](/api-reference/authentication) for more details. |

### Signature header is missing

| Error    | `{"error":"No signature header", "code":"required_header_signature"}`                      |
| -------- | ------------------------------------------------------------------------------------------ |
| Problem  | The request does not include the required `X-Processing-Signature` header.                 |
| Solution | Add the `X-Processing-Signature` header with an HMAC-SHA512 signature of the request body. |

### API key header does not match your API key

| Error    | `{"error":"Bad key header", "code":"bad_header_key"}`                                                                                                                                                                                        |
| -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Problem  | The value in the `X-Processing-Key` header does not match your API key.                                                                                                                                                                      |
| Solution | Use the correct API key in the `X-Processing-Key` header. Do not use your secret key here; the secret key is only used to generate and verify signatures. Refer to [Get your API key](/integration-guide/get-your-api-key) for more details. |

### API key header is missing

| Error    | `{"error":"No key header", "code":"required_header_key"}`                                                                       |
| -------- | ------------------------------------------------------------------------------------------------------------------------------- |
| Problem  | The request does not include the required `X-Processing-Key` header. This error can also occur when the request URL is invalid. |
| Solution | Add the `X-Processing-Key` header and make sure the request URL is correct.                                                     |
