Skip to content

Solutions · Data & Engineering

A data platform you build on, deploy, and control

No black boxes and no lock-in on your fan data. Sfere is an API-first platform, composable with your warehouse — with connectors, a self-managed warehouse, SDKs, and a complete API CLI — that you run in-Kingdom, on-premise, or on any cloud, governed at the source.

  • REST API
  • SDKs
  • complete API CLI
  • typed schemas
  • in-Kingdom · on-prem · own cloud

apply · diff · inspect · rollback — the CLI mirrors the full API surface, so every change is reviewable in a pull request.

How an event moves through the platform

Collect, resolve, model, route

One backend handles the full event lifecycle, and every stage is inspectable rather than a step you take on faith. Ten taped events ride the line below — two are malformed, most are duplicates. Press run, then open any station: the line holds while you read the rules it executes.

run · pause · step · inspect

reject tray field errors0
identity graph · profiles
your warehouse · in-place joined on the identity graph · no copy
destinations · toggle
queued0
Animated diagram: events travel a conveyor through four stations. Validate rejects malformed payloads with field-level errors, Resolve merges duplicate identifiers into single profiles, Model joins warehouse tables in place, and Route forwards events to the destinations you enable. The controls below run, pause, and step the line; the station buttons open each station's rules.

line held · press run

Collect and validate

station held open · the line pauses while you read the rules

rules · typed schema

Events land through connectors, get normalized by a transform, and are checked against a schema before anything is stored. Malformed payloads bounce out with the exact field that failed — watch the reject tray under gate 01 while the line runs.

schema ticket.scan · v12
required: [event_id, user_id, occurred_at]
fields:
  user_id:     string     # null → reject
  occurred_at: rfc3339
on_error: reject · field-level detail

What data teams get from Sfere

Primitives to compose, not a suite to work around

The capabilities other teams consume as products are exposed to you as an API, a CLI, and infrastructure you own.

Ingest any source

A connector framework normalizes web, app, streaming, and back-office events against typed schemas, so malformed payloads get rejected with field-level detail instead of poisoning the warehouse.

POST /v1/eventstyped schema · 422 with error.fields[]

Deterministic identity resolution

Rule-based matching stitches events, warehouse rows, and profiles on identifiers you define, with priority and merge limits you set, not a black-box model you can't audit.

match_rules[].prioritymerge_limit: 5 · every merge logged

Composable with your warehouse

Map tables in your columnar analytical warehouse to the same identity graph that handles live events. Historical data joins in-place, without a copy or an extra ETL hop.

JOIN orders ON user_idcopy: 0 · etl_hops: 0

API-first, controlled through the CLI

Every capability sits behind a REST API and SDKs, and a CLI mirrors the full API surface, so configuration is reviewable, versionable, and works with CI/CD.

$ sfere apply -f pipeline.yamldiff → pull request → CI

Governed at the data layer

Consent, access, and residency are enforced where the data lives, and every config object carries version history and soft delete, so a bad change is reverted, not mourned.

config v14 · soft_delete: trueconsent · access · residency

Deploy where you run

Run in-Kingdom, on-premise, or on your own cloud, on your keys and your infrastructure, with no data egress you didn't authorize.

deploy: in-Kingdom | on-prem | your cloudkeys: yours · egress: authorized only

Your infrastructure, your rules

Most CDPs ship your data to their cloud and ask you to trust the receipt

Sfere runs where you do. Consent, residency, and access are enforced at the data layer rather than bolted on after activation, and because configuration lives behind an API and a CLI, your pipeline is reviewable in a pull request instead of a vendor console.

  • Ingest through a connector framework, then own the pipeline end to end.
  • Run a self-managed columnar analytical warehouse instead of renting a black-box tenant.
  • Configure everything through a REST API, SDKs, and a CLI that works with CI/CD.
  • Enforce consent, governance, and in-Kingdom residency at the data layer itself.

Read the platform architecture

typical cdp

Their cloud

  • Residency is wherever the vendor runs.
  • Governance is bolted on after activation.
  • Audit means trusting a console you can't diff.

sfere

Your deployment

in-Kingdomon-premiseown cloud
  • Runs on your keys and your infrastructure — no data egress you didn't authorize.
  • Consent, access, and residency enforced where the data lives.
  • Config carries version history and soft delete — a bad change is reverted, not mourned.

Evaluate it like an engineer

Walk the API surface, the deployment model, and the identity-resolution rules with our team, and pressure-test where your fan data actually lives.