# Webhook

### Description

The Webhook destination allows you to send telemetry data to any HTTP/HTTPS endpoint.

### Supported Types

| Logs | Metrics | Traces | Bindplane Collector |
| ---- | ------- | ------ | ------------------- |
| ✓    | ✗       | ✗      | `v1.79.0`+          |

### Configuration

| Field                             | Type               | Default                                                | Required | Description                                                                                                                                       |
| --------------------------------- | ------------------ | ------------------------------------------------------ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| Scheme                            | string             | http                                                   | `true`   | The URL scheme to use for the webhook requests.                                                                                                   |
| Payload Format                    | enum               | json\_array                                            | `false`  | The payload format for log data. `json_array` sends all logs as a JSON array in a single request. `single` sends one HTTP request per log record. |
| Hostname                          | string             |                                                        | `true`   | The hostname or IP address of the webhook server.                                                                                                 |
| Port                              | int                |                                                        | `true`   | The port of the webhook server.                                                                                                                   |
| Path                              | string             |                                                        | `false`  | The path component of the URL where telemetry data will be sent.                                                                                  |
| Verb                              | string             | POST                                                   | `true`   | The HTTP method to use for the webhook requests. Must be one of: POST, PATCH, PUT.                                                                |
| Content Type                      | string             |                                                        | `true`   | The Content-Type header for the webhook requests.                                                                                                 |
| Headers                           | map\[string]string | \["User-Agent": "bindplane-otel-collector/\<version>"] | `false`  | Additional HTTP headers to include in the webhook requests.                                                                                       |
| Enable TLS                        | bool               | true                                                   | `false`  | Whether or not to use TLS for HTTPS connections.                                                                                                  |
| Skip TLS Certificate Verification | bool               | false                                                  | `false`  | Enable to skip TLS certificate verification.                                                                                                      |
| TLS Certificate Authority File    | string             |                                                        | `false`  | Certificate authority used to validate TLS certificates.                                                                                          |
| Mutual TLS                        | bool               | false                                                  | `false`  | Whether or not to use mutual TLS authentication.                                                                                                  |
| TLS Client Certificate File       | string             |                                                        | `false`  | A TLS certificate used for client authentication.                                                                                                 |
| TLS Client Private Key File       | string             |                                                        | `false`  | A TLS private key used for client authentication.                                                                                                 |

#### Supported Retry and Queuing Settings

This destination supports the [retry settings](https://docs.bindplane.com/configuration/bindplane-otel-collector/retry-on-failure), the [sending queue settings](https://docs.bindplane.com/configuration/bindplane-otel-collector/sending-queue), and the [persistent queue settings.](https://docs.bindplane.com/configuration/bindplane-otel-collector/persistent-queue)

| Sending Queue | Persistent Queue | Retry on Failure |
| ------------- | ---------------- | ---------------- |
| ✓             | ✓                | ✓                |

#### Example Configuration

In this configuration, we specify the endpoint where telemetry data will be sent, along with TLS settings for secure communication.

**Web Interface**

<figure><img src="https://1405008107-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgmiOMzBfoNFwmKJFHMcJ%2Fuploads%2Fgit-blob-e6e060d132b3da9d614e10eeb96923110aff0f94%2Fintegrations-destinations-webhook-image-1.png?alt=media" alt="Bindplane docs - Webhook - image 1"><figcaption></figcaption></figure>

<figure><img src="https://1405008107-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgmiOMzBfoNFwmKJFHMcJ%2Fuploads%2Fgit-blob-70b8f18e5d2f994f5e5acdc80a5f42df3cb63a1b%2Fintegrations-destinations-webhook-image-2.png?alt=media" alt="Bindplane docs - Webhook - image 2"><figcaption></figcaption></figure>

**Standalone Destination**

```yaml
apiVersion: bindplane.observiq.com/v1
kind: Destination
metadata:
  id: webhook
  name: webhook
spec:
  type: webhook
  parameters:
    - name: scheme
      value: https
    - name: hostname
      value: api.example.com
    - name: port
      value: '443'
    - name: path
      value: webhook
    - name: enable_tls
      value: 'true'
    - name: skip_tls_verify
      value: 'false'
    - name: tls_ca_file
      value: '/path/to/ca.crt'
    - name: mutual_tls
      value: 'true'
    - name: tls_client_cert_file
      value: '/path/to/client.crt'
    - name: tls_client_key_file
      value: '/path/to/client.key'
```

### Notes

* The webhook destination sends data in JSON format
* Non-2xx HTTP responses are treated as errors
* Connection timeouts are handled according to the configured timeout settings


---

# 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://docs.bindplane.com/integrations/destinations/webhook.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.
