Skip to main content

Authentication

SENS API authenticates requests with an API key sent only in the X-API-KEY header — this is not a Bearer token, and it is not a query parameter. A key in the URL (e.g. ?apiKey=...) would leak into server logs, browser history, and the Referer header, so it isn't supported anywhere — not in the public API, not in the Swagger UI.

curl -s "https://api.getsens.energy/api/v1/tariffs" \
-H "X-API-KEY: sens_live_your_key_here"

A missing header or an invalid key results in an error response — don't try to enumerate the correct format by guessing; unauthenticated requests to protected paths (including Swagger UI) return a "stealth" 404, so as not to reveal API structure to bots.

Key scoping

Every API key belongs to exactly one organization (client) in the portal.getsens.energy customer portal and inherits that organization's plan limits. Keys can be generated and revoked self-service from Integrations → API Keys.

Access tiers (plans)

SENS offers several plan tiers, differing in request limits and available features:

PlanIntended for
TRIALfree evaluation period, for testing an integration
STARTERsmaller integrations, a single product
GROWTHproduction volumes, webhooks
ENTERPRISEhighest limits, SSE (server-sent events), dedicated sales contact

Exact limits and pricing are on getsens.energy — the Enterprise plan requires direct sales contact; the other plans are self-service.

Best practices

  • Don't embed your API key in frontend/mobile app code — call SENS only from a backend.
  • If you're building a polling client, use delta queries via since instead of re-fetching the full dataset every time.