abacusai.health_source_catalog_entry
Classes
One provider the Health Data Sources surface can show — what it is called, how it looks, and how (or |
Module Contents
- class abacusai.health_source_catalog_entry.HealthSourceCatalogEntry(client, provider=None, name=None, connectName=None, category=None, kind=None, color=None, glyph=None, iconUrl=None, iconStyle=None, attributionRequired=None, connectMode=None, primaryRank=None, comingSoon=None, deprecating=None, closedToNew=None, directUpload=None, mobileOnlyDetail=None)
Bases:
abacusai.return_class.AbstractApiClassOne provider the Health Data Sources surface can show — what it is called, how it looks, and how (or
- Parameters:
client (ApiClient) – An authenticated API Client instance
provider (str) – Provider key (oura, fitbit, garmin, …), matching HealthDataSource.provider.
name (str) – Brand name, shown as-is (never translated). What a reading, workout or insight from this provider is attributed to.
connectName (str) – What the connect tile and the connected-source row call it, as-is. Equal to name unless the brand distinguishes its app from its devices: Garmin’s guidelines want the connection presented as “Garmin Connect” and the data attributed to “Garmin”.
category (str) – Stable display key the client maps to a translated label (Wearable, Fitness, Smart scale, Nutrition, Medical, CGM).
kind (str) – wearable | nutrition | cgm — the ingestion-side data shape, not a user-facing label.
color (str) – Hex brand colour for the circular source badge.
glyph (str) – One or two characters drawn on that badge when no icon renders.
iconUrl (str) – For icon_style mark, a WHITE monochrome mark on transparency, to be composited over color. One asset works in light and dark, on web and native. For icon_style tile, the provider’s own app tile, to be drawn exactly as served. Absent for a provider whose icon isn’t published yet — draw glyph instead.
iconStyle (str) – mark (the default: the white mark on a color disc, the shape every badge and disc stack draws) | tile (the provider’s app tile, drawn unaltered as a rounded square and never tinted, cropped to a circle or placed in a disc stack — Garmin’s brand guidelines forbid its mark in avatars and badges, so a client names such a provider in text where it would have drawn a disc).
attributionRequired (bool) – The provider’s brand terms require its name beside every view of its data, however many devices the user has (Garmin: “Garmin [device model]” adjacent to each data title). A client otherwise names the device only when there is more than one to tell apart; with any connected provider carrying this it names them always. Always present.
connectMode (str) – web_oauth (Terra’s hosted OAuth from a browser) | mobile_app (on-device SDK only — the phone health stores). Derived from the same provider tuple the connect endpoint enforces, so a client that offers what this says can never be refused for offering the wrong thing.
primaryRank (int) – Tie-break order when several connected devices report the SAME metric and are otherwise equally good witnesses — lower wins, unranked providers sort last. Served so the insight cards and a client’s metrics view attribute a reading to the same device.
comingSoon (bool) – Held back from launch — list it, but offer no way to connect it. Decided by the server alone (source_catalog.COMING_SOON_PROVIDERS, lifted per org for a held provider this org connects directly — Garmin on our OAuth; for Health Connect, whose Terra path is retired, it is not direct_upload), so web and app agree on what has shipped.
deprecating (bool) – Supported, but the provider is winding the integration down (Google Fit’s REST API in favour of Health Connect) — best-effort.
closedToNew (bool) – Takes no NEW users (source_catalog.CLOSED_TO_NEW_PROVIDERS): a user with no connected row of it is offered no tile and pointed at their phone’s own store, while a user who holds one keeps it — syncing, reconnectable, disconnectable; once disconnected they are new again. Per provider, the same for every org; the client answers “is this user new to it” from the sources list, which is exactly the server’s test (models.has_live_source). The connect endpoint refuses what a client still offers.
directUpload (bool) – For a mobile_app provider, whether THIS org’s app connects it on our own pipeline — the app reads the phone’s health store and uploads to _uploadHealthKitSamples — rather than through Terra’s on-device SDK. True for apple_health; true for health_connect on an org on health_health_connect_direct; false for every other provider. Always present.
mobileOnlyDetail (str) – Why a browser can’t connect this one, for a web user. Present only when connect_mode is mobile_app.
- provider = None
- name = None
- connect_name = None
- category = None
- kind = None
- color = None
- glyph = None
- icon_url = None
- icon_style = None
- attribution_required = None
- connect_mode = None
- primary_rank = None
- coming_soon = None
- deprecating = None
- closed_to_new = None
- direct_upload = None
- mobile_only_detail = None
- deprecated_keys
- __repr__()