Skip to content

Data Provider model

A Data Provider is a supplier organization that submits data to you. It is a first-class object, distinct from your own Organization and its members — a provider never sees your configuration surface (entities, transformers, rules), only a scoped submission view.

Members

A provider has its own members with roles:

  • CONTRIBUTOR — can submit data.
  • MANAGER — can also manage the provider's members.

A user who logs in as a provider has their data_provider_id resolved from their provider membership. If a user belongs to more than one provider, the active one is selected via an X-Data-Provider-Id header.

Access grants

A provider does not get blanket access. You grant access explicitly, scoped to a project + contract pair. That grant is what lets the provider create or contribute to Sessions for exactly that intake — and nothing else.

Why providers are separate from members

Suppliers are external. Modelling them as their own entity (rather than as users in your org) keeps the tenancy boundary clean: you can onboard, scope, and revoke a supplier without touching your organization's membership or exposing internal configuration.