---
title: HTTP Client Destination
description: Datadog, the leading service for cloud-scale monitoring.
breadcrumbs: Docs > Observability Pipelines > Destinations > HTTP Client Destination
---

# HTTP Client Destination

{% callout %}
# Important note for users on the following Datadog sites: app.ddog-gov.com

{% alert level="danger" %}
This product is not supported for your selected [Datadog site](https://docs.datadoghq.com/getting_started/site.md). ().
{% /alert %}

{% /callout %}
Available for:
{% icon name="icon-logs" /%}
 Logs | 
{% icon name="icon-metrics" /%}
 Metrics 
## Overview{% #overview %}

Use Observability Pipelines' HTTP Client destination to send logs to an HTTP client, such as a logging platform or SIEM.

## Set up destination{% #set-up-destination %}

Set up the HTTP Client destination and its environment variables when you [set up a pipeline](https://app.datadoghq.com/observability-pipelines). The information below is configured in the pipelines UI.

{% alert level="danger" %}
Only enter the identifiers for the HTTP Client URI and, if applicable, username and password for basic authorization and the TLS key pass. Do not enter the actual values.
{% /alert %}

1. Enter the identifier for your HTTP Client URI. If you leave it blank, the default is used.
1. Select your authorization strategy (**None**, **Basic**, or **Bearer**). If you selected:
   - **Basic**:
     - Enter the identifier for your HTTP Client username. If you leave it blank, the default is used.
     - Enter the identifier for your HTTP Client password. If you leave it blank, the default is used.
   - **Bearer**:
     - Enter the identifier for your HTTP Client token. If you leave it blank, the default is used.
1. JSON is the only available encoder.

### Optional settings{% #optional-settings %}

#### Enable compression{% #enable-compression %}

Toggle the switch to **Enable Compression**. If enabled:

1. GZIP is the only available compression algorithm.
1. Select the compression level you want to use.

#### Enable TLS{% #enable-tls %}

Toggle the switch to **Enable TLS**.

- If you are using Secrets Management, enter the identifier for the key pass. See Set secrets for the default used if the field is left blank.
- The following certificate and key files are required:
  - `Server Certificate Path`: The path to the certificate file that has been signed by your Certificate Authority (CA) root file in DER, PEM, or CRT (X.509).
  - `CA Certificate Path`: The path to the certificate file that is your Certificate Authority (CA) root file in DER, PEM, or CRT (X.509).
  - `Private Key Path`: The path to the `.key` private key file that belongs to your Server Certificate Path in DER, PEM, or CRT (PKCS #8) format.
  - **Notes**:
    - The configuration data directory `/var/lib/observability-pipelines-worker/config/` is automatically appended to the file paths. See [Advanced Worker Configurations](https://docs.datadoghq.com/observability_pipelines/configuration/install_the_worker/advanced_worker_configurations.md) for more information.
    - The file must be readable by the `observability-pipelines-worker` group and user.

#### Buffering{% #buffering %}

Toggle the switch to enable **Buffering Options**. Enable a configurable buffer on your destination to ensure intermittent latency or an outage at the destination doesn't create immediate backpressure, and allow events to continue to be ingested from your source. Disk buffers can also increase pipeline durability by writing data to disk, ensuring buffered data persists through a Worker restart. See [Destination buffers](https://docs.datadoghq.com/observability_pipelines/scaling_and_performance/buffering_and_backpressure.md#destination-buffers) for more information.

- If left unconfigured, your destination uses a memory buffer with a capacity of 500 events.
- To configure a buffer on your destination:
  1. Select the buffer type you want to set (**Memory** or **Disk**).
  1. Enter the buffer size and select the unit.
     1. Maximum memory buffer size is 128 GB.
     1. Maximum disk buffer size is 500 GB.
  1. In the **Behavior on full buffer** dropdown menu, select whether you want to **block** events or **drop new events** when the buffer is full.

## Set secrets{% #set-secrets %}

These are the defaults used for secret identifiers and environment variables.

**Note**: If you enter secret identifiers and then choose to use environment variables, the environment variable is the identifier entered and prepended with `DD_OP`. For example, if you entered `PASSWORD_1` for a password identifier, the environment variable for that password is `DD_OP_PASSWORD_1`.

{% tab title="Secrets Management" %}

- HTTP Client URI endpoint identifier:
  - The default identifier is `DESTINATION_HTTP_CLIENT_URI`.
- HTTP Client TLS passphrase identifier (when TLS is enabled):
  - The default identifier is `DESTINATION_HTTP_CLIENT_KEY_PASS`.
- If you are using basic authentication:
  - HTTP Client username identifier:
    - The default identifier is `DESTINATION_HTTP_CLIENT_USERNAME`.
  - HTTP Client password identifier:
    - The default identifier is `DESTINATION_HTTP_CLIENT_PASSWORD`.
- If you are using bearer authentication:
  - HTTP Client bearer token identifier:
    - The default identifier is `DESTINATION_HTTP_CLIENT_BEARER_TOKEN`.

{% /tab %}

{% tab title="Environment Variables" %}

- HTTP/S client URI endpoint:
  - The default environment variable is `DD_OP_DESTINATION_HTTP_CLIENT_URI`.
- HTTP/S Client TLS passphrase (when enabled):
  - The default environment variable is `DD_OP_DESTINATION_HTTP_CLIENT_KEY_PASS`.
- If you are using basic authentication:
  - HTTP/S endpoint authentication username and password.
  - The default environment variable is `DD_OP_DESTINATION_HTTP_CLIENT_USERNAME` and `DD_OP_DESTINATION_HTTP_CLIENT_PASSWORD`.
- If you are using bearer authentication:
  - HTTP/S endpoint bearer token.
  - The default environment variable is `DD_OP_DESTINATION_HTTP_CLIENT_BEARER_TOKEN`.

{% /tab %}

## How the destination works{% #how-the-destination-works %}

### Event batching{% #event-batching %}

A batch of events is flushed when one of these conditions occurs. See [event batching](https://docs.datadoghq.com/observability_pipelines/destinations.md#event-batching) for more information.

| Maximum Events | Maximum Size (MB) | Timeout (seconds) |
| -------------- | ----------------- | ----------------- |
| 1,000          | 1                 | 1                 |
