Data dictionary

Every table in your export,
column by column.

Settings → Export All Data gives you everything your organization has in Flex as JSON and CSV. This page describes each file in that zip: what every column holds, its type, whether it can be empty, and which table it points at. The same description ships inside every export as data-dictionary.json.

105 tables 1934 columns JSON + CSV Generated from the live data model
Reading the export

Conventions

  • Each table is exported twice: json/<Table>.json (an array of row objects, column name -> value) and csv/<Table>.csv (UTF-8 with BOM, header row, RFC 4180 quoting). Both carry the columns listed here, in this order.
  • Ids: every row has a numeric primary key (usually Id) that is unique within its table. Most rows also have a SyncId, a GUID that stays the same on every device and on the server.
  • References: a column with "references" holds the key of a row in another table (Table.Column). The target may be in a table that is not exported (see excludedTables) or belong to a built-in default.
  • Types: integer, decimal (exact, e.g. money), number (floating point), boolean, string, guid, datetime (ISO-8601), date, time, binary (base64), enum.
  • Times are ISO-8601. Columns named *Utc and CreatedAt / UpdatedAt are UTC; for other datetime columns see the column's description.
  • Enums are written by name (e.g. Status = Delivered); "enumValues" lists the names. A "flags" enum can hold several names separated by ", ".
  • Soft-deleted rows are included; IsDeleted = true marks them.
  • nullable = false means every row has a value; maxLength is the longest string the column accepts (absent = unlimited).
  • Left out on purpose: passwords, sign-in and API credentials, payment-processor tokens, webhook secrets, request logs (excludedTables / excludedColumns). Photos and signatures are files, not rows.
flex-export-{org}-{date}.zip
json/<Table>.json     # array of row objects
csv/<Table>.csv       # same rows, one file per table
manifest.json         # row counts, scoping, exclusions
data-dictionary.json  # this page, machine-readable
README.txt

Export format version 1, dictionary format version 1. Scoped by under each table shows how its rows are tied to your organization (directly by OrganizationId, or through the row that owns it). The live API offers the same data: API reference · Developers.

Tables

105 tables

ActionHistory

An undoable action on an inventory item: what changed (previous and new value), who did it, and whether it was undone.

Files json/ActionHistory.json csv/ActionHistory.csv · primary key Id · scoped by e.Item.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ActionDescriptionstringno
ActionTypeenumnoPropertyValueChange PropertyNameChange ItemNameChange ItemDescriptionChange ParentItemChange CategoryChange CalculationChange PropertyAdd PropertyDelete PropertyDataTypeChange
AdditionalDatastringno
CreatedAtdatetimeno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
IsUndonebooleanno
ItemIdintegernoItems.Id
ItemSyncIdguidyesSyncId of the Items row that ItemId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
NewValuestringno
PreviousValuestringno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UndoneAtdatetimeyes
UndoneByActionIdintegeryes
UndoneByActionSyncIdguidyes
UserIdstringyes
UserSyncIdguidyes

AspNetUsers

A user account (sign-in identity) and the organization it belongs to.

Files json/AspNetUsers.json csv/AspNetUsers.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdstringnoPrimary key, unique within this table.
AccessFailedCountintegerno
Emailstringmax 256yes
EmailConfirmedbooleanno
FirstNamestringno
IsActivebooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastNamestringno
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LockoutEnabledbooleanno
LockoutEnddatetimeyes
NormalizedEmailstringmax 256yes
NormalizedUserNamestringmax 256yes
OrganizationIdintegernoOrganizations.Id
PhoneNumberstringyes
PhoneNumberConfirmedbooleanno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TwoFactorEnabledbooleanno
UserNamestringmax 256yes
ViewedChangelogbooleannoWhether the user has viewed the changelog for the current version.

Bundles

Represents an instantiated bundle in inventory.

Files json/Bundles.json csv/Bundles.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ActiveTransferIdintegeryes
ActiveTransferSyncIdguidyes
BundleTemplateIdintegernoBundleTemplates.Id
BundleTemplateSyncIdguidyesSyncId of the BundleTemplates row that BundleTemplateId points at.
CreatedBystringno
CreatedDatedatetimeno
DeletedBystringyes
DeletedDatedatetimeyes
Descriptionstringyes
IsActivebooleanno
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsInTransitbooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LocationIdintegernoLocations.Id
LocationSyncIdguidyesSyncId of the Locations row that LocationId points at.
Namestringno
OrganizationIdintegernoOrganizations.Id
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

BundleTemplateItems

One line of a bundle template: name, quantity and optional item template; lines can nest.

Files json/BundleTemplateItems.json csv/BundleTemplateItems.csv · primary key Id · scoped by e.BundleTemplate.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
BundleTemplateIdintegernoBundleTemplates.Id
BundleTemplateSyncIdguidyesSyncId of the BundleTemplates row that BundleTemplateId points at.
CategoryIdintegeryesItemCategories.Id
CategorySyncIdguidyesSyncId of the ItemCategories row that CategoryId points at.
Descriptionstringyes
HasCalculatedPropertiesbooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemTemplateIdintegeryesItemTemplates.Id
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Namestringno
ParentTemplateItemIdintegeryesBundleTemplateItems.Id
ParentTemplateItemSyncIdguidyesSyncId of the BundleTemplateItems row that ParentTemplateItemId points at.
Quantityintegerno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

BundleTemplates

A reusable recipe for a bundle: the item templates and quantities it is built from.

Files json/BundleTemplates.json csv/BundleTemplates.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedAtdatetimeno
CreatedBystringyes
Descriptionstringyes
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Namestringno
OrganizationIdintegernoOrganizations.Id
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdatedAtdatetimeyes
UpdatedBystringyes
VendorIdintegeryesVendors.Id
VendorPartNumberstringmax 100yes
VendorSyncIdguidyesSyncId of the Vendors row that VendorId points at.
WholesalePricedecimalyes

CalculationDependencies

A link between two items that a calculated property relies on, so a change to the referenced item recalculates the dependent one.

Files json/CalculationDependencies.json csv/CalculationDependencies.csv · primary key Id · scoped by e.DependentItem.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdguidnoPrimary key, unique within this table.
CreatedAtdatetimeno
DependentItemIdintegernoItems.IdThe item that has the property depending on another item's property ie, the child in a parent-child relationship or the parent in a child-parent relationship
DependentItemSyncIdguidyesSyncId of the Items row that DependentItemId points at.
GenerationintegernoGeneration/depth level in the hierarchy (1-based) 1 = direct parent/child, 2 = grandparent/grandchild, etc.
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
PropertyReferenceIdguidnoCalculationPropertyReferences.Id
ReferencedItemIdintegernoItems.IdThe item that is being depended on ie, the parent in a parent-child relationship or the child in a child-parent relationship
ReferencedItemSyncIdguidyesSyncId of the Items row that ReferencedItemId points at.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdatedAtdatetimeyes

CalculationPropertyReferences

A property that a property calculation reads, or writes, as part of its formula.

Files json/CalculationPropertyReferences.json csv/CalculationPropertyReferences.csv · primary key Id · scoped by (e.PropertyCalculation.Property != null && (e.PropertyCalculation.Property.Item != null && e.PropertyCalculation.Property.Item.OrganizationId == org) || (e.PropertyCalculation.Property.BundleTemplateItem != null && e.PropertyCalculation.Property.BundleTemplateItem.BundleTemplate.OrganizationId == org) || (e.PropertyCalculation.Property.KitItem != null && e.PropertyCalculation.Property.KitItem.Kit.OrganizationId == org)) || (e.PropertyCalculation.TemplateProperty != null && e.PropertyCalculation.TemplateProperty.ItemTemplate.OrganizationId == org)

ColumnTypeEmpty?ReferencesDescription
IdguidnoPrimary key, unique within this table.
DirectionenumnoSelf Parent Child
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
OrderIndexintegerno
PropertyCalculationIdintegernoPropertyCalculations.Id
PropertyCalculationSyncIdguidyesSyncId of the PropertyCalculations row that PropertyCalculationId points at.
ReferencedPropertyIdintegeryesItemProperties.Id
ReferencedPropertySyncIdguidyesSyncId of the ItemProperties row that ReferencedPropertyId points at.
ReferencedTemplatePropertyIdintegeryesItemTemplateProperties.Id
ReferencedTemplatePropertySyncIdguidyesSyncId of the ItemTemplateProperties row that ReferencedTemplatePropertyId points at.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

CategoryProperties

A property that every item in a category carries (name, data type, default and validation).

Files json/CategoryProperties.json csv/CategoryProperties.csv · primary key Id · scoped by e.Category.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CategoryIdintegernoItemCategories.Id
CategorySyncIdguidyesSyncId of the ItemCategories row that CategoryId points at.
DataTypeenumnoText Number Date Boolean Dropdown MultiSelect
DefaultValuestringyes
DisplayOrderintegerno
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
IsRequiredbooleanno
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Optionsstringyes
OverridesParentPropertybooleanno
PropertyNamestringmax 100no
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
ValidationPatternstringyes

CustomCharges

A custom charge (fee or other line) on a job, with price, discount and cost.

Files json/CustomCharges.json csv/CustomCharges.csv · primary key Id · scoped by e.Job.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
Costdecimalno
CreatedBystringyes
CreatedDatedatetimeno
Descriptionstringmax 500yes
DiscountAmountdecimalno
DiscountPercentdecimalnoDiscount
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
JobIdintegernoJobs.Id
JobSyncIdguidyesSyncId of the Jobs row that JobId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
ModifiedBystringyes
ModifiedDatedatetimeyes
Namestringmax 200noCharge Name
Pricedecimalno
SortOrderintegerno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

CustomerAddresses

An address of a customer (a service site, or the mailing address).

Files json/CustomerAddresses.json csv/CustomerAddresses.csv · primary key Id · scoped by e.Customer.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
Addressstringmax 200yes
Address2stringmax 200yesAddress Line 2
Citystringmax 100yes
Countrystringmax 100yes
CreatedBystringyes
CreatedDatedatetimeno
CustomerIdintegernoCustomers.Id
CustomerSyncIdguidyesSyncId of the Customers row that CustomerId points at.
IsActivebooleanno
IsMailingAddressbooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
ModifiedBystringyes
ModifiedDatedatetimeyes
Namestringmax 100noAddress Name
Notesstringmax 500yes
PostalCodestringmax 20yesZIP/Postal Code
Statestringmax 50yesState/Province
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

Customers

A customer of the organization: contact details, billing information and notes.

Files json/Customers.json csv/Customers.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
Addressstringmax 200yes
Address2stringmax 200yesAddress Line 2
Citystringmax 100yes
CompanyNamestringmax 200yes
Countrystringmax 100yes
CreatedBystringyes
CreatedDatedatetimeno
CreditLimitdecimalno
CurrentBalancedecimalno
CustomerStatusenumnoNone Preferred Difficult
CustomerTypeenumnoEndCustomer Installer Distributor Commercial
DeletedBystringyes
DeletedDatedatetimeyes
Emailstringmax 256yes
IsActivebooleanno
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
IsTaxExemptbooleanyesTax Exempt
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
MobilePhonestringmax 20yes
ModifiedBystringyes
ModifiedDatedatetimeyes
Namestringmax 200noCustomer Name
Notesstringyes
OrganizationIdintegernoOrganizations.Id
PaymentTermsenumnoDueOnReceipt Net15 Net30 Net45 Net60 COD Prepaid
Phonestringmax 20yes
PostalCodestringmax 20yesZIP/Postal Code
PriceTierenumnoStandard Silver Gold Platinum Custom
PrimaryContactstringmax 100yes
Statestringmax 50yesState/Province
StoreCreditBalancedecimalno
StoreCreditNotesstringyes
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TaxIdstringmax 50yes
WarningNotesstringmax 1000yes

CustomRoles

A custom role: a named set of permissions an organization defines for its users.

Files json/CustomRoles.json csv/CustomRoles.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedAtdatetimeno
CreatedByIdstringyesAspNetUsers.Id
CreatedBySyncIdguidyesSyncId of the AspNetUsers row that CreatedById points at.
Descriptionstringno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Namestringno
OrganizationIdintegernoOrganizations.Id
PermissionsJsonstringno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdatedAtdatetimeyes

EstimatePreInspectionTemplateItems

An individual checklist item within a section

Files json/EstimatePreInspectionTemplateItems.json csv/EstimatePreInspectionTemplateItems.csv · primary key Id · scoped by e.Section.Template.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CustomStatusOptionsOverridestringyesCustom status options when StatusFieldTypeOverride = Custom.
DisplayOrderintegerno
HasItemNotesbooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemTextstringmax 500no
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
SectionIdintegernoEstimatePreInspectionTemplateSections.Id
SectionSyncIdguidyesSyncId of the EstimatePreInspectionTemplateSections row that SectionId points at.
StatusFieldTypeOverrideenumyesOverride the template's status field type for this specific item.CheckboxOnly PassFail PassNeedsAttentionFail PassNeedsAttentionFailNA Custom
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

EstimatePreInspectionTemplates

Template for pre-inspection checklists that can be used during job estimates

Files json/EstimatePreInspectionTemplates.json csv/EstimatePreInspectionTemplates.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedBystringyes
CreatedDatedatetimeno
CustomStatusOptionsstringyesJSON array of custom status options when StatusFieldType = Custom e.g., ["Good", "Fair", "Poor"]
Descriptionstringmax 500yes
IsActivebooleanno
IsDefaultbooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
ModifiedBystringyes
ModifiedDatedatetimeyes
Namestringmax 200noTemplate Name
OrganizationIdintegernoOrganizations.Id
StatusFieldTypeenumnoCheckboxOnly PassFail PassNeedsAttentionFail PassNeedsAttentionFailNA Custom
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

EstimatePreInspectionTemplateSections

A section/grouping within a pre-inspection template

Files json/EstimatePreInspectionTemplateSections.json csv/EstimatePreInspectionTemplateSections.csv · primary key Id · scoped by e.Template.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
DisplayOrderintegerno
HasSectionNotesbooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Namestringmax 200noSection Name
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TemplateIdintegernoEstimatePreInspectionTemplates.Id
TemplateSyncIdguidyesSyncId of the EstimatePreInspectionTemplates row that TemplateId points at.

GlobalVariables

Represents a global variable that can be used in calculations across all items and templates.

Files json/GlobalVariables.json csv/GlobalVariables.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedAtdatetimeno
Descriptionstringmax 500yes
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Namestringmax 100no
OrganizationIdintegernoOrganizations.Id
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdatedAtdatetimeyes
ValuedecimalnoThe numeric value of the global variable.

HeaderSynonyms

Maps CSV header synonyms to standard property mappings.

Files json/HeaderSynonyms.json csv/HeaderSynonyms.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
BarcodeTypestringmax 50yesFor Barcode mappings, the barcode type (SKU, UPC, etc.).
CreatedAtdatetimeno
IsActivebooleannoWhether this synonym is active.
IsBuiltInbooleannoWhether this is a built-in (system) synonym or user-created.
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
MappingTypeenumnoThe target mapping type.Property Category Barcode Skip
OrganizationIdintegeryesOrganizations.IdOrganization ID for org-specific synonyms.
PriorityintegernoPriority for matching (lower = higher priority).
PropertyNamestringmax 100yesFor Property mappings, the property name to map to.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
Synonymstringmax 100noThe CSV header value (synonym) that should trigger this mapping.
UpdatedAtdatetimeyes

ImportJobs

One CSV import run: the file, its vendor and template, status and row counts.

Files json/ImportJobs.json csv/ImportJobs.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
BarcodeColumnsJsonstringyes
CategoryColumnsJsonstringyes
CategoryMappingJsonstringyes
ColumnMappingJsonstringyes
CompletedAtdatetimeyes
CreatedAtdatetimeno
CreatedBystringmax 100no
CsvContentstringyes
DeletedAtdatetimeyes
DeletedBystringyes
DualPriceConfigJsonstringyes
DuplicateResolutionJsonstringyes
ErrorLogstringmax 2000yes
FailedRowsintegerno
FileNamestringmax 200no
FileSizeintegerno
ImportTemplateIdintegeryesImportTemplates.Id
ImportTemplateSyncIdguidyesSyncId of the ImportTemplates row that ImportTemplateId points at.
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
OrganizationIdintegernoOrganizations.Id
PendingTemplateNamestringmax 200yes
PrimaryBarcodeColumnstringmax 200yes
ProcessedRowsintegerno
SplitColumnsConfigJsonstringyes
SplitColumnsJsonstringyes
StartedAtdatetimeyes
StatusenumnoPending Processing Completed Failed PartiallyCompleted Cancelled
SuccessfulRowsintegerno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TemplateAssignmentJsonstringyes
TemplateColumnsJsonstringyes
TotalRowsintegerno
VendorIdintegeryesVendors.Id
VendorSyncIdguidyesSyncId of the Vendors row that VendorId points at.

ImportTemplates

A saved CSV column mapping for importing a vendor's price list or catalog.

Files json/ImportTemplates.json csv/ImportTemplates.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ColumnMappingJsonstringno
CreatedAtdatetimeno
CreatedBystringmax 100no
DefaultCategoryIdintegeryesItemCategories.Id
Descriptionstringmax 500yes
GlobalTransformationsJsonstringyes
IsActivebooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemOverridesJsonstringyes
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
MatchingFieldstringmax 50yes
Namestringmax 100no
NameTransformationsJsonstringyes
OrganizationIdintegernoOrganizations.Id
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdateExistingItemsbooleanno
UpdatedAtdatetimeno
UpdatedBystringmax 100yes
VendorIdintegernoVendors.Id

InvoiceLineItems

One line of an invoice: description, type, quantity, unit price and discount.

Files json/InvoiceLineItems.json csv/InvoiceLineItems.csv · primary key Id · scoped by e.Invoice.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ConfigurationSummarystringmax 1000yesConfiguration
CustomChargeSyncIdguidyes
Descriptionstringmax 500no
DiscountAmountdecimalno
DiscountPercentdecimalnoDiscount %
InvoiceIdintegernoInvoices.Id
InvoiceSyncIdguidyesSyncId of the Invoices row that InvoiceId points at.
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemTypeenumnoMaterial Labor Service Other
JobItemIdintegeryes
JobItemSyncIdguidyes
LaborItemSyncIdguidyes
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringmax 1000yesLine Note
OriginalUnitPricedecimalyes
Quantitydecimalno
SalesOrderItemIdintegeryes
SalesOrderItemSyncIdguidyes
SortOrderintegerno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UnitOfMeasurestringmax 50yes
UnitPricedecimalno

InvoiceNotes

A note on an invoice.

Files json/InvoiceNotes.json csv/InvoiceNotes.csv · primary key Id · scoped by e.Invoice.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedBystringyes
CreatedDatedatetimeno
InvoiceIdintegernoInvoices.Id
InvoiceSyncIdguidyesSyncId of the Invoices row that InvoiceId points at.
IsInternalbooleannoHide from Customer
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
ModifiedBystringyes
ModifiedDatedatetimeyes
NoteTextstringnoNote
NoteTypeenumnoGeneral Payment Internal CustomerCommunication BillingAdjustment
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

InvoicePayments

Represents a payment record for an invoice.

Files json/InvoicePayments.json csv/InvoicePayments.csv · primary key Id · scoped by e.Invoice.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
Amountdecimalno
CreatedBystringmax 100yes
CreatedDatedatetimeno
FeeStatusenumnoWhether InvoicePayment.ProcessorFee can be trusted yet.NotApplicable Pending Known Revised
InvoiceIdintegernoInvoices.Id
InvoiceSyncIdguidyesSyncId of the Invoices row that InvoiceId points at.
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
ModifiedBystringmax 100yes
ModifiedDatedatetimeyes
Notesstringmax 500yes
PaymentDatedatetimeno
PaymentMethodstringmax 50yes
ProcessorenumnoWhich processor took this payment, or PaymentProcessor.None for cash, cheque and anything else keyed in by hand.None Square Stripe
ProcessorFeedecimalyesWhat the processor kept, in the same currency as InvoicePayment.Amount.
ProcessorTransactionIdstringmax 100yesThe processor's own id for the payment (Stripe PaymentIntent, Square Payment).
ReferenceNumberstringmax 100yes
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

Invoices

An invoice to a customer: number, dates, status, tax, discounts and amount paid.

Files json/Invoices.json csv/Invoices.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
AmountPaiddecimalno
ConsolidatedIntoInvoiceIdintegeryesInvoices.IdIf this invoice was consolidated into another invoice, this references the combined invoice
ConsolidatedIntoInvoiceSyncIdguidyesSyncId of the Invoices row that ConsolidatedIntoInvoiceId points at.
CreatedBystringyes
CreatedDatedatetimeno
CustomerAddressIdintegeryesCustomerAddresses.IdService Address
CustomerAddressSyncIdguidyesSyncId of the CustomerAddresses row that CustomerAddressId points at.
CustomerIdintegeryesCustomers.IdCustomer
CustomerSyncIdguidyesSyncId of the Customers row that CustomerId points at.
Descriptionstringmax 2000yes
DueDatedatetimeno
EmailedAtdatetimeyesInvoice Emailed At
EmailedTostringmax 200yesInvoice Emailed To
InvoiceDatedatetimeno
InvoiceNumberstringmax 50no
InvoiceSequenceNumberintegeryesSequence number for multiple invoices on same sales order or job (1, 2, 3, etc.) For supplemental invoices: 1 = original, 2 = first supplement, 3 = second supplement NULL for standalone invoices only
IsConsolidatedInvoicebooleannoQuick flag to identify consolidated invoices (avoids parsing SourceInvoiceIds)
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
IsStandalonebooleannoIs Standalone Invoice
JobDiscountFactordecimalnoJob-level discount factor FROZEN at finalize time. 1 = none/legacy.
JobDiscountNotestringmax 500yes
JobDiscountPercentdecimalyesFrozen percent for the discount row label ("Discount (10%)"); null for $-type or none.
JobIdintegeryesJobs.IdJob
JobSyncIdguidyesSyncId of the Jobs row that JobId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
ModifiedBystringyes
ModifiedDatedatetimeyes
Notesstringyes
OrganizationIdintegernoOrganizations.Id
PaidDatedatetimeyes
PaymentInstructionsstringyes
PaymentLinkCreatedAtdatetimeyesPayment Link Created
PaymentLinkIdstringmax 200yes
PaymentLinkUrlstringmax 500yes
SalesOrderIdintegeryesSalesOrders.IdSales Order
SalesOrderSyncIdguidyesSyncId of the SalesOrders row that SalesOrderId points at.
SentDatedatetimeyes
SourceInvoiceIdsstringmax 4000yesFor consolidated invoices: JSON array of source invoice IDs that were combined Example: "[123, 456, 789]"
SourceInvoiceSyncIdsstringmax 4000yes
StatusenumnoDraft Sent Viewed PartiallyPaid Paid Overdue Cancelled Outstanding Consolidated
StoreCreditApplieddecimalno
Subtotaldecimalno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TaxAmountOverridedecimalyesPre-computed tax amount for consolidated invoices with mixed tax rates.
TaxRatedecimalno
TaxableSubtotaldecimalyesTaxable portion of the subtotal.
Termsstringmax 500yesPayment Terms

ItemBarcodes

Represents a barcode associated with a specific inventory item.

Files json/ItemBarcodes.json csv/ItemBarcodes.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
BarcodeValuestringmax 100no
CreatedAtdatetimeno
DeletedAtdatetimeyes
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
IsPrimarybooleannoIndicates if this is the primary/default barcode for the item
ItemIdintegernoItems.Id
ItemSyncIdguidyesSyncId of the Items row that ItemId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
OrganizationIdintegernoOrganizations.Id
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
Typestringmax 50noFlexible barcode type - user can define any type.
UpdatedAtdatetimeyes

ItemCatalog

Represents a catalog entry for standard inventory items.

Files json/ItemCatalog.json csv/ItemCatalog.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
Barcodestringyes
CategoryIdintegeryesItemCategories.Id
CreatedAtdatetimeno
Descriptionstringyes
Namestringmax 100noItem Name
OrganizationIdintegernoOrganizations.Id
UpdatedAtdatetimeyes

ItemCatalogProperty

Represents a property for an item catalog entry.

Files json/ItemCatalogProperty.json csv/ItemCatalogProperty.csv · primary key Id · scoped by e.ItemCatalog.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ItemCatalogIdintegernoItemCatalog.Id
PropertyNamestringmax 100no
PropertyValuestringno

ItemCategories

A category that items and templates are classified by (categories can be nested).

Files json/ItemCategories.json csv/ItemCategories.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedAtdatetimeno
Descriptionstringyes
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
IsSystemCategorybooleanno
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Namestringmax 100no
OrganizationIdintegernoOrganizations.Id
ParentCategoryIdintegeryesItemCategories.Id
ParentCategorySyncIdguidyesSyncId of the ItemCategories row that ParentCategoryId points at.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TemplateBuilderIdintegeryesTemplateBuilders.Id
TemplateBuilderSyncIdguidyesSyncId of the TemplateBuilders row that TemplateBuilderId points at.
UpdatedAtdatetimeyes

ItemCategoryAssignments

Junction table for many-to-many relationship between Item and ItemCategory.

Files json/ItemCategoryAssignments.json csv/ItemCategoryAssignments.csv · primary key Id · scoped by e.Item.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CategoryIdintegernoItemCategories.Id
CategorySyncIdguidyesSyncId of the ItemCategories row that CategoryId points at.
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemIdintegernoItems.Id
ItemSyncIdguidyesSyncId of the Items row that ItemId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

ItemChangeLogs

A history entry for an inventory item: a move, property change or other change.

Files json/ItemChangeLogs.json csv/ItemChangeLogs.csv · primary key Id · scoped by e.Item != null && e.Item.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ChangeTypeenumnoCreated Updated Deleted LocationChanged ParentChanged PropertyChanged
ChangedAtdatetimeno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemIdintegernoItems.Id
ItemSyncIdguidyesSyncId of the Items row that ItemId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
NewLocationIdintegeryes
NewLocationSyncIdguidyes
NewParentIdintegeryes
NewParentSyncIdguidyes
NewValuesstringyes
OldLocationIdintegeryes
OldLocationSyncIdguidyes
OldParentIdintegeryes
OldParentSyncIdguidyes
OldValuesstringyes
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UserIdstringyesAspNetUsers.Id
UserSyncIdguidyesSyncId of the AspNetUsers row that UserId points at.

ItemProperties

A property value on an item, bundle line or kit line (name, value and data type).

Files json/ItemProperties.json csv/ItemProperties.csv · primary key Id · scoped by (e.Item != null && e.Item.OrganizationId == org) || (e.BundleTemplateItem != null && e.BundleTemplateItem.BundleTemplate.OrganizationId == org) || (e.KitItem != null && e.KitItem.Kit.OrganizationId == org)

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
BundleTemplateItemIdintegeryesBundleTemplateItems.Id
BundleTemplateItemSyncIdguidyesSyncId of the BundleTemplateItems row that BundleTemplateItemId points at.
DataTypeenumnoText Number Date Boolean Dropdown MultiSelect
IsLocalPropertybooleanno
IsOverwrittenbooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemIdintegeryesItems.Id
ItemSyncIdguidyesSyncId of the Items row that ItemId points at.
KitItemIdintegeryesKitItems.Id
KitItemSyncIdguidyesSyncId of the KitItems row that KitItemId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Optionsstringyes
PropertyNamestringno
PropertyValuestringno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

Items

An inventory item: one physical unit or stock line, where it is, and what it was made from.

Files json/Items.json csv/Items.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ActiveTransferIdintegeryes
ActiveTransferSyncIdguidyes
AutoGeneratedNamestringmax 500yes
BundleIdintegeryesBundles.Id
BundleSyncIdguidyesSyncId of the Bundles row that BundleId points at.
CreatedAtdatetimeno
Descriptionstringyes
DirectCategoryIdsstringyes
DirectCategorySyncIdsstringyes
HasCalculatedPropertiesbooleanno
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsInTransitbooleanno
IsNameOverwrittenbooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastMovedAtdatetimeyes
LastMovedBystringmax 100yes
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LocationIdintegeryesLocations.Id
LocationSyncIdguidyesSyncId of the Locations row that LocationId points at.
MoveHistorystringyes
Namestringno
OrganizationIdintegernoOrganizations.Id
ParentItemIdintegeryesItems.Id
ParentItemSyncIdguidyesSyncId of the Items row that ParentItemId points at.
ReceivedItemIdintegeryesReceivedItems.Id
SourcePurchaseOrderIdintegeryesPurchaseOrders.Id
SourcePurchaseOrderSyncIdguidyesSyncId of the PurchaseOrders row that SourcePurchaseOrderId points at.
SourceShipmentIdintegeryesPurchaseOrderShipments.Id
SourceShipmentSyncIdguidyesSyncId of the PurchaseOrderShipments row that SourceShipmentId points at.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TemplateIdintegeryesItemTemplates.Id
TemplateSyncIdguidyesSyncId of the ItemTemplates row that TemplateId points at.
UnitsConsumedintegerno
UpdatedAtdatetimeyes

ItemStockThresholds

A minimum-stock rule for an item template, optionally per location, used for low-stock alerts.

Files json/ItemStockThresholds.json csv/ItemStockThresholds.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedAtdatetimeno
CreatedBystringmax 100no
IsActivebooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemTemplateIdintegernoItemTemplates.Id
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LocationIdintegeryesLocations.Id
LocationSyncIdguidyesSyncId of the Locations row that LocationId points at.
MinimumStockintegerno
OrganizationIdintegernoOrganizations.Id
ReorderQuantityintegeryes
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdatedAtdatetimeno
UpdatedBystringmax 100no

ItemTemplateBarcodes

Represents a barcode associated with an item template.

Files json/ItemTemplateBarcodes.json csv/ItemTemplateBarcodes.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
BarcodeValuestringmax 100no
CreatedAtdatetimeno
DeletedAtdatetimeyes
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
IsPrimarybooleannoIndicates if this is the primary/default barcode for the template
ItemTemplateIdintegernoItemTemplates.Id
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
OrganizationIdintegernoOrganizations.Id
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
Typestringmax 50noFlexible barcode type - user can define any type.
UpdatedAtdatetimeyes

ItemTemplateCategoryAssignments

Junction table for many-to-many relationship between ItemTemplate and ItemCategory.

Files json/ItemTemplateCategoryAssignments.json csv/ItemTemplateCategoryAssignments.csv · primary key Id · scoped by e.ItemTemplate.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CategoryIdintegernoItemCategories.Id
CategorySyncIdguidyesSyncId of the ItemCategories row that CategoryId points at.
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemTemplateIdintegernoItemTemplates.Id
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

ItemTemplateModifierGroups

One option step ("Add-on" group) shown when adding a configurable item to a job: e.g. a garage door's "Color", "Panel", "Windows", "Premium Hardware".

Files json/ItemTemplateModifierGroups.json csv/ItemTemplateModifierGroups.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
DisplayOrderintegerno
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemTemplateIdintegernoItemTemplates.Id
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
MaxTotalQuantityintegeryes
Namestringmax 100no
OrganizationIdintegernoOrganizations.Id
SelectionModeenumnoChooseOne ChooseOneOptional ChooseManyWithQuantity
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

ItemTemplateModifierOptions

One choice within an ItemTemplateModifierGroup, e.g. Color -> "Weathered Grey" (+25% of base) or Windows -> "Clear Window Short, Pan" (+$28.25 per lite).

Files json/ItemTemplateModifierOptions.json csv/ItemTemplateModifierOptions.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
DisplayOrderintegerno
IsDefaultbooleanno
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
ModifierGroupIdintegernoItemTemplateModifierGroups.Id
ModifierGroupSyncIdguidyesSyncId of the ItemTemplateModifierGroups row that ModifierGroupId points at.
Namestringmax 150no
OrganizationIdintegernoOrganizations.Id
PriceTypeenumnoFixed PercentOfBase
PriceValuedecimalno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

ItemTemplatePriceTiers

One quantity price break for an item template (Bulk Pricing).

Files json/ItemTemplatePriceTiers.json csv/ItemTemplatePriceTiers.csv · primary key Id · scoped by e.ItemTemplate.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemTemplateIdintegernoItemTemplates.Id
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
MinQuantityintegerno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UnitPricedecimalno

ItemTemplateProperties

Represents a property for an item template.

Files json/ItemTemplateProperties.json csv/ItemTemplateProperties.csv · primary key Id · scoped by e.ItemTemplate.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
DataTypeenumnoText Number Date Boolean Dropdown MultiSelect
IsLocalPropertybooleanno
IsOverwrittenbooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemTemplateIdintegernoItemTemplates.Id
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Optionsstringyes
PropertyNamestringmax 100no
PropertyValuestringno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

ItemTemplates

Represents a template for creating inventory items

Files json/ItemTemplates.json csv/ItemTemplates.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
AutoGeneratedNamestringmax 500yes
CategoryIdintegeryesItemCategories.Id
CategorySyncIdguidyesSyncId of the ItemCategories row that CategoryId points at.
CreatedAtdatetimeno
Descriptionstringyes
DirectCategoryIdsstringyes
DirectCategorySyncIdsstringyes
ImportJobIdintegeryesImportJobs.Id
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsDraftbooleanno
IsMiscItembooleanno
IsNameOverwrittenbooleanno
IsParentTemplatebooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Namestringmax 100no
OrganizationIdintegernoOrganizations.Id
ParentTemplateIdintegeryesItemTemplates.Id
ParentTemplateSyncIdguidyesSyncId of the ItemTemplates row that ParentTemplateId points at.
SellByUnitsbooleanno
SubUnitParentTemplateSyncIdguidyes
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TemplateBuilderIdintegeryesTemplateBuilders.Id
TemplateBuilderSyncIdguidyesSyncId of the TemplateBuilders row that TemplateBuilderId points at.
UnitNamestringmax 50yes
UnitsPerParentintegeryes
UpdatedAtdatetimeyes

ItemTemplateSimilarities

A link between two similar item templates (type of similarity, score and notes).

Files json/ItemTemplateSimilarities.json csv/ItemTemplateSimilarities.csv · primary key Id · scoped by e.ItemTemplate.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedBystringmax 450no
CreatedDatedatetimeno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemTemplateIdintegernoItemTemplates.Id
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringmax 500yes
SimilarItemTemplateIdintegernoItemTemplates.Id
SimilarItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that SimilarItemTemplateId points at.
SimilarityScoredecimalno
SimilarityTypestringmax 50no
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdatedBystringmax 450yes
UpdatedDatedatetimeyes

JobAssignments

A user assigned to work a scheduled job.

Files json/JobAssignments.json csv/JobAssignments.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedAtdatetimeno
CreatedBystringmax 256yes
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
JobIdintegernoJobs.Id
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringmax 200yes
OrganizationIdintegerno
ScheduleGroupIdintegeryesScheduleGroups.Id
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UserIdstringnoAspNetUsers.Id

JobEstimateOptionCharges

Custom charge within an estimate option

Files json/JobEstimateOptionCharges.json csv/JobEstimateOptionCharges.csv · primary key Id · scoped by e.EstimateOption.Job.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
Costdecimalno
Descriptionstringmax 500yes
DisplayOrderintegerno
EstimateOptionIdintegernoJobEstimateOptions.Id
EstimateOptionSyncIdguidyesSyncId of the JobEstimateOptions row that EstimateOptionId points at.
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Namestringmax 200noCharge Name
Pricedecimalno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

JobEstimateOptionLabors

Labor item within an estimate option

Files json/JobEstimateOptionLabors.json csv/JobEstimateOptionLabors.csv · primary key Id · scoped by e.EstimateOption.Job.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CustomerRatedecimalno
Descriptionstringmax 200no
DisplayOrderintegerno
EmployeeCostRatedecimalno
EstimateOptionIdintegernoJobEstimateOptions.Id
EstimateOptionSyncIdguidyesSyncId of the JobEstimateOptions row that EstimateOptionId points at.
EstimatedHoursdecimalno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LaborRateIdintegeryesLaborRates.IdLabor Rate
LaborRateSyncIdguidyesSyncId of the LaborRates row that LaborRateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringmax 500yes
OverheadFactordecimalno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

JobEstimateOptionMaterials

Material item within an estimate option

Files json/JobEstimateOptionMaterials.json csv/JobEstimateOptionMaterials.csv · primary key Id · scoped by e.EstimateOption.Job.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
Descriptionstringmax 200no
DiscountPercentdecimalnoDiscount %
DisplayOrderintegerno
EstimateOptionIdintegernoJobEstimateOptions.Id
EstimateOptionSyncIdguidyesSyncId of the JobEstimateOptions row that EstimateOptionId points at.
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemTemplateIdintegeryesItemTemplates.IdItem Template
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringmax 500yes
Quantityintegerno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UnitCostdecimalno
UnitPricedecimalno

JobEstimateOptions

Represents an option in a job estimate (e.g., "Basic Package", "Premium Package").

Files json/JobEstimateOptions.json csv/JobEstimateOptions.csv · primary key Id · scoped by e.Job.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedDatedatetimeno
Descriptionstringmax 500yes
DisplayOrderintegerno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
IsRecommendedbooleanno
IsSelectedbooleanno
JobIdintegernoJobs.Id
JobSyncIdguidyesSyncId of the Jobs row that JobId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Namestringmax 100noOption Name
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

JobEstimatePreInspectionItems

A completed item response in a job's pre-inspection checklist

Files json/JobEstimatePreInspectionItems.json csv/JobEstimatePreInspectionItems.csv · primary key Id · scoped by e.JobInspection.Job.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CompletedByIdstringyesAspNetUsers.IdCompleted By
CompletedBySyncIdguidyesSyncId of the AspNetUsers row that CompletedById points at.
CompletedDatedatetimeyes
DisplayOrderintegerno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemTextstringmax 500no
JobInspectionIdintegernoJobEstimatePreInspections.Id
JobInspectionSyncIdguidyesSyncId of the JobEstimatePreInspections row that JobInspectionId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringyes
SectionNamestringmax 200yes
SectionNotesstringyesSection-level notes (stored on first item of section for simplicity)
StatusValuestringmax 100yesThe selected status value - "Pass", "Fail", "true", "false", etc.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TemplateItemIdintegeryesEstimatePreInspectionTemplateItems.IdReference to the template item (null if ad-hoc item added during inspection)
TemplateItemSyncIdguidyesSyncId of the EstimatePreInspectionTemplateItems row that TemplateItemId points at.
TemplateSectionIdintegeryesEstimatePreInspectionTemplateSections.IdReference to the section (for ordering and grouping)
TemplateSectionSyncIdguidyesSyncId of the EstimatePreInspectionTemplateSections row that TemplateSectionId points at.

JobEstimatePreInspections

A completed pre-inspection checklist for a specific job

Files json/JobEstimatePreInspections.json csv/JobEstimatePreInspections.csv · primary key Id · scoped by e.Job.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CompletedDatedatetimeyes
CreatedBystringyes
CreatedDatedatetimeno
CustomTitlestringmax 200yesUser can override the title for this specific job's checklist
IncludeInPdfbooleanno
InspectedByIdstringyesAspNetUsers.IdInspected By
InspectedBySyncIdguidyesSyncId of the AspNetUsers row that InspectedById points at.
InspectedDatedatetimeyes
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
JobIdintegernoJobs.Id
JobSyncIdguidyesSyncId of the Jobs row that JobId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LockedDatedatetimeyesWhen the job started - checklist becomes read-only after this
ModifiedBystringyes
ModifiedDatedatetimeyes
StatusenumnoNotStarted InProgress Completed
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TemplateIdintegernoEstimatePreInspectionTemplates.Id
TemplateSyncIdguidyesSyncId of the EstimatePreInspectionTemplates row that TemplateId points at.

JobEstimatePreInspectionSnapshots

Snapshot of a pre-inspection checklist state for audit purposes

Files json/JobEstimatePreInspectionSnapshots.json csv/JobEstimatePreInspectionSnapshots.csv · primary key Id · scoped by e.JobInspection.Job.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedBystringyes
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
JobInspectionIdintegernoJobEstimatePreInspections.Id
JobInspectionSyncIdguidyesSyncId of the JobEstimatePreInspections row that JobInspectionId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringmax 500yes
SnapshotDatastringnoJSON serialization of the full checklist state at time of snapshot
SnapshotDatedatetimeno
SnapshotTypeenumnoSentToCustomer PreEdit JobStarted ManualSave
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

JobItemModifierSelections

A configured add-on choice on a job line — SNAPSHOT semantics, like JobItem.UnitPrice.

Files json/JobItemModifierSelections.json csv/JobItemModifierSelections.csv · primary key Id · scoped by e.JobItem.Job.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
GroupNamestringmax 100no
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
JobItemIdintegernoJobItems.Id
JobItemSyncIdguidyesSyncId of the JobItems row that JobItemId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
ModifierOptionIdintegeryesItemTemplateModifierOptions.Id
ModifierOptionSyncIdguidyesSyncId of the ItemTemplateModifierOptions row that ModifierOptionId points at.
OptionNamestringmax 150no
Quantityintegerno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UnitUpchargedecimalno

JobItems

A material line on a job: the item or template, quantity, price, discount and cost.

Files json/JobItems.json csv/JobItems.csv · primary key Id · scoped by e.Job.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ActualItemIdintegeryesItems.IdActual Item
ActualItemSyncIdguidyesSyncId of the Items row that ActualItemId points at.
DeliveredQuantityintegerno
DiscountAmountdecimalno
DiscountPercentdecimalnoDiscount
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
IsPriceOverriddenbooleanno
ItemTemplateIdintegernoItemTemplates.IdItem Template
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
JobIdintegernoJobs.Id
JobSyncIdguidyesSyncId of the Jobs row that JobId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringmax 500yes
PreferredItemIdsstringyes
PreferredItemSyncIdsstringyes
PreferredSourceLocationIdsstringyes
PreferredSourceLocationSyncIdsstringyes
Quantityintegerno
ReservedDatedatetimeyes
StatusenumnoPlanned Reserved Used Returned Cancelled
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UnitCostdecimalno
UnitPricedecimalno
UsedDatedatetimeyes

Jobs

A job (work order): customer, address, status, schedule, estimate and totals.

Files json/Jobs.json csv/Jobs.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ActualLaborCostdecimalno
ActualMaterialCostdecimalno
CompletedDatedatetimeyes
CreatedBystringyes
CreatedDatedatetimeno
CustomChargesTotaldecimalno
CustomerAddressIdintegeryesCustomerAddresses.IdService Address
CustomerAddressSyncIdguidyesSyncId of the CustomerAddresses row that CustomerAddressId points at.
CustomerIdintegernoCustomers.IdCustomer
CustomerSyncIdguidyesSyncId of the Customers row that CustomerId points at.
Descriptionstringmax 500yes
DiscountAmountdecimalyesJob Discount ($)
DiscountNotestringmax 500yes
DiscountPercentdecimalyesJob Discount (%)
DownPaymentAmountdecimalyesDown Payment
DownPaymentAppliedUtcdatetimeyesSet when the down payment transferred to an invoice (exactly once).
DownPaymentDatedatetimeyes
DownPaymentMethodstringmax 50yes
DownPaymentNotestringmax 500yes
EmailedAtdatetimeyesInvoice Emailed At
EmailedTostringmax 200yesInvoice Emailed To
EstimatedLaborCostdecimalno
EstimatedMaterialCostdecimalno
HasMultipleOptionsbooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
JobNumberstringmax 50no
JobSiteLocationIdintegeryesLocations.IdJob Site Location
JobSiteLocationSyncIdguidyesSyncId of the Locations row that JobSiteLocationId points at.
JobStatusDefinitionIdintegeryesJobStatusDefinitions.IdCustom Status
JobStatusDefinitionSyncIdguidyesSyncId of the JobStatusDefinitions row that JobStatusDefinitionId points at.
JobTypestringmax 100no
LaborPricedecimalno
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
MaterialPricedecimalno
ModifiedBystringyes
ModifiedDatedatetimeyes
Notesstringyes
OrganizationIdintegernoOrganizations.Id
PaymentLinkCreatedAtdatetimeyesPayment Link Created
PaymentLinkIdstringmax 200yes
PaymentLinkUrlstringmax 500yes
PaymentStatusstringmax 50yes
ScheduledDatedatetimeyes
ScheduledDurationMinutesintegeryesPlanned length of the scheduled visit in minutes.
SelectedOptionIdintegeryesJobEstimateOptions.IdSelected Option
SelectedOptionSyncIdguidyesSyncId of the JobEstimateOptions row that SelectedOptionId points at.
StartDatedatetimeyes
StatusenumnoDraft Estimated Scheduled InProgress Completed Invoiced Paid Cancelled Outstanding InspectionInProgress AwaitingOptionSelection
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TaxCustomChargesbooleanno
TaxLaborbooleanno
TaxMaterialsbooleanno
TaxRatedecimalnoTax Rate (%)

JobStatusDefinitions

A job status the organization defines (name, color, order and allowed transitions).

Files json/JobStatusDefinitions.json csv/JobStatusDefinitions.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
AllowedTransitionSyncIdsstringyes
AllowedTransitionsJsonstringyesCan Transition To
AllowsInvoicingbooleanno
ColorHexstringmax 7yesColor
CountsAsActivebooleanno
CountsAsCompletedbooleanno
CreatedBystringyes
CreatedDatedatetimeno
Descriptionstringmax 200yes
DisplayOrderintegerno
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
IsSystemStatusbooleanno
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
ModifiedBystringyes
ModifiedDatedatetimeyes
Namestringmax 50noStatus Name
OrganizationIdintegernoOrganizations.Id
RequiresCompletionFieldsbooleanno
RequiresScheduleDatebooleanno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
SystemStatusTypeenumyesDraft Estimated Scheduled InProgress Completed Invoiced Paid Cancelled Outstanding InspectionInProgress AwaitingOptionSelection

JobUpdates

An entry on a job's timeline: a note, status change, photo, signature or other update.

Files json/JobUpdates.json csv/JobUpdates.csv · primary key Id · scoped by e.Job.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
AttachmentNamestringmax 200yes
AttachmentUrlstringmax 500yes
CreatedBystringmax 100no
CreatedByNamestringmax 100yes
CreatedDatedatetimeno
Descriptionstringmax 2000no
IsInternalbooleannoInternal Note
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
JobIdintegernoJobs.Id
JobSyncIdguidyesSyncId of the Jobs row that JobId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
NewStatusenumyesDraft Estimated Scheduled InProgress Completed Invoiced Paid Cancelled Outstanding InspectionInProgress AwaitingOptionSelection
OldStatusenumyesDraft Estimated Scheduled InProgress Completed Invoiced Paid Cancelled Outstanding InspectionInProgress AwaitingOptionSelection
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdateTypeenumnoGeneralNote ProgressUpdate Issue CustomerRequest ChangeOrder Delay MaterialNote CompletionNote StatusChange ScheduleChange Payment Return Photo Signature TextMessage

KitItems

One line of a kit (a planned set of items for a transfer); lines can nest.

Files json/KitItems.json csv/KitItems.csv · primary key Id · scoped by e.Kit.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CategoryIdintegeryesItemCategories.Id
CategorySyncIdguidyesSyncId of the ItemCategories row that CategoryId points at.
Descriptionstringyes
HasCalculatedPropertiesbooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemTemplateIdintegeryesItemTemplates.Id
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
KitIdintegernoKits.Id
KitSyncIdguidyesSyncId of the Kits row that KitId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Namestringno
ParentKitItemIdintegeryesKitItems.Id
ParentKitItemSyncIdguidyesSyncId of the KitItems row that ParentKitItemId points at.
Quantityintegerno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

Kits

A kit: a named set of items planned to move together in transfers.

Files json/Kits.json csv/Kits.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedAtdatetimeno
Descriptionstringyes
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
NamestringnoKit Name
OrganizationIdintegernoOrganizations.Id
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdatedAtdatetimeyes

LaborItems

A labor line on a job: task, labor rate, hours, customer rate, discount and employee cost.

Files json/LaborItems.json csv/LaborItems.csv · primary key Id · scoped by e.Job.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ActualHoursdecimalno
CustomerPriceOverridedecimalyes
CustomerRatedecimalno
Descriptionstringmax 200no
DiscountAmountdecimalno
DiscountPercentdecimalnoDiscount
EmployeeCostdecimalno
EstimatedHoursdecimalno
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
JobIdintegernoJobs.Id
JobSyncIdguidyesSyncId of the Jobs row that JobId points at.
LaborRateIdintegeryesLaborRates.IdLabor Rate
LaborRateSyncIdguidyesSyncId of the LaborRates row that LaborRateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringyes
OverheadFactordecimalno
StatusenumnoPlanned Scheduled InProgress Completed Cancelled
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TaskTemplateIdintegeryesTaskTemplates.IdTask Template
TaskTemplateSyncIdguidyesSyncId of the TaskTemplates row that TaskTemplateId points at.
TechnicianIdstringyesAspNetUsers.IdTechnician
WorkDatedatetimeyes

LaborRates

A labor rate: the hourly rate charged for a kind of work, and its employee cost and overhead.

Files json/LaborRates.json csv/LaborRates.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedBystringyes
CreatedDatedatetimeno
Descriptionstringmax 500yes
EmployeeCostdecimalyes
HourlyRatedecimalno
IsActivebooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
ModifiedBystringyes
ModifiedDatedatetimeyes
Namestringmax 100noRate Name
OrganizationIdintegernoOrganizations.Id
OverheadFactordecimalno
RateTypeenumnoStandard Emergency Weekend AfterHours SkillLevel Custom Flat
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

Locations

A place that holds inventory (warehouse, truck, bin, job site); locations can be nested.

Files json/Locations.json csv/Locations.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
Addressstringyes
CreatedAtdatetimeno
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
IsSystemLocationbooleanno
JobIdintegeryes
JobSyncIdguidyes
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LocationTypeIdintegernoLocationTypes.Id
LocationTypeSyncIdguidyesSyncId of the LocationTypes row that LocationTypeId points at.
Namestringno
OrganizationIdintegernoOrganizations.Id
ParentLocationIdintegeryesLocations.Id
ParentLocationSyncIdguidyesSyncId of the Locations row that ParentLocationId points at.
StatusenumnoActive Inactive Maintenance Temporary
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdatedAtdatetimeyes

LocationTransferItems

One item moved in a location transfer.

Files json/LocationTransferItems.json csv/LocationTransferItems.csv · primary key Id · scoped by e.Transfer.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
DestinationLocationIdintegeryesLocations.Id
DestinationLocationSyncIdguidyesSyncId of the Locations row that DestinationLocationId points at.
DestinationWaypointIdintegeryesTransferWaypoints.Id
DestinationWaypointSyncIdguidyesSyncId of the TransferWaypoints row that DestinationWaypointId points at.
FailedAtdatetimeyes
FailedByIdstringyesAspNetUsers.Id
FailedBySyncIdguidyesSyncId of the AspNetUsers row that FailedById points at.
FailureReasonstringyes
GroupedItemIdsstringyes
GroupedItemSyncIdsstringyes
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemIdintegeryesItems.Id
ItemSyncIdguidyesSyncId of the Items row that ItemId points at.
ItemTemplateIdintegeryesItemTemplates.Id
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
JobItemIdintegeryesJobItems.Id
JobItemSyncIdguidyesSyncId of the JobItems row that JobItemId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LocationTransferLogIdintegernoLocationTransferLogs.Id
Notesstringyes
Quantityintegerno
QuantityDeliveredintegeryes
QuantityPickedintegeryes
QuantityReturnedintegerno
SalesOrderItemIdintegeryesSalesOrderItems.Id
SalesOrderItemSyncIdguidyesSyncId of the SalesOrderItems row that SalesOrderItemId points at.
Scannedbooleanno
ScannedAtdatetimeyes
ScannedByIdstringyesAspNetUsers.Id
ScannedBySyncIdguidyesSyncId of the AspNetUsers row that ScannedById points at.
StatusenumnoPending InTransit Delivered Failed Returned
SubUnitDrawsJsonstringyes
SubUnitShortfallUnitsintegerno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TransferSyncIdguidyes

LocationTransferLogs

A transfer of items between locations: source, destination, status and dates.

Files json/LocationTransferLogs.json csv/LocationTransferLogs.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CompletedByIdstringyesAspNetUsers.Id
CompletedBySyncIdguidyesSyncId of the AspNetUsers row that CompletedById points at.
CreatedAtdatetimeno
CurrentWaypointIdintegeryesTransferWaypoints.IdID of the current waypoint in the journey, if using waypoints
CurrentWaypointSyncIdguidyesSyncId of the TransferWaypoints row that CurrentWaypointId points at.
DestinationLocationIdintegeryesLocations.Id
DestinationLocationSyncIdguidyesSyncId of the Locations row that DestinationLocationId points at.
HasWaypointsbooleannoWaypoint support for intermediate locations in the transfer journey
InitiatedByIdstringyesAspNetUsers.Id
InitiatedBySyncIdguidyesSyncId of the AspNetUsers row that InitiatedById points at.
IsJobTransferbooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
IsSalesOrderTransferbooleanno
JobIdintegeryesJobs.Id
JobSyncIdguidyesSyncId of the Jobs row that JobId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringyes
OrganizationIdintegernoOrganizations.Id
RequiresApprovalbooleanno
SalesOrderIdintegeryesSalesOrders.Id
SalesOrderSyncIdguidyesSyncId of the SalesOrders row that SalesOrderId points at.
SourceLocationIdintegeryesLocations.Id
SourceLocationSyncIdguidyesSyncId of the Locations row that SourceLocationId points at.
StatusenumnoDraft Pending InTransit AtWaypoint InTransitToWaypoint InTransitToDestination Completed Cancelled Failed
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TransferDatedatetimeno
TransportVehicleIdintegeryesLocations.IdOptional transport vehicle used for this transfer
TransportVehicleSyncIdguidyesSyncId of the Locations row that TransportVehicleId points at.
UpdatedAtdatetimeyes

LocationTypes

A kind of location (e.g. warehouse, truck, shelf) the organization defines.

Files json/LocationTypes.json csv/LocationTypes.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ConsumesInventorybooleanno
CreatedAtdatetimeno
Descriptionstringyes
IsJobSitebooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
IsSystemTypebooleanno
IsTransportVehiclebooleanno
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Namestringmax 100no
OrganizationIdintegernoOrganizations.Id
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdatedAtdatetimeyes

NotificationDismissals

A record that a user dismissed a notification.

Files json/NotificationDismissals.json csv/NotificationDismissals.csv · primary key Id · scoped by e.Notification.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
DismissedDatedatetimeno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
NotificationIdintegernoNotifications.Id
NotificationSyncIdguidyesSyncId of the Notifications row that NotificationId points at.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UserIdstringyesAspNetUsers.Id
UserSyncIdguidyesSyncId of the AspNetUsers row that UserId points at.

Notifications

An in-app notification for the organization or one user.

Files json/Notifications.json csv/Notifications.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedDatedatetimeno
DismissedByUserIdstringyesAspNetUsers.Id
DismissedDatedatetimeyes
ExpiresDatedatetimeyes
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LinkUrlstringmax 500yes
Messagestringmax 500yes
OrganizationIdintegernoOrganizations.Id
Priorityintegerno
RelatedInvoiceIdintegeryes
RelatedInvoiceSyncIdguidyes
RelatedJobIdintegeryes
RelatedJobSyncIdguidyes
RelatedPurchaseOrderIdintegeryes
RelatedPurchaseOrderSyncIdguidyes
RelatedTransferIdintegeryes
RelatedTransferSyncIdguidyes
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
Titlestringmax 200no
TypeenumnoGeneral TransferInProgress JobInProgress PaymentDue PaymentOverdue LowStock TransferApprovalNeeded JobScheduled SystemAlert ShipmentDeliveryToday
UserIdstringyesAspNetUsers.Id
UserSyncIdguidyesSyncId of the AspNetUsers row that UserId points at.

OrganizationJobTypes

A job type the organization defines (e.g. install, repair, maintenance).

Files json/OrganizationJobTypes.json csv/OrganizationJobTypes.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedBystringyes
CreatedDatedatetimeno
Descriptionstringmax 500yes
DisplayOrderintegerno
IsActivebooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
ModifiedBystringyes
ModifiedDatedatetimeyes
Namestringmax 100noJob Type Name
OrganizationIdintegernoOrganizations.Id
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

OrganizationModules

Per-organization activation record for an optional module (see Flex.Modules.ModuleCatalog).

Files json/OrganizationModules.json csv/OrganizationModules.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ActivatedBystringmax 256yes
ActivatedUtcdatetimeyesUTC timestamp.
BillingProviderstringmax 50noProvider key: "sandbox", "square", "stripe", "manual".
BillingReferencestringmax 200yesProvider-side subscription/order id, if any.
CreatedDatedatetimeno
DeactivatedBystringmax 256yes
DeactivatedUtcdatetimeyesUTC timestamp.
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
ModifiedDatedatetimeyes
ModuleKeystringmax 50noKey from ModuleKeys / ModuleCatalog.
MonthlyPricedecimalnoMonthly price agreed at activation.
NextBillingUtcdatetimeyesUTC timestamp.
Notesstringmax 500yesFree-form notes (e.g. "comped for pilot", "invoice #123").
OrganizationIdintegernoOrganizations.Id
StatusenumnoActive Inactive PendingPayment PastDue
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

Organizations

The organization (company account) that owns all of this data.

Files json/Organizations.json csv/Organizations.csv · primary key Id · scoped by e.Id == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
BillingCustomerIdstringyes
BillingEmailstringyes
BillingProviderstringyes"stripe" once a subscription exists; null while trial/comped/manual.
BillingStatusenumnoTrial Active PastDue Suspended Comped
BillingSubscriptionIdstringyes
IncludedSeatsintegernoSeats (active users) covered by the base plan; extra active users are billed per seat.
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LogoContentTypestringyes
LogoPathstringyes
Namestringno
PastDueSinceUtcdatetimeyesUTC timestamp.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TrialEndsUtcdatetimeyesUTC timestamp.

OrganizationSettings

The organization's settings: company details, invoicing, tax and feature options.

Files json/OrganizationSettings.json csv/OrganizationSettings.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
AllowNegativeInventorybooleanno
AllowPartialPaymentsbooleanno
BlockedStatesstringmax 500yes
CounterSalesModebooleanno
CreatedBystringyes
CreatedDatedatetimeno
DefaultDepositPercentagedecimalyes
DefaultPaymentInstructionsstringyes
DefaultPaymentTermsstringmax 500yes
DefaultTaxRatedecimalnoDefault Tax Rate (%)
DeviceLeaseDaysintegernoDays a field device may stay unsynced before it locks to read-only; enforced by the mobile app (Phase 3).
EmailReplyToAddressstringmax 256yesReply-To Email Address
Industrystringmax 50yes
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
JobsDisplayNamestringmax 50no
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
ModifiedBystringyes
ModifiedDatedatetimeyes
OperationModeenumnoServiceProvider Distributor Hybrid
OrganizationIdintegernoOrganizations.Id
PaymentProcessingEnabledbooleannoEnable Payment Processing
PaymentProcessorenumnoNone Square Stripe
PaymentReceiptEmailTemplatestringyes
RequireDepositOnOrdersbooleanno
RequireTwoFactorbooleannoWhen true, every browser sign-in (web host and desktop installs) must use an authenticator app: a user without one is held on the setup page until they enrol, and cannot turn it off.
SalesOrdersDisplayNamestringmax 50no
SendPaymentReceiptsbooleanno
SetupCompletedUtcdatetimeyesUTC timestamp.
ShowJobsMenubooleanno
ShowSalesOrdersMenubooleanno
SquareApplicationIdstringmax 200yes
SquareEnvironmentenumnoSandbox Production
SquareLocationIdstringmax 200yes
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TaxCustomChargesbooleanno
TaxLaborbooleanno
TaxMaterialsbooleanno
UpdatedBystringyes
UpdatedDatedatetimeyes

OutboundTextMessages

One outbound SMS to a customer, org-scoped and synced (table "OutboundTextMessages").

Files json/OutboundTextMessages.json csv/OutboundTextMessages.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
Bodystringmax 1600noMessage text.
CustomerIdintegeryesCustomers.Id
CustomerSyncIdguidyesSyncId of the Customers row that CustomerId points at.
DeliveredUtcdatetimeyesServer-authoritative.
Errorstringmax 500yesProvider/relay failure text when Status is Failed (server-authoritative).
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
JobIdintegeryesJobs.Id
JobSyncIdguidyesSyncId of the Jobs row that JobId points at.
KindenumnoOnMyWay
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
ModifiedDatedatetimeyes
OrganizationIdintegernoOrganizations.Id
ProviderMessageIdstringmax 100yesProvider-side message id once accepted (server-authoritative).
RequestedByIdstringmax 450yesAspNetUsers.Id of the requesting user (string PK, preserved across devices).
RequestedBySyncIdguidyesSyncId of the requesting user, carried for cross-device FK resolution.
RequestedUtcdatetimenoUTC timestamp.
SentUtcdatetimeyesServer-authoritative.
StatusenumnoQueued Sent Delivered Failed
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
ToNumberstringmax 20noDestination in E.164 form ("+17065551212"); see Flex.Messaging.PhoneNumbers.

Payments

Represents a payment transaction processed through Square or other payment processors

Files json/Payments.json csv/Payments.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
Amountdecimalno
CreatedAtdatetimeno
Currencystringmax 3no
CustomerEmailstringmax 200yes
CustomerIdintegernoCustomers.Id
CustomerPhonestringmax 20yes
CustomerSyncIdguidyesSyncId of the Customers row that CustomerId points at.
ErrorMessagestringmax 2000yes
FailedAtdatetimeyes
InvoiceIdintegeryesInvoices.Id
InvoiceSyncIdguidyesSyncId of the Invoices row that InvoiceId points at.
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
IsRefundbooleanno
JobIdintegeryesJobs.Id
JobSyncIdguidyesSyncId of the Jobs row that JobId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringmax 1000yes
OrganizationIdintegernoOrganizations.Id
ProcessedByIdstringmax 450yesAspNetUsers.Id
ProcessedBySyncIdguidyesSyncId of the AspNetUsers row that ProcessedById points at.
RefundedPaymentIdintegeryesPayments.Id
RefundedPaymentSyncIdguidyesSyncId of the Payments row that RefundedPaymentId points at.
SalesOrderIdintegeryesSalesOrders.Id
SalesOrderSyncIdguidyesSyncId of the SalesOrders row that SalesOrderId points at.
SquareOrderIdstringmax 200yes
SquarePaymentIdstringmax 200no
SquareReceiptUrlstringmax 500yes
StatusenumnoPending Completed Failed Refunded PartiallyRefunded Cancelled
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TypeenumnoFullPayment Deposit BalancePayment PartialPayment Refund

PresetProperties

A saved mapping from a CSV column name to an item property, used by imports.

Files json/PresetProperties.json csv/PresetProperties.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedAtdatetimeno
CreatedBystringmax 100no
CsvColumnNamestringmax 200no
DataTypestringmax 20no
IsActivebooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
OrganizationIdintegernoOrganizations.Id
PropertyNamestringmax 100no
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdatedAtdatetimeyes
UpdatedBystringmax 100yes

PriceTierGroupCalculations

An arithmetic formula applied to ONE tier of a price tier group (Bulk Pricing).

Files json/PriceTierGroupCalculations.json csv/PriceTierGroupCalculations.csv · primary key Id · scoped by e.PriceTierGroup.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
Formulastringmax 300no
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
MinQuantityintegerno
PriceTierGroupIdintegernoPriceTierGroups.Id
PriceTierGroupSyncIdguidyesSyncId of the PriceTierGroups row that PriceTierGroupId points at.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

PriceTierGroupMembers

Membership of an item template in a price tier group.

Files json/PriceTierGroupMembers.json csv/PriceTierGroupMembers.csv · primary key Id · scoped by e.PriceTierGroup.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemTemplateIdintegernoItemTemplates.Id
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
PriceTierGroupIdintegernoPriceTierGroups.Id
PriceTierGroupSyncIdguidyesSyncId of the PriceTierGroups row that PriceTierGroupId points at.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

PriceTierGroups

A "like items" group for quantity tier pricing (Bulk Pricing).

Files json/PriceTierGroups.json csv/PriceTierGroups.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedAtdatetimeno
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Namestringmax 200no
OrganizationIdintegernoOrganizations.Id
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdatedAtdatetimeyes

PropertyCalculations

A formula that calculates a property value from other properties, variables and reference tables.

Files json/PropertyCalculations.json csv/PropertyCalculations.csv · primary key Id · scoped by (e.Property != null && (e.Property.Item != null && e.Property.Item.OrganizationId == org) || (e.Property.BundleTemplateItem != null && e.Property.BundleTemplateItem.BundleTemplate.OrganizationId == org) || (e.Property.KitItem != null && e.Property.KitItem.Kit.OrganizationId == org)) || (e.TemplateProperty != null && e.TemplateProperty.ItemTemplate.OrganizationId == org)

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedAtdatetimeno
Expressionstringno
IsEnabledbooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemCatalogPropertyIdintegeryesItemCatalogProperty.Id
ItemPropertyIdintegeryesItemProperties.Id
ItemPropertySyncIdguidyesSyncId of the ItemProperties row that ItemPropertyId points at.
ItemTemplatePropertyIdintegeryesItemTemplateProperties.Id
ItemTemplatePropertySyncIdguidyesSyncId of the ItemTemplateProperties row that ItemTemplatePropertyId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Namestringno
Priorityintegerno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdatedAtdatetimeyes

PurchaseOrderItems

One line of a purchase order: item or bundle template, quantities ordered, shipped and received, and unit price.

Files json/PurchaseOrderItems.json csv/PurchaseOrderItems.csv · primary key Id · scoped by e.PurchaseOrder.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
BundleTemplateIdintegeryesBundleTemplates.Id
BundleTemplateSyncIdguidyesSyncId of the BundleTemplates row that BundleTemplateId points at.
CreatedAtdatetimeno
Descriptionstringmax 500no
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemTemplateIdintegeryesItemTemplates.Id
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LineTotaldecimalyes
Notesstringyes
PurchaseOrderIdintegernoPurchaseOrders.Id
PurchaseOrderSyncIdguidyesSyncId of the PurchaseOrders row that PurchaseOrderId points at.
QuantityOrderedintegerno
QuantityReceivedintegerno
QuantityShippedintegerno
ReceivedDatedatetimeyes
ShipmentIdintegeryesPurchaseOrderShipments.Id
ShipmentSyncIdguidyesSyncId of the PurchaseOrderShipments row that ShipmentId points at.
StatusenumnoPending Shipped Delivered Received Cancelled
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UnitPricedecimalyes
UpdatedAtdatetimeyes
VendorPartNumberstringmax 100yes

PurchaseOrders

A purchase order to a vendor: number, status, dates, destination and totals.

Files json/PurchaseOrders.json csv/PurchaseOrders.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedAtdatetimeno
CreatedByIdstringyesAspNetUsers.Id
CreatedBySyncIdguidyesSyncId of the AspNetUsers row that CreatedById points at.
Currencystringmax 3no
DeletedAtdatetimeyes
DeletedByIdstringyesAspNetUsers.Id
DeletedBySyncIdguidyesSyncId of the AspNetUsers row that DeletedById points at.
ExpectedDeliveryDatedatetimeyes
ExternalOrderNumberstringmax 50yes
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringyes
OrderDatedatetimeno
OrderNumberstringmax 50no
OrganizationIdintegernoOrganizations.Id
ReceivedByIdstringyesAspNetUsers.Id
ReceivedBySyncIdguidyesSyncId of the AspNetUsers row that ReceivedById points at.
ReceivedDatedatetimeyes
ReceivingLocationIdintegernoLocations.Id
ReceivingLocationSyncIdguidyesSyncId of the Locations row that ReceivingLocationId points at.
StatusenumnoDraft Ordered Shipped PartialShipped Delivered PartialReceived Received Cancelled
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TotalCostdecimalyes
UpdatedAtdatetimeyes
UpdatedByIdstringyesAspNetUsers.Id
UpdatedBySyncIdguidyesSyncId of the AspNetUsers row that UpdatedById points at.
VendorContactEmailstringmax 100yes
VendorContactPhonestringmax 20yes
VendorIdintegeryesVendors.Id
VendorNamestringmax 200yes
VendorSyncIdguidyesSyncId of the Vendors row that VendorId points at.

PurchaseOrderShipments

A shipment against a purchase order: shipping company, tracking, dates, status and cost.

Files json/PurchaseOrderShipments.json csv/PurchaseOrderShipments.csv · primary key Id · scoped by e.PurchaseOrder.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ActualDeliveryDatedatetimeyes
CreatedAtdatetimeno
CreatedByIdstringyesAspNetUsers.Id
CreatedBySyncIdguidyesSyncId of the AspNetUsers row that CreatedById points at.
DeletedAtdatetimeyes
DeletedByIdstringyesAspNetUsers.Id
DeletedBySyncIdguidyesSyncId of the AspNetUsers row that DeletedById points at.
EstimatedDeliveryDatedatetimeyes
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastStatusCheckDatedatetimeyes
LastStatusUpdatestringmax 200yes
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringyes
PurchaseOrderIdintegernoPurchaseOrders.Id
PurchaseOrderSyncIdguidyesSyncId of the PurchaseOrders row that PurchaseOrderId points at.
ShipDatedatetimeyes
ShippingCompanystringmax 100yes
ShippingCostdecimalyes
ShippingCostAllocationMethodenumnoHow shipping costs are allocated among items when receivedByItemCost ByItemCount ByWeight BySize
StatusenumnoOrdered Pending Shipped InTransit OutForDelivery Delivered Cancelled Returned
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TrackingNumberstringmax 100yes
TrackingUrlstringmax 500yes
UpdatedAtdatetimeyes
Weightdecimalyes

ReceivedItems

A quantity of one purchase-order line received into a location during a receiving session.

Files json/ReceivedItems.json csv/ReceivedItems.csv · primary key Id · scoped by e.ReceivingSession.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedBundleIdintegeryesBundles.Id
CreatedBundleSyncIdguidyesSyncId of the Bundles row that CreatedBundleId points at.
DestinationLocationIdintegernoLocations.Id
DestinationLocationSyncIdguidyesSyncId of the Locations row that DestinationLocationId points at.
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringyes
PassedQualityCheckbooleanyes
PurchaseOrderItemIdintegernoPurchaseOrderItems.Id
PurchaseOrderItemSyncIdguidyesSyncId of the PurchaseOrderItems row that PurchaseOrderItemId points at.
QualityNotesstringyes
QuantityReceivedintegerno
ReceivedAtdatetimeno
ReceivingSessionIdintegernoReceivingSessions.Id
ReceivingSessionSyncIdguidyesSyncId of the ReceivingSessions row that ReceivingSessionId points at.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

ReceivingSessions

One receiving pass against a purchase order: who received what, when.

Files json/ReceivingSessions.json csv/ReceivingSessions.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CompletedAtdatetimeyes
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringyes
OrganizationIdintegernoOrganizations.Id
PurchaseOrderIdintegernoPurchaseOrders.Id
PurchaseOrderSyncIdguidyesSyncId of the PurchaseOrders row that PurchaseOrderId points at.
ReceivedByIdstringyesAspNetUsers.Id
ReceivedBySyncIdguidyesSyncId of the AspNetUsers row that ReceivedById points at.
StartedAtdatetimeno
StatusenumnoInProgress Completed Cancelled PartiallyCompleted
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

ReferenceTables

A reference value (type, key, value and effective dates) that calculations look up.

Files json/ReferenceTables.json csv/ReferenceTables.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
EffectiveDatedatetimeno
ExpiryDatedatetimeyes
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
Keystringno
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
OrganizationIdintegernoOrganizations.Id
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
Typestringno
Valuedecimalno

SalesOrderItems

One line of a sales order: item template, quantity ordered, picked and shipped, and price.

Files json/SalesOrderItems.json csv/SalesOrderItems.csv · primary key Id · scoped by e.SalesOrder.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
Descriptionstringmax 500no
DiscountAmountdecimalno
DiscountPercentdecimalno
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemIdintegeryesItems.Id
ItemSyncIdguidyesSyncId of the Items row that ItemId points at.
ItemTemplateIdintegeryesItemTemplates.Id
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LineTotaldecimalno
Notesstringyes
PreferredItemIdsstringyes
PreferredItemSyncIdsstringyes
PreferredSourceLocationIdsstringyes
PreferredSourceLocationSyncIdsstringyes
QuantityBackordereddecimalno
QuantityOrdereddecimalno
QuantityPickeddecimalno
QuantityShippeddecimalno
SalesOrderIdintegernoSalesOrders.Id
SalesOrderSyncIdguidyesSyncId of the SalesOrders row that SalesOrderId points at.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UnitCostdecimalno
UnitPricedecimalno

SalesOrders

A sales order to a customer: number, dates, status, payment and fulfillment, and totals.

Files json/SalesOrders.json csv/SalesOrders.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ActualDeliveryDatedatetimeyes
AmountPaiddecimalno
CreatedByIdstringyesAspNetUsers.Id
CreatedBySyncIdguidyesSyncId of the AspNetUsers row that CreatedById points at.
CreatedDatedatetimeno
CustomerIdintegernoCustomers.Id
CustomerPONumberstringmax 100yes
CustomerSyncIdguidyesSyncId of the Customers row that CustomerId points at.
DeliveryAddressIdintegeryesCustomerAddresses.Id
DeliveryAddressSyncIdguidyesSyncId of the CustomerAddresses row that DeliveryAddressId points at.
EmailedAtdatetimeyesInvoice Emailed At
EmailedTostringmax 200yesInvoice Emailed To
FulfillmentStatusstringmax 50yesTracks the aggregate status of all transfers associated with this Sales Order.
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringyes
OrderDatedatetimeno
OrderNumberstringmax 50no
OrganizationIdintegernoOrganizations.Id
PaymentLinkCreatedAtdatetimeyesPayment Link Created
PaymentLinkIdstringmax 200yes
PaymentLinkUrlstringmax 500yes
PaymentStatusstringmax 50yes
PaymentTermsstringmax 100yes
RequestedDeliveryDatedatetimeyes
ShippingCostdecimalno
Statusstringmax 50no
StoreCreditApplieddecimalno
SubTotaldecimalno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TaxAmountdecimalno
TaxRatedecimalno
TotalAmountdecimalno
UpdatedByIdstringyesAspNetUsers.Id
UpdatedBySyncIdguidyesSyncId of the AspNetUsers row that UpdatedById points at.
UpdatedDatedatetimeyes

SalesOrderShipments

A shipment of a sales order: carrier, tracking, dates and cost.

Files json/SalesOrderShipments.json csv/SalesOrderShipments.csv · primary key Id · scoped by e.SalesOrder.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ActualDeliveryDatedatetimeyes
Carrierstringmax 100yes
CreatedByIdstringyesAspNetUsers.Id
CreatedBySyncIdguidyesSyncId of the AspNetUsers row that CreatedById points at.
CreatedDatedatetimeno
EstimatedDeliveryDatedatetimeyes
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringyes
SalesOrderIdintegernoSalesOrders.Id
SalesOrderSyncIdguidyesSyncId of the SalesOrders row that SalesOrderId points at.
ShipDatedatetimeyes
ShippingCostdecimalyes
ShippingMethodstringmax 50yes
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TrackingNumberstringmax 100yes
TransferIdintegeryesLocationTransferLogs.Id
TransferSyncIdguidyesSyncId of the LocationTransferLogs row that TransferId points at.
Weightdecimalyes

SalesOrderSourceLocations

A location a sales order is picked from, in priority order.

Files json/SalesOrderSourceLocations.json csv/SalesOrderSourceLocations.csv · primary key Id · scoped by e.SalesOrder.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedDatedatetimeno
IsFullyPickedbooleannoWhether this location has been fully picked
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LocationIdintegernoLocations.Id
LocationSyncIdguidyesSyncId of the Locations row that LocationId points at.
NotesstringyesNotes about this source location selection
PriorityintegernoPriority order for picking (1 = highest priority)
SalesOrderIdintegernoSalesOrders.Id
SalesOrderSyncIdguidyesSyncId of the SalesOrders row that SalesOrderId points at.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

SalesOrderTransfers

A link between a sales order and a location transfer that picks or ships it.

Files json/SalesOrderTransfers.json csv/SalesOrderTransfers.csv · primary key Id · scoped by e.SalesOrder.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedDatedatetimeno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringyes
SalesOrderIdintegernoSalesOrders.Id
SalesOrderSyncIdguidyesSyncId of the SalesOrders row that SalesOrderId points at.
ShippedWithoutTrackingbooleannoIndicates the user chose to ship without tracking information.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TransferIdintegernoLocationTransferLogs.Id
TransferSyncIdguidyesSyncId of the LocationTransferLogs row that TransferId points at.
TransferTypestringmax 50no

SalesOrderUpdates

An entry on a sales order's timeline (note, status change or other update).

Files json/SalesOrderUpdates.json csv/SalesOrderUpdates.csv · primary key Id · scoped by e.SalesOrder.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedBystringmax 100no
CreatedByNamestringmax 100yes
CreatedDatedatetimeno
Descriptionstringmax 2000no
IsInternalbooleannoInternal Note
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
NewStatusstringmax 50yes
OldStatusstringmax 50yes
SalesOrderIdintegernoSalesOrders.Id
SalesOrderSyncIdguidyesSyncId of the SalesOrders row that SalesOrderId points at.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdateTypeenumnoGeneralNote StatusChange PaymentUpdate FulfillmentUpdate ShipmentUpdate Return Cancellation

ScheduleGroupMembers

Junction: a user belongs to a ScheduleGroup.

Files json/ScheduleGroupMembers.json csv/ScheduleGroupMembers.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedAtdatetimeno
DisplayOrderintegerno
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsLeadbooleannoCrew lead / foreman flag — shown first on the board.
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
OrganizationIdintegerno
ScheduleGroupIdintegernoScheduleGroups.Id
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UserIdstringnoAspNetUsers.Id

ScheduleGroups

An organizational grouping of users for scheduling (division, crew, team).

Files json/ScheduleGroups.json csv/ScheduleGroups.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ColorHexstringmax 7yesHex color (e.g. "#2e7d32") used for calendar/board rendering.
CreatedAtdatetimeno
Descriptionstringmax 500yes
DisplayOrderintegerno
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Namestringmax 100no
OrganizationIdintegernoOrganizations.Id
ParentGroupIdintegeryesScheduleGroups.Id
ParentGroupSyncIdguidyesSyncId of the ScheduleGroups row that ParentGroupId points at.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdatedAtdatetimeyes

StockAlerts

A low-stock alert raised when an item template falls below its threshold.

Files json/StockAlerts.json csv/StockAlerts.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
AcknowledgedAtdatetimeyes
AcknowledgedBystringmax 100yes
CreatedAtdatetimeno
CurrentStockintegerno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemTemplateIdintegernoItemTemplates.Id
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LocationIdintegeryesLocations.Id
LocationSyncIdguidyesSyncId of the Locations row that LocationId points at.
Notesstringmax 500yes
OrganizationIdintegernoOrganizations.Id
StatusenumnoActive Acknowledged Resolved Dismissed
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
ThresholdLevelintegerno

TaskTemplateItems

An item template a task template uses, with its quantity and whether it is optional.

Files json/TaskTemplateItems.json csv/TaskTemplateItems.csv · primary key Id · scoped by e.TaskTemplate.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
IsOptionalbooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemTemplateIdintegernoItemTemplates.Id
ItemTemplateSyncIdguidyesSyncId of the ItemTemplates row that ItemTemplateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringmax 500yes
Quantitydecimalno
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TaskTemplateIdintegernoTaskTemplates.Id
TaskTemplateSyncIdguidyesSyncId of the TaskTemplates row that TaskTemplateId points at.

TaskTemplateLaborRates

A labor rate a task template uses, with the number of workers and whether it is the lead.

Files json/TaskTemplateLaborRates.json csv/TaskTemplateLaborRates.csv · primary key Id · scoped by e.TaskTemplate.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
IsLeadbooleannoIs Lead Worker
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LaborRateIdintegernoLaborRates.Id
LaborRateSyncIdguidyesSyncId of the LaborRates row that LaborRateId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Notesstringmax 500yes
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TaskTemplateIdintegernoTaskTemplates.Id
TaskTemplateSyncIdguidyesSyncId of the TaskTemplates row that TaskTemplateId points at.
WorkerCountintegernoNumber of Workers

TaskTemplates

A reusable task (set of labor and materials) that can be added to jobs.

Files json/TaskTemplates.json csv/TaskTemplates.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
Categorystringmax 100yes
CreatedBystringyes
CreatedDatedatetimeno
DefaultLaborRateIdintegeryesLaborRates.IdDefault Labor Rate
DefaultLaborRateSyncIdguidyesSyncId of the LaborRates row that DefaultLaborRateId points at.
Descriptionstringmax 1000yes
EstimatedHoursMaxdecimalnoEstimated Hours (Max)
EstimatedHoursMindecimalnoEstimated Hours (Min)
Instructionsstringyes
IsActivebooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
ModifiedBystringyes
ModifiedDatedatetimeyes
Namestringmax 200noTask Name
OrganizationIdintegernoOrganizations.Id
SafetyNotesstringyes
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.

TemplateBuilderGlobalCategories

Junction table: Links a Template Builder to categories applied to ALL generated items.

Files json/TemplateBuilderGlobalCategories.json csv/TemplateBuilderGlobalCategories.csv · primary key Id · scoped by e.TemplateBuilder.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CategoryIdintegernoItemCategories.Id
CategorySyncIdguidnoSyncId of the ItemCategories row that CategoryId points at.
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TemplateBuilderIdintegernoTemplateBuilders.Id
TemplateBuilderSyncIdguidnoSyncId of the TemplateBuilders row that TemplateBuilderId points at.

TemplateBuilderProperties

A property definition within a Template Builder.

Files json/TemplateBuilderProperties.json csv/TemplateBuilderProperties.csv · primary key Id · scoped by e.TemplateBuilder.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedAtdatetimeno
DataTypeenumnoText Number Date Boolean Dropdown MultiSelect
DefaultValuestringmax 255yes
DeletedAtdatetimeyes
DisplayOrderintegerno
ExcludeFromCombinationsbooleanno
ExcludeFromNamebooleanno
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
PropertyNamestringmax 255no
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TemplateBuilderIdintegernoTemplateBuilders.Id
TemplateBuilderSyncIdguidyesSyncId of the TemplateBuilders row that TemplateBuilderId points at.

TemplateBuilderPropertyOptionCategories

Junction table: Links a property option to categories.

Files json/TemplateBuilderPropertyOptionCategories.json csv/TemplateBuilderPropertyOptionCategories.csv · primary key Id · scoped by e.TemplateBuilderPropertyOption.TemplateBuilderProperty.TemplateBuilder.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CategoryIdintegernoItemCategories.Id
CategorySyncIdguidnoSyncId of the ItemCategories row that CategoryId points at.
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TemplateBuilderPropertyOptionIdintegernoTemplateBuilderPropertyOptions.Id
TemplateBuilderPropertyOptionSyncIdguidnoSyncId of the TemplateBuilderPropertyOptions row that TemplateBuilderPropertyOptionId points at.

TemplateBuilderPropertyOptions

An option value for a Template Builder property.

Files json/TemplateBuilderPropertyOptions.json csv/TemplateBuilderPropertyOptions.csv · primary key Id · scoped by e.TemplateBuilderProperty.TemplateBuilder.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
CreatedAtdatetimeno
DisplayOrderintegerno
IsHiddenbooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TemplateBuilderPropertyIdintegernoTemplateBuilderProperties.Id
TemplateBuilderPropertySyncIdguidyesSyncId of the TemplateBuilderProperties row that TemplateBuilderPropertyId points at.
Valuestringmax 255no

TemplateBuilders

Template Builder - defines a schema with property options that generates ItemTemplate combinations.

Files json/TemplateBuilders.json csv/TemplateBuilders.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
AdminOnlyCostbooleanno
AdminOnlyPricebooleanno
CategoryIdintegeryesItemCategories.Id
CategorySyncIdguidyesSyncId of the ItemCategories row that CategoryId points at.
CreatedAtdatetimeno
DeletedAtdatetimeyes
Descriptionstringmax 1000yes
IsDeletedbooleannoSoft delete: true means the row was deleted (kept for sync and history).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LastUsedCostdecimalyes
LastUsedPricedecimalyes
Namestringmax 255no
OrganizationIdintegernoOrganizations.Id
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdatedAtdatetimeyes

TransferApprovals

An approval request for a location transfer, and its decision.

Files json/TransferApprovals.json csv/TransferApprovals.csv · primary key Id · scoped by e.Transfer.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ApprovalDatedatetimeyes
ApproverIdstringyesAspNetUsers.Id
CreatedAtdatetimeno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LocationTransferLogIdintegernoLocationTransferLogs.Id
RejectionReasonstringyes
RequestedDatedatetimeno
RequesterIdstringnoAspNetUsers.Id
StatusenumnoPending Approved Rejected
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TransferSyncIdguidyes
TransferValuedecimalno
UpdatedAtdatetimeyes

TransferTemplates

A reusable transfer plan: source, destination, waypoints and what is moved.

Files json/TransferTemplates.json csv/TransferTemplates.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
BundleTemplateIdintegeryesBundleTemplates.Id
BundleTemplateSyncIdguidyesSyncId of the BundleTemplates row that BundleTemplateId points at.
CreatedAtdatetimeno
Descriptionstringyes
DestinationLocationIdintegeryesLocations.Id
DestinationLocationSyncIdguidyesSyncId of the Locations row that DestinationLocationId points at.
HasWaypointsbooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
ItemFiltersstringyes
KitIdintegeryesKits.Id
KitSyncIdguidyesSyncId of the Kits row that KitId points at.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Namestringmax 100no
OrganizationIdintegernoOrganizations.Id
SourceLocationIdintegeryesLocations.Id
SourceLocationSyncIdguidyesSyncId of the Locations row that SourceLocationId points at.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TemplateTypeenumnoBundle Kit
UpdatedAtdatetimeyes

TransferTemplateWaypoints

Represents a predefined waypoint in a transfer template

Files json/TransferTemplateWaypoints.json csv/TransferTemplateWaypoints.csv · primary key Id · scoped by e.TransferTemplate.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
EstimatedTimeMinutesintegeryesEstimated time to reach this waypoint (in minutes) from previous point
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LocationIdintegernoLocations.Id
LocationSyncIdguidyesSyncId of the Locations row that LocationId points at.
NotesstringyesAdditional notes about this waypoint
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TransferTemplateIdintegernoTransferTemplates.Id
TransferTemplateSyncIdguidyesSyncId of the TransferTemplates row that TransferTemplateId points at.
WaypointOrderintegernoThe order of this waypoint in the transfer template (1-based)

TransferWaypoints

Represents an intermediate location in a transfer journey between source and destination

Files json/TransferWaypoints.json csv/TransferWaypoints.csv · primary key Id · scoped by e.Transfer.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ActualArrivalTimedatetimeyesActual time items arrived at this waypoint
DepartureTimedatetimeyesWhen items departed from this waypoint
EstimatedArrivalTimedatetimeyesExpected time of arrival at this waypoint
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
LocationIdintegernoLocations.Id
LocationSyncIdguidyesSyncId of the Locations row that LocationId points at.
LocationTransferLogIdintegernoLocationTransferLogs.Id
NotesstringyesAdditional notes about this waypoint
StatusenumnoCurrent status of this waypoint in the journeyPending Arrived Departed Skipped Cancelled
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
TransferSyncIdguidyes
WaypointOrderintegernoThe order of this waypoint in the transfer journey (1-based)

VendorBundleTemplates

A vendor's offer for a bundle template: part number, price and order quantities.

Files json/VendorBundleTemplates.json csv/VendorBundleTemplates.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
BundleTemplateIdintegernoBundleTemplates.Id
BundleTemplateSyncIdguidyesSyncId of the BundleTemplates row that BundleTemplateId points at.
CreatedAtdatetimeno
IsActivebooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
MinimumOrderQuantityintegeryes
OrderMultipleintegeryes
OrganizationIdintegernoOrganizations.Id
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdatedAtdatetimeyes
VendorDescriptionstringmax 500yes
VendorIdintegernoVendors.Id
VendorPartNumberstringmax 100yes
VendorPricedecimalyes
VendorSyncIdguidyesSyncId of the Vendors row that VendorId points at.
VendorUrlstringmax 500yes

Vendors

A vendor (supplier) the organization buys from.

Files json/Vendors.json csv/Vendors.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ContactEmailstringmax 100yes
ContactNamestringmax 100yes
ContactPhonestringmax 20yes
CreatedAtdatetimeno
CreatedBystringmax 100yes
DefaultShippingCompanystringmax 100yes
Descriptionstringmax 500yes
IsActivebooleanno
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
Namestringmax 100no
OrganizationIdintegernoOrganizations.Id
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
UpdatedAtdatetimeno
UpdatedBystringmax 100yes
Websitestringmax 500yes

WebhookLogs

Audit log for Square webhook events

Files json/WebhookLogs.json csv/WebhookLogs.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ErrorMessagestringmax 2000yes
EventIdstringmax 200no
HttpMethodstringmax 50yes
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
OrganizationIdintegeryesOrganizations.Id
PaymentIdintegeryesPayments.Id
ProcessedAtdatetimeyes
ProcessedSuccessfullybooleanno
RawPayloadstringno
ReceivedAtdatetimeno
RetryCountintegeryes
SquarePaymentIdstringmax 200yes
StatusCodeintegeryes
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
WebhookTypestringmax 100no

WebhookSubscriptions

An outbound webhook subscription for an organization.

Files json/WebhookSubscriptions.json csv/WebhookSubscriptions.csv · primary key Id · scoped by e.OrganizationId == org

ColumnTypeEmpty?ReferencesDescription
IdintegernoPrimary key, unique within this table.
ConsecutiveFailureCountintegernoConsecutive failed deliveries; reset to 0 on any success.
CreatedAtdatetimeno
CreatedByUserIdstringmax 450yesIdentity user id of the creator; nullable for cross-device resolution.
EventsCsvstringmax 1024noComma-joined event names this subscription wants (see WebhookEvents).
IsActivebooleannoInactive subscriptions are skipped.
IsDeletedbooleannoSoft delete flag (mirrors the sync convention of other pull-only tables).
IsPendingSyncbooleannoTrue if this record has local changes that haven't been pushed to the server.
LastDeliveryUtcdatetimeyesUTC of the most recent delivery attempt (success or failure), when any.
LastSyncedUtcdatetimeyesUTC timestamp of when this record was last successfully synced.
OrganizationIdintegernoOrganizations.IdTenant scope.
SyncIdguidnoGlobally unique identifier for this record across all devices.
SyncVersionintegernoIncrements each time the record is modified locally.
Urlstringmax 2048noDestination URL.
Not in the export

Left out, and why

Credentials and server plumbing never leave Flex. Photos and signatures are files, not rows: JobUpdates rows of type Photo or Signature reference them by SyncId; download them from the app.

Table never exportedWhy
ApiIdempotencyRecordscached API responses kept 24 hours
ApiKeysAPI key hashes (credentials); keys are listed in Settings → Integrations
ApiRequestLogsrequest log
AspNetRoleClaimsrole claims (the permission catalog is in the product docs)
AspNetUserClaimssign-in claims
AspNetUserLoginsexternal sign-in links (credentials)
AspNetUserTokensauthenticator keys and recovery codes (credentials)
LocalAuthTokensdevice sign-in tokens (credentials)
OrganizationExportDownloadsemailed export download links (token hashes)
OrganizationExportSchedulesscheduled-export destination credentials (Settings → Export All Data → Schedule)
PendingFkResolutionssync bookkeeping
SyncDeletionLogssync bookkeeping
WebhookDeliveriesdelivery log
TableColumns never exported
every tableRowVersion
AspNetUsersPasswordHash SecurityStamp ConcurrencyStamp
OrganizationSettingsSquareAccessToken
WebhookSubscriptionsSecret
3 model types with no rows of their own in the export
TypeWhy
AspNetRolesnot linked to an organization (system-wide or device-local)
AspNetUserRolesnot linked to an organization (system-wide or device-local)
SystemSettingsnot linked to an organization (system-wide or device-local)