Quick Start
Get telemetry flowing into xScaler in a few steps. xScaler accepts metrics, logs, and traces — start with whichever signal matters most to you.
Prerequisites
Before you begin, locate the following in your xScaler portal → Settings → API Tokens:
| Value | Description |
|---|---|
| Region | e.g. euw1-01 |
| Tenant ID | Your X-Scope-OrgID value |
| API token | Your Authorization: Bearer token |
:::warning Both headers are required on every request Every request to xScaler — reads and writes, all signals — must include:
Authorization: Bearer <token>
X-Scope-OrgID: <tenant-id>
If X-Scope-OrgID is missing, the backend returns 400 Bad Request ("no org id"). If Authorization is missing or invalid, it returns 401 Unauthorized.
:::
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/logs/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 |
|---|---|
| Prometheus | Prometheus remote_write |
| Grafana Alloy | Grafana Alloy |
| OpenTelemetry Collector | OpenTelemetry Collector |
| Python / Node.js / Go | OTel SDKs |
Logs
| I use… | Guide |
|---|---|
| Grafana Alloy | Grafana Alloy |
| OpenTelemetry Collector | OpenTelemetry Collector |
| Python / Node.js / Go | OTel SDKs |
Traces
| I use… | Guide |
|---|---|
| Grafana Alloy | Grafana Alloy |
| OpenTelemetry Collector | OpenTelemetry Collector |
| Python / Node.js / Go | OTel SDKs |
Step 3 — Connect Grafana
Once telemetry is flowing, visualise it in Grafana:
| Signal | Data source type | URL |
|---|---|---|
| Metrics | Prometheus | https://euw1-01.m.xscalerlabs.com |
| Logs | Loki | https://euw1-01.l.xscalerlabs.com |
| Traces | Tempo | https://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
| Error | Cause | Fix |
|---|---|---|
400 no org id | X-Scope-OrgID header missing | Add -H "X-Scope-OrgID: <tenant-id>" |
401 Unauthorized | Token missing or malformed | Check format: Bearer <token> (capital B, space) |
403 Forbidden | Token scope too narrow | Generate a read+write token from the portal |
See Troubleshooting for a full symptom guide.