Skip to main content

Quick Start

xScaler accepts metrics, logs, and traces. Start with whichever signal matters most to you.

Prerequisites

Locate these three values in your xScaler portal:

ValueWhere to find itDescription
RegionShown in write endpoint URLse.g. euw1-01
Tenant IDOrganization → Tenants → click tenantYour X-Scope-OrgID value
API tokenOrganization → Tenants → click tenant → API keysYour Authorization: Bearer token

See Manage API Tokens for step-by-step instructions on finding or creating a token.

:::warning Both headers are required on every request Every request to xScaler, reads and writes across all signals, must include:

Authorization: Bearer <token>
X-Scope-OrgID: <tenant-id>

A missing or mismatched X-Scope-OrgID returns 401 Unauthorized with x-scope-orgid mismatch. A missing or invalid Authorization returns 401 Unauthorized too. :::


Step 1: Verify connectivity

Send a test query to confirm your credentials work:

# Metrics
curl "https://euw1-01.m.xscalerlabs.com/api/v1/query" \
-H "Authorization: Bearer <token>" \
-H "X-Scope-OrgID: <tenant-id>" \
--data-urlencode 'query=up'

# Logs
curl "https://euw1-01.l.xscalerlabs.com/api/v1/labels" \
-H "Authorization: Bearer <token>" \
-H "X-Scope-OrgID: <tenant-id>"

A 200 response with "status": "success" confirms authentication and connectivity.


Step 2: Send telemetry

Metrics

I use…Guide
PrometheusPrometheus remote_write
Grafana AlloyGrafana Alloy
OpenTelemetry CollectorOpenTelemetry Collector
Python / Node.js / GoOTel SDKs

Logs

I use…Guide
Grafana AlloyGrafana Alloy
OpenTelemetry CollectorOpenTelemetry Collector
Python / Node.js / GoOTel SDKs

Traces

I use…Guide
Grafana AlloyGrafana Alloy
OpenTelemetry CollectorOpenTelemetry Collector
Python / Node.js / GoOTel SDKs

Step 3: Connect Grafana

Once telemetry arrives, point Grafana at it:

SignalData source typeURL
MetricsPrometheushttps://euw1-01.m.xscalerlabs.com
LogsLokihttps://euw1-01.l.xscalerlabs.com
TracesTempohttps://euw1-01.t.xscalerlabs.com

Add Authorization: Bearer <token> and X-Scope-OrgID: <tenant-id> as custom HTTP headers on each data source.

See the full walkthrough: Metrics · Logs · Traces


Common errors

ErrorCauseFix
401 x-scope-orgid mismatchX-Scope-OrgID header missing or wrong tenantAdd -H "X-Scope-OrgID: <tenant-id>" with the tenant that matches your token
401 UnauthorizedToken missing or malformedCheck format: Bearer <token> (capital B, space)
403 ForbiddenToken scope too narrowGenerate a read+write token from the portal

See Troubleshooting for a full symptom guide.