# Response

### Overview

The **HTTP Response Component** is used to return an HTTP response to a webhook. It allows setting a response body, status code, and headers, enabling proper interaction with external services that expect a structured HTTP response.

### Usage

#### Input Parameters

| Parameter    | Type                | Description                                      |
| ------------ | ------------------- | ------------------------------------------------ |
| `body`       | `string` / `object` | Data to be sent as the response body.            |
| `statusCode` | `number`            | The status code of the response.                 |
| `headers`    | `string` / `object` | The headers object associated with the response. |

### Instructions

1. **Set Response Body**
   * Provide a valid JSON or string value as the response body.
2. **Define Status Code**
   * Choose an appropriate HTTP status code (e.g., `200` for success, `400` for client errors, `500` for server errors).
3. **Specify Headers**
   * Ensure proper content types (e.g., `Content-Type: application/json`) when sending structured data.
4. **Ensure Valid JSON (If Required)**
   * If `Content-Type` is `application/json`, the body should be a valid JSON object.

### Notes

* **Handles JSON Parsing**: Automatically parses headers and body if they are provided as JSON strings.
* **Error Handling:**
  * If headers cannot be parsed, an error will be logged and the response will be canceled.
  * If `Content-Type` is `application/json`, but the body is invalid JSON, an error is thrown.
