Understanding the Hubhus data model
Hubhus is built around campaigns, leads, events, resources, and users — all connected through a flexible, campaign-driven structure. Understanding how these relate is key to designing clean workflows.
TL;DR
Campaign = a self-contained workflow with its own fields and rules. Lead = one customer journey inside a campaign. Event = a calendar booking attached to a lead. Resource = anything bookable (person, vehicle, room). User = someone who logs in — not automatically a resource. Relations link leads across campaigns.
5 core entities
Campaign
A campaign is a self-contained workflow module — it defines its own fields, statuses, select lists, booking forms, automations, and integrations. Examples: Quotes, Service visits, Installations, Support cases. Each campaign has its own data model; leads do not share fields across campaigns.
Lead
A lead is one instance of work inside a campaign — a customer journey, order, or case. It holds field values, status, files, checklists, events, and history. The same person can be multiple leads across different campaigns (e.g. Quote → Installation → Invoice), each independent.
Event
An event is a calendar booking — created by a customer via booking form or manually by an internal user. Every event belongs to a resource. Events drive scheduling and availability but do not define the lead's data model.
Resource
A resource is anything that can be booked: a technician, consultant, team, vehicle, or room. Resources have calendars, business hours, travel rules, and external sync options. Resource availability determines what time slots are visible in booking forms.
User
A user is a person who logs into Hubhus with specific permissions. Important: a user is not automatically a resource. A user can be assigned to leads (as assigned_person) and manage campaigns — but does not control booking availability unless also configured as a resource.
Read more⌄
Fields — all are campaign-defined
Hubhus has no predefined fields inside campaigns. Every field is created by you — name, API slug, type (text, number, date, select, JSON, checkbox), validation rules, and visibility rules. There is no assumption that leads have email, name, or phone unless you create those fields. Keep API slugs stable once used in automations or integrations.
Relations — linking across campaigns
Relations are links between objects, not fields. Use them to connect a Quote lead to an Installation lead to an Invoice lead — each campaign keeps its own fields and logic, but the records are linked:
Quote campaign → Installation campaign → Invoice campaign
Data hierarchy
- Account — contains all campaigns, users, resources
- Campaign — defines the data model
- Lead — implements the campaign's data model
- Event — schedules work via resources
- Resource — controls availability and sync
- User — controls permissions and access
- Relations — connect objects across campaigns
Common searches
Hubhus data model • campaign vs lead • event resource • user vs resource • relations between campaigns
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article