# Header

## Introduction

Any parameters added to the **header** tab are passed in the **endpoint request headers**. You can define **default** header parameters and **optional** header parameters:&#x20;

<div align="left"><figure><img src="/files/WtS74AG5h9s1hMrSc0F9" alt=""><figcaption></figcaption></figure></div>

Notice that the **header** tab is split into upper and lower panels:

* [Required parameters](#required-parameters)
* [Header filters](#header-filters)

{% hint style="info" %}
When an [authentication method](/product-documentation/~/changes/J8IbZkP6ASUZu2oBhGi2/developer-hub/connector-builder/building-your-own-connector/4-endpoints/endpoint-options/authentication.md) is applied for an endpoint, any **header** and **body** parameters specified for the authentication method are also sent in the endpoint requests - you don't need to add them twice.
{% endhint %}

{% hint style="info" %}
Please refer to your API documentation for specific guidance about what values need to be passed in authentication headers.
{% endhint %}

## Required parameters

If you have parameters that must always be passed in the **endpoint request header**, add them to the **required parameters** panel. Default options are added as key pairs, and are passed straight into request headers - users are never asked to provide values for these.

## Header filters

If you have parameters that you want to expose to users in [process flows](/product-documentation/~/changes/J8IbZkP6ASUZu2oBhGi2/process-flows/about-process-flows.md) and then pass provided values into the **endpoint request header**, add them to the lower panel.&#x20;

Optional parameters are available for your users to update with their own required values, in process flows. These work in exactly the same way [as noted for optional URL parameters](/product-documentation/~/changes/J8IbZkP6ASUZu2oBhGi2/developer-hub/connector-builder/building-your-own-connector/4-endpoints/endpoint-options/url.md#optional-parameters), except any values provided by users (via the [connection shape](/product-documentation/~/changes/J8IbZkP6ASUZu2oBhGi2/process-flows/building-process-flows/process-flow-shapes/standard-shapes/connector-shape.md) in [process flows](/product-documentation/~/changes/J8IbZkP6ASUZu2oBhGi2/process-flows/about-process-flows.md)) are passed into the **request headers**, rather than being added as URL queries.&#x20;

## Webhooks

If you are building a connector for a webhook, you must include a `content-type` header.&#x20;

## More information

Techniques for adding **header parameters** are the same as all other types of parameters that you may encounter in the connector builder. For information about these options please see the [Working with parameters](/product-documentation/~/changes/J8IbZkP6ASUZu2oBhGi2/developer-hub/connector-builder/building-your-own-connector/techniques-for-working-with-variables-and-parameters/working-with-parameters.md) page.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://doc.wearepatchworks.com/product-documentation/~/changes/J8IbZkP6ASUZu2oBhGi2/developer-hub/connector-builder/building-your-own-connector/4-endpoints/endpoint-options/header.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
