These are your dimension tables. Almost every dashboard you build will join back to users and to communities, so get this part of the model right first. Expand any table to see what it holds and every field available through the connector.
How these tables fit together
|
From |
To |
Join |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
via |
|
|
|
|
|
|
manager |
|
|
|
|
via |
|
|
|
via |
The manager relationship is not obvious. There is no manager_id column on users. The reporting line is held in users.owner_id, which points at another row in users — so it is a self-join. Most BI tools will not let you relate a table to itself directly, so bring users in a second time as a "Managers" table and join owner_id to that copy's id. See Using the connector with your BI tool for how this works in practice. The managers_reports table is a separate join table used for report distribution, not for the org hierarchy.
Users & organisation
users — the central people table
The central table for managing people on Fuse. It defines every user, including their identity, login credentials, profile details, and associations with other entities in the system.
Fuse uses it to: authenticate and authorise access to the platform; personalise content, dashboards and notifications; track progress, activity and engagement; and manage permissions, roles and organisational structure.
Watch out: deleted_at marks deactivated users — filter these out for active-user counts. deprecated_name and deprecated_employee_number are legacy columns; use first_name, last_name and external_id instead. last_activity_at is your best single indicator of recency.
|
Field |
Role |
|---|---|
|
|
Primary key |
|
|
Tenant key |
|
|
Foreign key — the user's manager |
|
|
Identity |
|
|
Identity |
|
|
Identity |
|
|
Identity |
|
|
Legacy — do not use |
|
|
Legacy — do not use |
|
|
Provisioning source |
|
|
ID in the source system |
|
|
Permission level — reserved word, quote it in SQL |
|
|
Sign-up origin |
|
|
Authentication method |
|
|
Authentication internal |
|
|
Authentication internal |
|
|
Authentication internal |
|
|
Onboarding flag |
|
|
Timestamp |
|
|
Authentication internal |
|
|
Timestamp |
|
|
Timestamp |
|
|
Authentication internal |
|
|
Timestamp |
|
|
Timestamp |
|
|
Activity counter |
|
|
Timestamp |
|
|
Timestamp — key for activity reporting |
|
|
Session attribute |
|
|
Session attribute |
|
|
Timestamp — best recency indicator |
|
|
Security counter |
|
|
Security internal |
|
|
Timestamp |
|
|
Timestamp |
|
|
Soft delete — deactivated users |
|
|
GDPR flag |
|
|
Compliance flag |
|
|
Onboarding flag |
|
|
Onboarding progress |
|
|
Denormalised counter |
|
|
Denormalised counter |
|
|
Denormalised counter |
|
|
Denormalised counter |
|
|
Notification setting |
|
|
Profile picture reference |
|
|
Asset reference |
|
|
Serialised settings |
|
|
Privacy setting |
|
|
Gamification flag |
|
|
Accessibility setting |
|
|
Accessibility setting |
|
|
Verification flag |
|
|
One-to-one participation flag |
|
|
Timestamp — account creation |
|
|
Timestamp |
companies — your Fuse instance and its configuration
No description was provided in the source. Added here for orientation. Represents a Fuse tenant. It holds instance-level identity, branding and feature-toggle configuration. In a single-tenant connector view this will usually be one row, but it is the anchor for the company_id that appears on almost every other table.
Useful for reporting: users_count gives a headline provisioned-user figure without scanning users. enable_courses and fuse_courses_completeness_enabled tell you whether the learning features that populate user_course_progresses are switched on. Most of the remaining columns are styling and stylesheet-compilation state, of little analytical value.
|
Field |
Role |
|---|---|
|
|
Primary key — the tenant key everywhere else |
|
|
Instance name |
|
|
Instance URL |
|
|
Unique identifier |
|
|
Denormalised counter |
|
|
Instance status |
|
|
Instance type flag |
|
|
Feature toggle |
|
|
Feature toggle |
|
|
Feature toggle |
|
|
Customisation |
|
|
Customisation |
|
|
Notification default |
|
|
Navigation configuration |
|
|
Logo reference |
|
|
Branding reference |
|
|
Branding reference |
|
|
Branding |
|
|
Internal state |
|
|
Internal state |
|
|
Internal state |
|
|
Internal state |
|
|
Internal state |
|
|
Internal state |
|
|
Internal state |
|
|
Internal state |
|
|
Internal state |
|
|
Internal state |
|
|
Internal state |
|
|
Internal state |
|
|
Internal state |
|
|
Internal state |
|
|
Internal state |
|
|
Internal state |
|
|
Legacy — do not use |
|
|
Timestamp |
|
|
Timestamp |
managers_reports — links managers to reports
Organises and delivers actionable reports to managers, supporting oversight, performance tracking and decision-making. It tracks the individual reports a manager uses to review, analyse or share insights about their teams.
Fuse uses it to: generate and display reports for managers in dashboards; support decision-making and performance reviews; let managers track progress and share results; and enable filtering, searching and exporting of reports.
This is a report-distribution join table, not the organisational hierarchy. For "who reports to whom", use users.owner_id.
|
Field |
Role |
|---|---|
|
|
Primary key |
|
|
Foreign key → |
|
|
Foreign key — the report |
|
|
Tenant key |
Custom profile fields
These five tables together form Fuse's flexible profile system. profile_fields defines what can be captured, profile_values holds what each user answered, profile_field_options holds the picklist values, and the two variant tables control which version of a field a given role or context sees. If you want department, region or job title as a filter, this is where it lives.
profile_fields — defines the custom attributes you can capture
Manages customisable user profile attributes, supporting flexible data collection and personalised experiences. It stores the configuration for each profile field — name, type and validation rules — so the application can collect and display personalised user information.
Fuse uses it to: customise profiles with fields relevant to the organisation (department, location, skills); let admins create, edit and organise profile fields; support dynamic profile forms; and enable filtering, searching and reporting on profile values.
For reporting: label is the human-readable field name you will use as a column header after pivoting. exclude_from_reporting and send_to_analytics tell you which fields are intentionally kept out of analytics — respect them. deleted_at marks retired fields.
|
Field |
Role |
|---|---|
|
|
Primary key |
|
|
Tenant key |
|
|
Stable external identifier |
|
|
Display name — use as your column header |
|
|
Integration mapping |
|
|
Integration mapping |
|
|
Input type (text, dropdown, date) |
|
|
Display sequence |
|
|
Display flag |
|
|
Validation flag |
|
|
API exposure flag |
|
|
Analytics inclusion flag |
|
|
Analytics exclusion flag |
|
|
Soft delete |
|
|
Timestamp |
|
|
Timestamp |
profile_values — what each user actually answered
Stores and manages user-specific profile information, supporting personalisation, reporting and organisational management. It records each user's responses or selections for custom profile fields such as department, job title or location.
Fuse uses it to: display profile information throughout the application; support filtering, searching and reporting by profile attribute; let users and admins update profile data; and enable personalised experiences, access control and organisational grouping.
This table is tall, not wide — one row per user per field. To use profile attributes as filters, you need to pivot those rows into columns first, joining to profile_fields for the label. There is a ready-made SQL recipe on Using the connector with your BI tool; every BI tool also has its own pivot step if you prefer to do it there.
|
Field |
Role |
|---|---|
|
|
Primary key |
|
|
Foreign key → |
|
|
Foreign key → |
|
|
Foreign key → |
|
|
The answer itself — reserved word, quote it in SQL |
|
|
Display flag |
|
|
Tenant key |
|
|
Timestamp |
|
|
Timestamp |
profile_field_options — the picklist values for a field
Manages the selectable values for custom profile fields, supporting flexible and consistent profile data. It defines the possible values users can choose when filling out a field such as department, location or job title.
Fuse uses it to: present dropdowns, radio buttons and selection lists on profile forms; ensure consistent data entry; let admins create, edit and order the available options; and support filtering, searching and reporting by profile value.
For reporting: join here to get the canonical spelling of an option rather than relying on free-text values in profile_values. It is also the cleanest source for a complete filter list, including options nobody has selected yet.
|
Field |
Role |
|---|---|
|
|
Primary key |
|
|
Foreign key → |
|
|
The option text — reserved word, quote it in SQL |
|
|
Tenant key |
|
|
Timestamp |
|
|
Timestamp |
profile_field_variants — alternative versions of a profile field
Delivers flexible, context-aware profile fields. It defines alternative setups for a profile field, allowing the application to present different formats, options or behaviours depending on context — company, region or user type.
Fuse uses it to: customise profile fields for different audiences or use cases; support dynamic profile forms that adapt to user or organisational needs; let admins manage multiple versions of a field; and enable conditional display or validation.
Watch out: if the same underlying field has multiple variants, users may hold values against different variants. Group by profile_field_id rather than variant_id when you want the whole population.
|
Field |
Role |
|---|---|
|
|
Primary key |
|
|
Foreign key → |
|
|
Variant name |
|
|
Variant identifier |
|
|
Display sequence — reserved word, quote it in SQL |
|
|
Tenant key |
profile_field_variants_roles — which role sees which variant
Tailors profile fields to user roles, supporting role-based customisation and data management. It links specific profile field variants to particular roles, controlling which variants are shown or available based on a user's role.
Fuse uses it to: customise profile fields per role so the right data is collected; control visibility and editing permissions per role; support dynamic profile forms; and let admins manage which variants each role can see.
For reporting: mostly configuration rather than analysis, but useful when explaining why a profile attribute is populated for some user groups and blank for others. It also carries default landing-page and default-community settings per role.
|
Field |
Role |
|---|---|
|
|
Primary key |
|
|
Foreign key → |
|
|
Foreign key → |
|
|
Role default |
|
|
Role default |
|
|
Tenant key |
Communities & groups
communities — the spaces users belong to
Creates and manages user groups, supporting collaboration, engagement and targeted content sharing. Each community is a space where users connect, share content, collaborate and take part in discussions or activities.
Fuse uses it to: organise users into groups for collaboration, learning or social interaction; display community pages with posts, events and resources; manage membership, permissions and privacy; and support notifications, activity feeds and targeted content delivery.
For reporting: type distinguishes general communities from topic communities and learning plan communities — this matters a great deal, because audience metrics such as Topic Audience are calculated against the community attached to the topic. members_count is a quick headline figure but cannot be sliced.
|
Field |
Role |
|---|---|
|
|
Primary key |
|
|
Tenant key |
|
|
Display name |
|
|
Attribute |
|
|
Community type — general, topic, learning plan. Reserved word, quote it in SQL |
|
|
Denormalised counter |
|
|
Onboarding flag |
|
|
Access configuration |
|
|
Access configuration |
|
|
Permission flag |
|
|
Permission flag |
|
|
Notification configuration |
|
|
Display configuration |
|
|
Navigation toggle |
|
|
Navigation toggle |
|
|
Navigation toggle |
|
|
Navigation configuration |
|
|
Navigation configuration |
|
|
Asset reference |
|
|
Commercial attribute |
|
|
Commercial attribute |
|
|
Timestamp |
|
|
Timestamp |
memberships — which users are in which communities
Organises users into communities, supporting access control, collaboration and user management. It is the join table managing user membership of communities.
Fuse uses it to: control access to community content and features; manage permissions, roles and participation; support notifications, collaboration and reporting based on membership; and let admins add, remove or update memberships.
This is the single most important table for audience denominators. Universal Analytics metrics such as Users in Communities, Engaged User (%) and Inactive % all count records here. If your percentages disagree with the Fuse dashboard, check whether you are counting distinct users or membership rows — a user in five communities produces five rows.
|
Field |
Role |
|---|---|
|
|
Primary key |
|
|
Foreign key → |
|
|
Foreign key → |
|
|
Tenant key |
|
|
Membership category |
|
|
Permission flag |
|
|
Permission flag |
|
|
Permission flag — can ask questions |
|
|
Permission flag — can contribute |
|
|
Permission flag — can share links |
|
|
Permission flag — can record |
|
|
Permission flag — can publish articles |
|
|
Notification setting |
|
|
Notification setting |
|
|
Serialised settings |
|
|
Timestamp — join date |
|
|
Timestamp |
user_group_memberships — which users are in which groups
Organises users into groups, supporting group-based features and permissions. It is the join table connecting users to groups so the system can manage group membership for permissions, content access, collaboration and notifications.
Fuse uses it to: determine which users can access group-specific content or functionality; manage group-based permissions and roles; support messaging, collaboration and reporting within groups; and query all members of a group or all groups a user belongs to.
Note: groups and communities are separate concepts. Groups are a permissions construct; communities are the content and collaboration space. Do not use one as a proxy for the other.
|
Field |
Role |
|---|---|
|
|
Primary key |
|
|
Foreign key → |
|
|
Foreign key — the group |
|
|
Tenant key |
community_items — content shared into a community
Organises and delivers shared content within communities. It tracks the individual items belonging to a community, letting users share, view and interact with content in a community space.
Fuse uses it to: display shared content in community pages and feeds; support collaboration, discussion and resource sharing; let users create, edit and manage community items; and enable searching, filtering and reporting on community activity.
For reporting: this is your bridge from contents to communities. Because a single item of content can appear in several communities, expect fan-out — a view of that content will be attributed to every community it sits in unless you constrain the join or aggregate before joining.
|
Field |
Role |
|---|---|
|
|
Primary key |
|
|
Foreign key → |
|
|
Foreign key → |
|
|
Foreign key → |
|
|
Tenant key |
|
|
Timestamp |
|
|
Timestamp |
community_topics — topics assigned to a community
Organises and manages discussions within communities, supporting structured engagement and easy navigation. It defines the subjects or themes around which community members create posts, ask questions or start discussions.
Fuse uses it to: organise posts and discussions by topic; help users find relevant conversations or resources; let admins create and categorise topics; and support filtering, searching and reporting on community activity by topic.
For reporting: this join is what makes "Topic Audience" work — the audience for a topic is the membership of the community the topic is attached to. pinned_at identifies topics deliberately promoted in the community, which is useful when analysing why some topics outperform others.
|
Field |
Role |
|---|---|
|
|
Primary key |
|
|
Foreign key → |
|
|
Foreign key → |
|
|
Timestamp — promotion marker |
|
|
Tenant key |
|
|
Timestamp |
|
|
Timestamp |
Access control for performance assessments
These three tables govern who can see and manage performance assessments. They are configuration rather than analytics, but they explain gaps in assessment reporting — a user with no matching access rule will never appear in assessment data.
performance_assessments_app_access_policies
Controls and customises access to performance assessment features, ensuring proper security and permissions. It defines the rules determining which users, roles or groups can access specific features or data in the performance assessments module.
Fuse uses it to: enforce security and permissions on assessment features; let admins configure who can view or manage assessments; and support dynamic access control so only authorised users can act.
|
Field |
Role |
|---|---|
|
|
Primary key |
|
|
Access level |
|
|
Tenant key |
|
|
Timestamp |
|
|
Timestamp |
performance_assessments_app_group_access_rules
Manages and enforces group-based access to performance assessment features, so only authorised groups can perform specific actions or view sensitive data. It defines which groups can view, edit or administer parts of the performance assessments application.
Fuse uses it to: control which groups can view, edit or manage assessments; support flexible group-based permission management; enforce security on sensitive assessment data; and let admins update rules as the organisation changes.
|
Field |
Role |
|---|---|
|
|
Primary key |
|
|
Rule type — reserved word, quote it in SQL |
|
|
Foreign key → access policy |
|
|
Foreign key → |
|
|
Foreign key → |
|
|
Tenant key |
|
|
Timestamp |
|
|
Timestamp |
performance_assessments_app_user_access_rules
Manages and enforces user-specific access to performance assessment features. It defines which individual users can view, edit or administer parts of the performance assessments application.
Fuse uses it to: enforce granular access control; let admins configure each user's access level; support permission checks before displaying or allowing actions; and audit and report on access to sensitive assessment data.
|
Field |
Role |
|---|---|
|
|
Primary key |
|
|
Rule type — reserved word, quote it in SQL |
|
|
Foreign key → access policy |
|
|
Foreign key → |
|
|
Tenant key |
|
|
Timestamp |
|
|
Timestamp |