# Ingestion Endpoints

Our BYOC backend supports ingestion of various standard formats for metrics, traces and logs. It can be used to ingest telemetry from outside your kubernetes clusters, displaying it natively inside the groundcover platform.

### Prerequisites

Every ingestion endpoint below requires two things:

1. BYOC endpoint - Your unique groundcover ingestion endpoint
2. ingestion-key - used to authenticate with your backend

#### Fetching the BYOC endpoint

Your BYOC site is part of the configuration provided to you by groundcover when setting up the managed BYOC backend. Find your BYOC endpoint in the [ingestion keys tab](https://app.groundcover.com/settings?selectedTab=ingestion-keys), marked below as `{BYOC_ENDPOINT}`.

#### Creating an ingestion-key

You can create or get an ingestion key in the [ingestion keys tab](https://app.groundcover.com/settings?selectedTab=ingestion-keys)

The ingestion-key printed will be referenced below as `{ingestion-key}`

### Supported authentication methods

We support several methods of authentication when pushing data into groundcover. This applies for all endpoints, formats and protocols.

#### Header Key-Value

Add a header with one of the following keys, containing the `{ingestion-key}` value:

1. `token`
2. `apikey`
3. `dd-api-key`
4. `X-Amz-Firehose-Access-Key`
5. `Authorization`

#### Basic Authentication

When using basic authentication, use the following params:

`Username: groundcover`

`Password: {ingestion-key}`

## Supported endpoints

{% hint style="info" %}
All endpoints are accepted over `HTTPS` or `gRPCS` on port `443`
{% endhint %}

### Prometheus

<table><thead><tr><th width="253">Name</th><th>Endpoint</th></tr></thead><tbody><tr><td>Prometheus remote write</td><td><code>https://{BYOC_ENDPOINT}/api/v1/write</code></td></tr><tr><td>Prometheus exposition format</td><td><code>https://{BYOC_ENDPOINT}/api/v1/import/prometheus</code></td></tr></tbody></table>

### OpenTelemetry

<table><thead><tr><th width="253">Name</th><th>Endpoint</th></tr></thead><tbody><tr><td>gRPC (Logs, Traces, Metrics)</td><td><code>{BYOC_ENDPOINT}</code></td></tr><tr><td>HTTP Logs</td><td><code>https://{BYOC_ENDPOINT}/v1/logs</code></td></tr><tr><td>HTTP Traces</td><td><code>https://{BYOC_ENDPOINT}/v1/traces</code></td></tr><tr><td>HTTP Metrics</td><td><code>https://{BYOC_ENDPOINT}/v1/metrics</code></td></tr></tbody></table>

### DataDog

<table><thead><tr><th width="251">Name</th><th>Endpoint</th></tr></thead><tbody><tr><td>Metrics V1</td><td><code>https://{BYOC_ENDPOINT}/datadog/api/v1/series</code></td></tr><tr><td>Metrics V2</td><td><code>https://{BYOC_ENDPOINT}/datadog/api/v2/series</code></td></tr><tr><td>Traces V0.3</td><td><code>https://{BYOC_ENDPOINT}/v0.3/traces</code></td></tr><tr><td>Traces V0.4</td><td><code>https://{BYOC_ENDPOINT}/v0.4/traces</code></td></tr><tr><td>Traces V0.5</td><td><code>https://{BYOC_ENDPOINT}/v0.5/traces</code></td></tr><tr><td>Traces V0.7</td><td><code>https://{BYOC_ENDPOINT}/v0.7/traces</code></td></tr></tbody></table>

### AWS Firehose

<table><thead><tr><th width="251">Name</th><th>Endpoint</th></tr></thead><tbody><tr><td>Firehose Logs</td><td><code>https://{BYOC_ENDPOINT}/firehose/logs</code></td></tr></tbody></table>

### JSON Logs

| Name      | Endpoint                            |
| --------- | ----------------------------------- |
| JSON Logs | `https://{BYOC_ENDPOINT}/json/logs` |


---

# 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.groundcover.com/architecture/byoc/ingestion-endpoints.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.
