# SigNoz

## Step 1: Generate Ingestion Token

To send data to SigNoz, you need an ingestion token. Follow these steps to create a SigNoz ingestion token:

1. In the SigNoz platform, go to **Settings > Ingestion Settings**.
2. Click **+ New Ingestion key**.
3. Enter a **Name**.
4. Select **an Expiration Date**.
5. Click **Create new ingestion key** to create your ingestion token.
6. Copy the token to send telemetry data to SigNoz.

## Step 2: Create an Integration

### Create an Integration Using the ThousandEyes UI

1. Log in to your account on the ThousandEyes platform.
2. Navigate to **Integrations > Integration 1.0** from the side menu.
3. Click **New Integration** and select **OpenTelemetry Integration**.
4. Enter a **Name** for the integration.
5. Set the **Target** to **HTTP**. SigNoz supports both **HTTP** and **GRPC**.
6. Enter the **Endpoint URL**.
7. For **Preset Configurations**, select **Signoz**.
8. For **Auth Type**, select **Custom**.
9. Add the following **Custom Header**:
   * **signoz-ingestion-key**: Enter your **Signoz ingestion key** from [step 1](#step-1-generate-ingestion-token).
10. For the OpenTelemetry **Signal**, select **Metric**.
11. For the **Data Model Version**, select **v2**.
12. Select a **test**. For more information on creating a test, see [General Setup Instructions](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry/observability-platforms#general-setup-instructions).
13. Click **Save** to complete the integration setup.

You have now successfully integrated your ThousandEyes data with Signoz.

### Manage Integrations in the UI

For more information on managing OpenTelemetry integrations, including listing, editing, and deleting integrations, see [Manage Integrations Using the UI - Integrations 1.0](https://docs.thousandeyes.com/product-documentation/integration-guides/opentelemetry/manage-integrations#manage-integrations-using-the-ui-integrations-1.0).

### Create an Integration Using the ThousandEyes API

For a programmatic integration, use the following API command:

#### Using HTTP Protocol

```curl
curl -v -XPOST https://api.thousandeyes.com/v7/stream \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $BEARER_TOKEN" \
-d '{
  "type": "opentelemetry",
  "testMatch": [{
    "id": "281474976717575",
    "domain": "cea"
  }],
  "endpointType": "http",
  "streamEndpointUrl": "https://ingest.eu.signoz.io:4318/v1/metrics",
  "customHeaders": {
    "signoz-ingestion-key": "{SIGNOZ_INGESTION_TOKEN}"
  }
}'
```

#### Using gRPC Protocol

```curl
curl -v -XPOST https://api.thousandeyes.com/v7/stream \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $BEARER_TOKEN" \
-d '{
  "type": "opentelemetry",
  "testMatch": [{
    "id": "281474976717575",
    "domain": "cea"
  }],
  "endpointType": "grpc",
  "streamEndpointUrl": "https://ingest.eu.signoz.io:4317",
  "customHeaders": {
    "signoz-ingestion-key": "{SIGNOZ_INGESTION_TOKEN}"
  }
}'
```

Replace `{SIGNOZ_INGESTION_TOKEN}` with the correct values for your instance.

## ThousandEyes Dashboard in SigNoz

![ThousandEyes Dashboard in SigNoz](https://1112912342-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M4QARF6s57qxMrOHDTZ%2Fuploads%2Fgit-blob-99203f0166d30438f5fccb8a0953574ee1927cdb%2Fsignoz-thousandeyes-dashboard.png?alt=media)

You can download the dashboard template from the following link: [Download ThousandEyes SigNoz dashboard template](https://github.com/thousandeyes/thousandeyes-observability-dashboards/blob/main/signoz/ThousandEyesDashboard.json).

For more information about sending metrics to SigNoz using OpenTelemetry, see [SigNoz: Send Metrics to SigNoz Cloud](https://signoz.io/docs/userguide/send-metrics-cloud/).
