Skip to content

app.push_subscriptions

TableRow level security on

Devices registered for push, per membership, so leaving an org stops its pushes (invariant 3): Compass devices through Expo Notifications (an Expo push token), and browsers through Web Push with VAPID (an endpoint and its keys, 1533).

Primary key: id

Columns of app.push_subscriptions
ColumnTypeNullableDescription
iduuidNoPrimary key, UUID v7.
org_iduuidNoOwning org, derived from app.memberships on insert; never accepted from the caller and never changed.References app.organizations.id
membership_iduuidNoMembership the device receives pushes for.References app.memberships.id
expo_push_tokentextYesExpo push token of a Compass device; null for a browser.
platformtextNoios, android or web; web exactly when the row is a browser.
last_seen_attimestamp with time zoneNoLast time the device re-registered.
revoked_attimestamp with time zoneYesWhen the device was revoked: by the person, by a push service that no longer knows it (Expo DeviceNotRegistered, Web Push 404 or 410), or because another person registered the same browser.
created_attimestamp with time zoneNoWhen the row was inserted. Set by the database.
created_byuuidYesPerson who inserted the row, or null for a platform process. Set by the database.References app.people.id
updated_attimestamp with time zoneNoWhen the row last changed. Set by the database.
updated_byuuidYesPerson who last changed the row, or null for a platform process. Set by the database.References app.people.id
deleted_attimestamp with time zoneYesSoft delete time. A row with deleted_at set is ignored by every access helper.
web_endpointtextYesWeb Push endpoint of a browser (RFC 8030), an https URL of its push service; null for a Compass device.
web_p256dhtextYesThe browser's P-256 public key for message encryption (RFC 8291), base64url; null for a Compass device.
web_authtextYesThe browser's 16-byte authentication secret (RFC 8291), base64url; null for a Compass device.
web_apptextYesApp the browser subscribed in, Atlas or Gateway, whose service worker shows the push and opens its link; null for a Compass device.