Documentation

Track metrics over HTTP, view charts in the console, and get daily summaries or threshold alerts. Replace placeholders in the examples with your own keys from Settingsor a metric's detail page.

Getting started

Sign up to create an organization and your first account. After sign-in you land on the Metrics list — create a metric there, copy its ingest URL, and send your first sample.

Already on a team? Ask a colleague to invite you, or use an invitation link they send you. Existing users can log in any time. New orgs get a 42-day free trial; the basic plan is $1/month after that.

Metrics console

Each metric has a type: count for events (page views, signups) or value for measurements (latency, revenue). Open a metric to see its time-series chart, change the period and resolution, and add samples manually.

On the detail page you can add guide lines on the chart, overlay another metric for comparison, and configure alerts when values cross thresholds or stop arriving. Use Live mode for near-real-time updates over WebSocket while you watch the chart.

Every metric has its own public ingest key (pmk_…) shown on the detail page — use that in scripts and tracking pixels so you do not need to pass a metric slug on each request.

Settings

Under Settings in the console sidebar you will find your organization name and two API keys:

  • Public API key (pk_…) — ingest samples for any metric in the org (pass metric as id or slug).
  • Secret API key (sk_…) — full REST access to list, create, update, and delete metrics.

The same page configures your daily summary email: turn it on, pick a local send time, and use Send now to preview. Opt individual metrics into the email with Include in daily emailon each metric's page.

Ingest API

Send samples with a simple GET request to /api/m on your data host (production: https://data.umlogger.com). Responses are JSON, e.g. {"ok":true}.

Per-metric public key (recommended)
curl "https://data.umlogger.com/api/m?key=pmk_YOUR_METRIC_KEY&value=42"
Organization public key + metric slug
curl "https://data.umlogger.com/api/m?key=pk_YOUR_ORG_KEY&metric=page-views&value=42"
Optional timestamp (ISO 8601)
curl "https://data.umlogger.com/api/m?key=pmk_YOUR_METRIC_KEY&value=1&timestamp=2026-01-01T12:00:00Z"
HTML tracking pixel
<img src="https://data.umlogger.com/api/m?key=pmk_YOUR_METRIC_KEY&value=1" alt="" width="1" height="1" />
JavaScript (fetch)
const url = new URL("https://data.umlogger.com/api/m");
url.searchParams.set("key", "pmk_YOUR_METRIC_KEY");
url.searchParams.set("value", String(responseTimeMs));
await fetch(url);

Query parameters: key (required), value (required, numeric), metric (required with org pk_ key),timestamp (optional). In production, send ingest traffic to the data host, not the main app URL — samples still work on the app host but return a warning.

Metrics API

Manage metrics programmatically with your secret key. Send Authorization: Bearer sk_… on requests to /api/metrics (same host as ingest in dev; use your API base URL in production).

List metrics
curl -H "Authorization: Bearer sk_YOUR_SECRET_KEY" \
  "https://data.umlogger.com/api/metrics"
Create a metric
curl -X POST -H "Authorization: Bearer sk_YOUR_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"Page views","slug":"page-views","type":"count"}' \
  "https://data.umlogger.com/api/metrics"

type must be count or value. Use GET /api/metrics/:id, PATCH, and DELETE with a metric UUID or slug. The legacy /p?metric_pubkey=… endpoint still accepts old-style keys but is deprecated — prefer /api/m.

Alerts & email

Alertson a metric's detail page watch rolling windows (e.g. last hour or day). Types include average value above/below a threshold, percent change, and missing data when no samples arrive. When an alert fires, Umlogger emails users in your organization.

The daily summary is separate: enable it in Settings, then tick Include in daily email on each metric you want in the morning report. Questions or custom plans? Contact us.