---
title: "Create Job Estimate Phase"
method: POST
path: "/api/v1/Jobs/Estimates/Phases"
tags: ["Job"]
---

# Create Job Estimate Phase

`POST /api/v1/Jobs/Estimates/Phases`

## Request

- Base URL: `https://api.fireserviceusa.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.fireserviceusa.com/api/v1/Jobs/Estimates/Phases`
- Auth: none declared

## Request body

- JobEstimatePhaseVm
  - `JobEstimatePhase` JobEstimatePhase
    - `JobEstimatePhaseId` integer
    - `JobEstimateId` integer
    - `JobElementPhaseId` integer
    - `CostQty` number, double
    - `CostUnit` number, double
    - `CostExt` number, double
    - `RevenueQty` number, double
    - `RevenueUnit` number, double
    - `RevenueExt` number, double
    - `EstimatedProfitMarginPercent` number, double
    - `EstimatedProfitMarginAmount` number, double
    - `CreateDate` string, date-time
    - `CreateUser` string, nullable
    - `UpdateDate` string, date-time
    - `UpdateUser` string, nullable
    - `JobElementPhase` JobElementPhase
      - `JobElementPhaseId` integer
      - `JobElementId` integer, required
      - `JobPhaseId` integer, required
      - `CreateDate` string, date-time
      - `CreateUser` string, nullable
      - `UpdateDate` string, date-time
      - `UpdateUser` string, nullable
      - `EstimatedProfitMargin` number, double
      - `Element` JobElement
        - `JobElementId` integer
        - `JobElementDesc` string, required
        - `JobElementCode` string, required
        - `JobElementUofM` string, required
        - `InActive` boolean
        - `CreateDate` string, date-time
        - `CreateUser` string, nullable
        - `UpdateDate` string, date-time
        - `UpdateUser` string, nullable
        - `JobElementPhases` JobElementPhase[], nullable
      - `Phase` JobPhase
        - `JobPhaseId` integer
        - `JobPhaseDesc` string, required
        - `JobPhaseCode` string, required
        - `InActive` boolean
        - `CreateDate` string, date-time
        - `CreateUser` string, nullable
        - `UpdateDate` string, date-time
        - `UpdateUser` string, nullable
        - `JobElementPhases` JobElementPhase[], nullable
        - `XactimateMappings` XactimateMapping[], nullable
          - `ID` integer
          - `XactimateMappingTypeId` integer
          - `XactimateCode` string, required
          - `XactimateSelector` string, nullable
          - `JobPhaseId` integer, required
          - `JobElementId` integer, required
          - `JobElementPhaseId` integer, nullable
          - `InActive` boolean
          - `CreateDate` string, date-time
          - `UpdateDate` string, date-time
          - `CreateUser` string, nullable
          - `UpdateUser` string, nullable
          - `EstimatedProfitMarginPercent` number, double
          - `JobPhase` JobPhase (recursive)
          - `JobElement` JobElement
            - `JobElementId` integer
            - `JobElementDesc` string, required
            - `JobElementCode` string, required
            - `JobElementUofM` string, required
            - `InActive` boolean
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `JobElementPhases` JobElementPhase[], nullable
          - `JobElementPhase` JobElementPhase (recursive)
          - `XactimateMappingType` XactimateMappingType
            - `ID` integer
            - `Description` string, nullable
    - `JobEstimate` JobEstimate
      - `JobEstimateId` integer
      - `JobId` integer
      - `CreateDate` string, date-time
      - `CreateUser` string, nullable
      - `UpdateDate` string, date-time
      - `UpdateUser` string, nullable
      - `JobEstimatePhases` JobEstimatePhase[], nullable
      - `Job` Job
        - `JobId` integer
        - `JobIdString` string, nullable
        - `JobName` string, required
        - `JobStartDate` string, date-time, nullable
        - `JobEndDate` string, date-time, nullable
        - `JobCloseDate` string, date-time, nullable
        - `LastDayOfWork` string, date-time, nullable
        - `LienDate` string, date-time, nullable: Lien due date — auto-set to LastDayOfWork + 90 days when Last Day of Work is entered/updated.
        - `JobAccountId` integer, required
        - `JobAddressId` integer, nullable
        - `BillAccountId` integer, nullable
        - `ReferringAccountId` integer, nullable
        - `BillAddressId` integer, nullable
        - `BillAddressIdV2` integer, nullable: The V2 billing address ID.
        - `JobAddressIdV2` integer, nullable: The V2 job address ID.
        - `JobAddressType` string, nullable
        - `JobAddress1` string, nullable
        - `JobAddress2` string, nullable
        - `JobCity` string, nullable
        - `JobState` string, nullable
        - `JobCounty` string, nullable
        - `JobCountry` string, nullable
        - `JobZip` string, nullable
        - `JobPhone1` string, nullable
        - `JobPhone1Type` string, nullable
        - `JobPhone2` string, nullable
        - `JobPhone2Type` string, nullable
        - `JobEmail` string, nullable
        - `BillAddressType` string, nullable
        - `BillAddress1` string, nullable
        - `BillAddress2` string, nullable
        - `BillCity` string, nullable
        - `BillState` string, nullable
        - `BillCounty` string, nullable
        - `BillCountry` string, nullable
        - `BillZip` string, nullable
        - `BillPhone1` string, nullable
        - `BillPhone1Type` string, nullable
        - `BillPhone2` string, nullable
        - `BillPhone2Type` string, nullable
        - `BillEmail` string, nullable
        - `JobContactId` integer, nullable
        - `JobTypeId` integer, required
        - `JobSubTypeId` integer
        - `JobStatusId` integer, nullable
        - `DivisionId` integer, nullable
        - `TeamId` integer, nullable
        - `BusDevUser` string, nullable
        - `ReceivedById` integer, nullable
        - `ReportedById` integer, nullable
        - `AdSourceId` integer, nullable
        - `ReferredContactId` integer, nullable
        - `LossDescriptionId` integer, nullable
        - `LossInstructionId` integer, nullable
        - `LossDirectionId` integer, nullable
        - `SpecialBillingInstructionsId` integer, nullable
        - `InActive` boolean
        - `Reconciled` boolean
        - `Signed` boolean
        - `Signature` string, byte, nullable
        - `Reviewed` boolean
        - `Closed` boolean
        - `IsSelfPay` boolean
        - `FullyPaid` boolean
        - `VerbalAuth` boolean
        - `AccountingAuth` boolean
        - `ThirtyDayNoticeSent` boolean
        - `LienLetterSent` boolean
        - `StartAfter5PM` boolean
        - `NTOSent` boolean
        - `ThirtyDayLetterUrl` string, nullable
        - `ClaimOfLienLetterUrl` string, nullable
        - `ClaimOfLienCoverLetterUrl` string, nullable
        - `SatisfactionOfLienLetterUrl` string, nullable
        - `ConditionalWaiverOfLienLetterUrl` string, nullable
        - `ContractorFinalPaymentLetterUrl` string, nullable
        - `CertOfSatisfactionLetterUrl` string, nullable
        - `LegalDemandWithInterestLetterUrl` string, nullable
        - `LegalDemandNoInterestLetterUrl` string, nullable
        - `RefusalAndReleaseLetterUrl` string, nullable
        - `NoticeToOwnerCoverLetterUrl` string, nullable
        - `NoticeToOwnerLetterUrl` string, nullable
        - `DateNoticeToOwnerLetterSent` string, date-time, nullable
        - `WorkAuthUndersignedName` string, nullable
        - `WorkAuthUndersignedRole` string, nullable
        - `WorkAuthAddress` string, nullable
        - `WorkAuthInsuranceCo` string, nullable
        - `WorkAuthMortgage` string, nullable
        - `WorkAuthFSDKRepName` string, nullable
        - `WorkAuthRespPartyDesc` string, nullable
        - `WorkAuthFSDKRepDate` string, date-time, nullable
        - `WorkAuthUndersignedDate` string, date-time, nullable
        - `WorkAuthUndersignedSignatureUrl` string, nullable
        - `WorkAuthFSDKRepSignatureUrl` string, nullable
        - `UseSecondaryWorkAuth` boolean
        - `ForceUseSecondaryAuth` boolean
        - `InsuranceCompanyId` integer, nullable
        - `InsuranceClaimNum` string, nullable
        - `TpaCompanyId` integer, nullable
        - `PolicyHolderId` integer, nullable
        - `AdjustingCompanyId` integer, nullable
        - `AdjusterId` integer, nullable
        - `ActualRev` number, double, nullable
        - `LoyaltyRewardsIssuedThroughActualRev` number, double, nullable: Tracks how much ActualRev has already earned loyalty rewards to keep issuance idempotent.
        - `ActualPay` number, double, nullable
        - `ActualCost` number, double, nullable
        - `EstJobCost` number, double, nullable
        - `EstJobRev` number, double, nullable
        - `DateSigned` string, date-time, nullable: Signatures
        - `SignaturePath` string, nullable
        - `ReasonCodeId` integer, nullable: ReasonCode
        - `CreateDate` string, date-time: Auditing
        - `CreateUser` string, nullable
        - `UpdateDate` string, date-time
        - `UpdateUser` string, nullable
        - `WarmTransferPerformed` boolean: ESP
        - `NotesAndPaperworkComplete` boolean
        - `HasDigitalPhotos` boolean
        - `HasThermalPhotos` boolean
        - `DateOfLastNote` string, date-time, nullable
        - `MostRecentNotes` string, nullable
        - `CommissionPeriodId` integer, nullable
        - `ClosingPeriod` string, nullable: Commission period name last written when CommissionPeriodId was set to a period. Reopen clears the id and leaves this name. A later close replaces it.
        - `ClosingPeriodStartDate` string, date-time, nullable: Display-only range from CommissionPeriods. Not stored on the job.
        - `ClosingPeriodEndDate` string, date-time, nullable: Display-only range from CommissionPeriods. Not stored on the job.
        - `JobInspectionDate` string, date-time, nullable: TimeLine Fields
        - `EstimateSentDate` string, date-time, nullable
        - `EstimatedCompletionDate` string, date-time, nullable
        - `DispatchTime` string, date-time, nullable
        - `ArrivalTime` string, date-time, nullable
        - `CallTime` string, date-time, nullable
        - `IsScheduled` boolean
        - `Xactimate` boolean: Xactimate Fields
        - `XactimateDate` string, date-time, nullable
        - `Project` Project
          - `ProjectId` integer
          - `ProjectName` string, nullable
          - `CreateDate` string, date-time: Auditing
          - `CreateUser` string, nullable
          - `UpdateDate` string, date-time
          - `ProjectStartDate` string, date-time, nullable
          - `UpdateUser` string, nullable
          - `DivisionId` integer, nullable
          - `TeamId` integer, nullable
          - `InsuranceCompanyId` integer, nullable
          - `InsuranceClaimNum` string, nullable
          - `TpaCompanyId` integer, nullable
          - `PolicyHolderId` integer, nullable
          - `AdjustingCompanyId` integer, nullable
          - `AdjusterId` integer, nullable
          - `ReceivedById` integer, nullable
          - `ReportedById` integer, nullable
          - `AdSourceId` integer, nullable
          - `ReferredContactId` integer, nullable
          - `ReferredAccountId` integer, nullable
          - `BusDevUser` string, nullable
          - `IsSelfPay` boolean
          - `Active` boolean
          - `Closed` boolean
          - `Reviewed` boolean
          - `UseSecondaryWorkAuth` boolean
          - `ForceUseSecondaryAuth` boolean
          - `ActualRev` number, double, nullable
          - `ActualPay` number, double, nullable
          - `ActualCost` number, double, nullable
          - `EstJobCost` number, double, nullable
          - `EstJobRev` number, double, nullable
          - `LossDescriptionId` integer, nullable
          - `LossInstructionId` integer, nullable
          - `SpecialBillingInstructionsId` integer, nullable
          - `ProjectJobs` ProjectJob[], nullable
            - `ProjectJobId` integer
            - `ProjectId` integer
            - `JobId` integer
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Project` Project (recursive)
            - `Job` Job (recursive)
          - `ProjectReferrals` ProjectReferrals[], nullable: Project-specific referral relationships
            - `ProjectReferralId` integer: Primary key for the project referral relationship
            - `ProjectId` integer, required: Project this relationship belongs to - indexed for fast project queries
            - `ParentEntityId` integer, nullable: Parent entity in the relationship - indexed for fast parent->child queries Can be null for root assignments (initial entity assignments to projects)
            - `ChildEntityId` integer, required: Child entity in the relationship - indexed for fast child->parent queries
            - `RelationshipType` string, required: Type of relationship - indexed for filtering - "Parent-Child": Standard hierarchical relationship - "Referral-Chain": One entity refers business to another - "Custom": Project-specific relationship not in global hierarchy
            - `CommissionPercentage` number, double, nullable: Commission sharing percentage for this relationship (0-100) Can override global relationship commission settings
            - `IsRewardBeneficiary` boolean: Indicates if this is the reward beneficiary for the project Only one per project can be true
            - `ChannelId` integer, nullable: Snapshot of the child referring entity's Channel at assignment time.
            - `SubChannelId` integer, nullable: Snapshot of the child referring entity's SubChannel at assignment time.
            - `CreatedDate` string, date-time: Date when this record was created
            - `CreatedBy` string, nullable: User who created this record
            - `ModifiedDate` string, date-time: Date when this record was last modified
            - `ModifiedBy` string, nullable: User who last modified this record
            - `Project` Project (recursive)
            - `ParentEntity` ReferringEntity: Unified model for referring entities that combines the functionality of referring Accounts and Contacts Supports both company and individual referral sources Migrated from Account (with AccountType="Referring Account") and Contact (with RefContactClass="Referring Contact")
              - …
            - `ChildEntity` ReferringEntity: Unified model for referring entities that combines the functionality of referring Accounts and Contacts Supports both company and individual referral sources Migrated from Account (with AccountType="Referring Account") and Contact (with RefContactClass="Referring Contact")
              - …
            - `Channel` Channel
              - …
            - `SubChannel` SubChannel
              - …
            - `IsActive` boolean: Fast active check - always true since no InActive field
            - `RelationshipDescription` string, nullable: Cached relationship description for display
            - `IsCustomRelationship` boolean: Check if this is a custom relationship (always true since no import tracking)
          - `Team` Team
            - `TeamId` integer
            - `TeamDesc` string, required
            - `InActive` boolean
            - `HideInReporting` boolean
            - `CalendarOnly` boolean
            - `AllowOnCalendar` boolean: Team can appear in calendar filters and be tagged on appointments. Forced on when P2.Api.Models.DomainModels.Team.CalendarOnly is true. Regular teams can opt in too.
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `TeamUsers` TeamUser[], nullable
              - …
          - `ReferredContact` Contact
            - `ContactId` integer
            - `FullName` string, nullable
            - `FirstName` string, required
            - `LastName` string, required
            - `AccountId` integer, nullable
            - `DefaultAddressType` string, nullable
            - `OtherAddressType` string, nullable
            - `Address1` string, nullable
            - `Address2` string, nullable
            - `City` string, nullable
            - `State` string, nullable
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, nullable
            - `Phone1` string, required
            - `Phone1Type` string, nullable
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `BusDevId` integer, nullable
            - `RefContactClassId` integer, nullable
            - `InActive` boolean
            - `ExemptFromDuplicate` boolean
            - `SmsEnrolled` boolean
            - `SmsEnrolledDate` string, date-time, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Birthday` string, date-time, nullable
            - `Anniversary` string, date-time, nullable
            - `Married` boolean
            - `Children` boolean
            - `HobbiesAndInterests` string, nullable
            - `ReasonCodeId` integer, nullable
            - `SpecialInstructionId` integer, nullable
            - `SpecialInstructions` string, nullable
            - `isFavorite` boolean
            - `Account` Account
              - …
            - `SpecialInstruction` Note
              - …
            - `BusDevUser` ApplicationUser
              - …
            - `RefContactClass` RefContactClass
              - …
            - `ContactConTypes` ContactConType[], nullable
              - …
            - `ContactRefContactClasses` ContactRefContactClass[], nullable
              - …
            - `Addresses` Address[], nullable
              - …
            - `ReasonCode` ReasonCode
              - …
            - `ContactAddresses` ContactAddress[], nullable
              - …
            - `AccountContacts` AccountContact[], nullable
              - …
          - `ReferredAccount` Account
            - `AccountId` integer
            - `GpCustomerNumber` string, nullable
            - `CompanyName` string, nullable
            - `FullName` string, nullable
            - `DisplayName` string, nullable
            - `FirstName` string, nullable
            - `LastName` string, nullable
            - `CustClass` string, nullable
            - `DefaultAddressId` integer
            - `Address1` string, nullable
            - `Address2` string, nullable
            - `City` string, nullable
            - `State` string, nullable
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, nullable
            - `Phone1` string, nullable
            - `Phone1Type` string, nullable
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `InActive` boolean
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Description` string, nullable
            - `IsCommercial` boolean
            - `ExemptFromDuplicate` boolean
            - `SmsEnrolled` boolean
            - `SmsEnrolledDate` string, date-time, nullable
            - `SpecialInstructionId` integer, nullable
            - `SpecialInstructions` string, nullable
            - `Contacts` Contact[], nullable
              - …
            - `Addresses` Address[], nullable
              - …
            - `AccountAccountTypes` AccountAccountType[], nullable
              - …
            - `AccountAddresses` AccountAddress[], nullable
              - …
            - `AccountContacts` AccountContact[], nullable
              - …
            - `SpecialInstruction` Note
              - …
          - `Division` Division
            - `DivisionId` integer
            - `DivisionDesc` string, required
            - `Address1` string, required
            - `Address2` string, nullable
            - `City` string, required
            - `State` string, required
            - `Zip` string, required
            - `Phone` string, required
            - `InActive` boolean
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
          - `ReceivedByUser` ApplicationUser
            - `Id` integer
            - `UserName` string, nullable
            - `NormalizedUserName` string, nullable
            - `Email` string, nullable
            - `NormalizedEmail` string, nullable
            - `EmailConfirmed` boolean
            - `PasswordHash` string, nullable
            - `SecurityStamp` string, nullable
            - `ConcurrencyStamp` string, nullable
            - `PhoneNumber` string, nullable
            - `PhoneNumberConfirmed` boolean
            - `TwoFactorEnabled` boolean
            - `LockoutEnd` string, date-time, nullable
            - `LockoutEnabled` boolean
            - `AccessFailedCount` integer
            - `FirstName` string, nullable
            - `LastName` string, nullable
            - `FullName` string, nullable
            - `GP_Department` string, nullable
            - `GP_JobTitle` string, nullable
            - `GP_LocationId` string, nullable
            - `GP_DivisionCode` string, nullable
            - `GP_EmpId` string, nullable
            - `IsActive` boolean
            - `ReceiveTextNotifications` boolean
            - `ReceiveEmailNotifications` boolean
            - `HideInProductionLists` boolean
            - `HideFromTimeApproval` boolean
            - `ForcePasswordReset` boolean
            - `IsEstimator` boolean
            - `IsSupervisor` boolean
            - `LastPasswordChangedDate` string, date-time
            - `PasswordResetExempt` boolean
            - `ProfilePictureUrl` string, nullable
            - `MicrosoftUserId` string, nullable
            - `MicrosoftUserPrincipalName` string, nullable
            - `CalendarSyncEnabled` boolean
            - `CalendarSyncLastSucceeded` boolean, nullable
            - `CalendarSyncFailReason` string, nullable
            - `CalendarVisibleToMasterViewOnly` boolean: When true, this user's calendar details are only visible to users with CalendarMasterView.
            - `CalendarPrivateForEveryone` boolean: When true, only this user can see their calendar details; everyone else sees private blocks.
            - `CalendarHiddenFromNonMasterView` boolean: Ghost mode: this user's organized appointments are omitted entirely for viewers without CalendarMasterView unless the viewer is an attendee. Conflict checks still show a private block.
            - `UseGeneralCalendar` boolean: When true, Outlook create/update/delete for this user uses the shared general organizer mailbox instead of their personal Microsoft account (they may have none, or share someone else's).
            - `TagAppointmentsWithUserTeams` boolean: When true, Outlook sync tags appointments this user organizes with their teams if the appointment is not already on a team calendar. Off by default.
            - `AutoLinkOutlookAppointmentsByJobId` boolean: When true, Outlook sync links this user's incoming appointments to an existing P2 job when the title contains an unbroken run of exactly five digits that matches a job. Off by default. An appointment that already has a job is left as-is.
            - `OutlookSyncCalendarEventTypeId` integer, nullable: When set, Outlook sync assigns this appointment type to this user's appointments that do not already have one. Null leaves types unchanged.
            - `CalendarDefaultBuiltinFilterId` string, nullable: Built-in calendar quick-filter id (e.g. mine-only) used as the user's default view on load. Mutually exclusive with a preset marked IsDefault.
            - `TeamUsers` TeamUser[], nullable
              - …
          - `ReportedBy` Contact
            - `ContactId` integer
            - `FullName` string, nullable
            - `FirstName` string, required
            - `LastName` string, required
            - `AccountId` integer, nullable
            - `DefaultAddressType` string, nullable
            - `OtherAddressType` string, nullable
            - `Address1` string, nullable
            - `Address2` string, nullable
            - `City` string, nullable
            - `State` string, nullable
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, nullable
            - `Phone1` string, required
            - `Phone1Type` string, nullable
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `BusDevId` integer, nullable
            - `RefContactClassId` integer, nullable
            - `InActive` boolean
            - `ExemptFromDuplicate` boolean
            - `SmsEnrolled` boolean
            - `SmsEnrolledDate` string, date-time, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Birthday` string, date-time, nullable
            - `Anniversary` string, date-time, nullable
            - `Married` boolean
            - `Children` boolean
            - `HobbiesAndInterests` string, nullable
            - `ReasonCodeId` integer, nullable
            - `SpecialInstructionId` integer, nullable
            - `SpecialInstructions` string, nullable
            - `isFavorite` boolean
            - `Account` Account
              - …
            - `SpecialInstruction` Note
              - …
            - `BusDevUser` ApplicationUser
              - …
            - `RefContactClass` RefContactClass
              - …
            - `ContactConTypes` ContactConType[], nullable
              - …
            - `ContactRefContactClasses` ContactRefContactClass[], nullable
              - …
            - `Addresses` Address[], nullable
              - …
            - `ReasonCode` ReasonCode
              - …
            - `ContactAddresses` ContactAddress[], nullable
              - …
            - `AccountContacts` AccountContact[], nullable
              - …
          - `AdSource` AdSource
            - `AdSourceId` integer
            - `Description` string, required
            - `InActive` boolean
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
          - `InsuranceCompany` Account
            - `AccountId` integer
            - `GpCustomerNumber` string, nullable
            - `CompanyName` string, nullable
            - `FullName` string, nullable
            - `DisplayName` string, nullable
            - `FirstName` string, nullable
            - `LastName` string, nullable
            - `CustClass` string, nullable
            - `DefaultAddressId` integer
            - `Address1` string, nullable
            - `Address2` string, nullable
            - `City` string, nullable
            - `State` string, nullable
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, nullable
            - `Phone1` string, nullable
            - `Phone1Type` string, nullable
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `InActive` boolean
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Description` string, nullable
            - `IsCommercial` boolean
            - `ExemptFromDuplicate` boolean
            - `SmsEnrolled` boolean
            - `SmsEnrolledDate` string, date-time, nullable
            - `SpecialInstructionId` integer, nullable
            - `SpecialInstructions` string, nullable
            - `Contacts` Contact[], nullable
              - …
            - `Addresses` Address[], nullable
              - …
            - `AccountAccountTypes` AccountAccountType[], nullable
              - …
            - `AccountAddresses` AccountAddress[], nullable
              - …
            - `AccountContacts` AccountContact[], nullable
              - …
            - `SpecialInstruction` Note
              - …
          - `TpaCompany` Account
            - `AccountId` integer
            - `GpCustomerNumber` string, nullable
            - `CompanyName` string, nullable
            - `FullName` string, nullable
            - `DisplayName` string, nullable
            - `FirstName` string, nullable
            - `LastName` string, nullable
            - `CustClass` string, nullable
            - `DefaultAddressId` integer
            - `Address1` string, nullable
            - `Address2` string, nullable
            - `City` string, nullable
            - `State` string, nullable
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, nullable
            - `Phone1` string, nullable
            - `Phone1Type` string, nullable
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `InActive` boolean
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Description` string, nullable
            - `IsCommercial` boolean
            - `ExemptFromDuplicate` boolean
            - `SmsEnrolled` boolean
            - `SmsEnrolledDate` string, date-time, nullable
            - `SpecialInstructionId` integer, nullable
            - `SpecialInstructions` string, nullable
            - `Contacts` Contact[], nullable
              - …
            - `Addresses` Address[], nullable
              - …
            - `AccountAccountTypes` AccountAccountType[], nullable
              - …
            - `AccountAddresses` AccountAddress[], nullable
              - …
            - `AccountContacts` AccountContact[], nullable
              - …
            - `SpecialInstruction` Note
              - …
          - `PolicyHolder` Account
            - `AccountId` integer
            - `GpCustomerNumber` string, nullable
            - `CompanyName` string, nullable
            - `FullName` string, nullable
            - `DisplayName` string, nullable
            - `FirstName` string, nullable
            - `LastName` string, nullable
            - `CustClass` string, nullable
            - `DefaultAddressId` integer
            - `Address1` string, nullable
            - `Address2` string, nullable
            - `City` string, nullable
            - `State` string, nullable
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, nullable
            - `Phone1` string, nullable
            - `Phone1Type` string, nullable
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `InActive` boolean
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Description` string, nullable
            - `IsCommercial` boolean
            - `ExemptFromDuplicate` boolean
            - `SmsEnrolled` boolean
            - `SmsEnrolledDate` string, date-time, nullable
            - `SpecialInstructionId` integer, nullable
            - `SpecialInstructions` string, nullable
            - `Contacts` Contact[], nullable
              - …
            - `Addresses` Address[], nullable
              - …
            - `AccountAccountTypes` AccountAccountType[], nullable
              - …
            - `AccountAddresses` AccountAddress[], nullable
              - …
            - `AccountContacts` AccountContact[], nullable
              - …
            - `SpecialInstruction` Note
              - …
          - `AdjustingCompany` Account
            - `AccountId` integer
            - `GpCustomerNumber` string, nullable
            - `CompanyName` string, nullable
            - `FullName` string, nullable
            - `DisplayName` string, nullable
            - `FirstName` string, nullable
            - `LastName` string, nullable
            - `CustClass` string, nullable
            - `DefaultAddressId` integer
            - `Address1` string, nullable
            - `Address2` string, nullable
            - `City` string, nullable
            - `State` string, nullable
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, nullable
            - `Phone1` string, nullable
            - `Phone1Type` string, nullable
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `InActive` boolean
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Description` string, nullable
            - `IsCommercial` boolean
            - `ExemptFromDuplicate` boolean
            - `SmsEnrolled` boolean
            - `SmsEnrolledDate` string, date-time, nullable
            - `SpecialInstructionId` integer, nullable
            - `SpecialInstructions` string, nullable
            - `Contacts` Contact[], nullable
              - …
            - `Addresses` Address[], nullable
              - …
            - `AccountAccountTypes` AccountAccountType[], nullable
              - …
            - `AccountAddresses` AccountAddress[], nullable
              - …
            - `AccountContacts` AccountContact[], nullable
              - …
            - `SpecialInstruction` Note
              - …
          - `Adjuster` Contact
            - `ContactId` integer
            - `FullName` string, nullable
            - `FirstName` string, required
            - `LastName` string, required
            - `AccountId` integer, nullable
            - `DefaultAddressType` string, nullable
            - `OtherAddressType` string, nullable
            - `Address1` string, nullable
            - `Address2` string, nullable
            - `City` string, nullable
            - `State` string, nullable
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, nullable
            - `Phone1` string, required
            - `Phone1Type` string, nullable
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `BusDevId` integer, nullable
            - `RefContactClassId` integer, nullable
            - `InActive` boolean
            - `ExemptFromDuplicate` boolean
            - `SmsEnrolled` boolean
            - `SmsEnrolledDate` string, date-time, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Birthday` string, date-time, nullable
            - `Anniversary` string, date-time, nullable
            - `Married` boolean
            - `Children` boolean
            - `HobbiesAndInterests` string, nullable
            - `ReasonCodeId` integer, nullable
            - `SpecialInstructionId` integer, nullable
            - `SpecialInstructions` string, nullable
            - `isFavorite` boolean
            - `Account` Account
              - …
            - `SpecialInstruction` Note
              - …
            - `BusDevUser` ApplicationUser
              - …
            - `RefContactClass` RefContactClass
              - …
            - `ContactConTypes` ContactConType[], nullable
              - …
            - `ContactRefContactClasses` ContactRefContactClass[], nullable
              - …
            - `Addresses` Address[], nullable
              - …
            - `ReasonCode` ReasonCode
              - …
            - `ContactAddresses` ContactAddress[], nullable
              - …
            - `AccountContacts` AccountContact[], nullable
              - …
          - `LossDescription` Note
            - `NoteId` integer
            - `NoteText` string, required
            - `InActive` boolean
            - `CategoryId` integer, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `FollowUpDate` string, date-time, nullable: When set, this note is a follow-up scheduled for the given date.
            - `IsFollowUp` boolean: Convenience flag — a note is a follow-up when FollowUpDate has a value.
            - `NoteFollowUpUsers` NoteFollowUpUser[], nullable: Optional users associated with a follow-up note.
              - …
            - `FollowUpUserIds` integer[], nullable
            - `FollowUpUsers` string[], nullable
            - `FollowUpUsersDisplay` string, nullable
            - `JobId` integer, nullable
            - `ProjectId` integer, nullable
            - `OutlookEventId` string, nullable
            - `SeriesICalUId` string, nullable: When set, note applies to the entire recurring series (shared ICalUId).
            - `AccountId` integer, nullable
            - `ContactId` integer, nullable
            - `AddressV2Id` integer, nullable
            - `ReferringEntityId` integer, nullable
            - `Category` Category
              - …
          - `LossInstructions` Note
            - `NoteId` integer
            - `NoteText` string, required
            - `InActive` boolean
            - `CategoryId` integer, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `FollowUpDate` string, date-time, nullable: When set, this note is a follow-up scheduled for the given date.
            - `IsFollowUp` boolean: Convenience flag — a note is a follow-up when FollowUpDate has a value.
            - `NoteFollowUpUsers` NoteFollowUpUser[], nullable: Optional users associated with a follow-up note.
              - …
            - `FollowUpUserIds` integer[], nullable
            - `FollowUpUsers` string[], nullable
            - `FollowUpUsersDisplay` string, nullable
            - `JobId` integer, nullable
            - `ProjectId` integer, nullable
            - `OutlookEventId` string, nullable
            - `SeriesICalUId` string, nullable: When set, note applies to the entire recurring series (shared ICalUId).
            - `AccountId` integer, nullable
            - `ContactId` integer, nullable
            - `AddressV2Id` integer, nullable
            - `ReferringEntityId` integer, nullable
            - `Category` Category
              - …
          - `SpecialBillingInstructions` Note
            - `NoteId` integer
            - `NoteText` string, required
            - `InActive` boolean
            - `CategoryId` integer, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `FollowUpDate` string, date-time, nullable: When set, this note is a follow-up scheduled for the given date.
            - `IsFollowUp` boolean: Convenience flag — a note is a follow-up when FollowUpDate has a value.
            - `NoteFollowUpUsers` NoteFollowUpUser[], nullable: Optional users associated with a follow-up note.
              - …
            - `FollowUpUserIds` integer[], nullable
            - `FollowUpUsers` string[], nullable
            - `FollowUpUsersDisplay` string, nullable
            - `JobId` integer, nullable
            - `ProjectId` integer, nullable
            - `OutlookEventId` string, nullable
            - `SeriesICalUId` string, nullable: When set, note applies to the entire recurring series (shared ICalUId).
            - `AccountId` integer, nullable
            - `ContactId` integer, nullable
            - `AddressV2Id` integer, nullable
            - `ReferringEntityId` integer, nullable
            - `Category` Category
              - …
          - `LinkedSpecialInstructions` LinkedSpecialInstructionVm[], nullable
            - `NoteId` integer
            - `NoteText` string, nullable
            - `CategoryId` integer
            - `CategoryDescription` string, nullable
            - `SourceType` string, nullable
            - `SourceEntityId` integer
            - `SourceName` string, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
          - `TypeLabel` string, nullable: Quick-search display only. Distinct job type / subtype pairs on this project.
        - `JobContact` Contact
          - `ContactId` integer
          - `FullName` string, nullable
          - `FirstName` string, required
          - `LastName` string, required
          - `AccountId` integer, nullable
          - `DefaultAddressType` string, nullable
          - `OtherAddressType` string, nullable
          - `Address1` string, nullable
          - `Address2` string, nullable
          - `City` string, nullable
          - `State` string, nullable
          - `County` string, nullable
          - `Country` string, nullable
          - `Zip` string, nullable
          - `Phone1` string, required
          - `Phone1Type` string, nullable
          - `Phone2` string, nullable
          - `Phone2Type` string, nullable
          - `Email` string, nullable
          - `BusDevId` integer, nullable
          - `RefContactClassId` integer, nullable
          - `InActive` boolean
          - `ExemptFromDuplicate` boolean
          - `SmsEnrolled` boolean
          - `SmsEnrolledDate` string, date-time, nullable
          - `CreateDate` string, date-time
          - `CreateUser` string, nullable
          - `UpdateDate` string, date-time
          - `UpdateUser` string, nullable
          - `Birthday` string, date-time, nullable
          - `Anniversary` string, date-time, nullable
          - `Married` boolean
          - `Children` boolean
          - `HobbiesAndInterests` string, nullable
          - `ReasonCodeId` integer, nullable
          - `SpecialInstructionId` integer, nullable
          - `SpecialInstructions` string, nullable
          - `isFavorite` boolean
          - `Account` Account
            - `AccountId` integer
            - `GpCustomerNumber` string, nullable
            - `CompanyName` string, nullable
            - `FullName` string, nullable
            - `DisplayName` string, nullable
            - `FirstName` string, nullable
            - `LastName` string, nullable
            - `CustClass` string, nullable
            - `DefaultAddressId` integer
            - `Address1` string, nullable
            - `Address2` string, nullable
            - `City` string, nullable
            - `State` string, nullable
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, nullable
            - `Phone1` string, nullable
            - `Phone1Type` string, nullable
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `InActive` boolean
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Description` string, nullable
            - `IsCommercial` boolean
            - `ExemptFromDuplicate` boolean
            - `SmsEnrolled` boolean
            - `SmsEnrolledDate` string, date-time, nullable
            - `SpecialInstructionId` integer, nullable
            - `SpecialInstructions` string, nullable
            - `Contacts` Contact[], nullable
            - `Addresses` Address[], nullable
              - …
            - `AccountAccountTypes` AccountAccountType[], nullable
              - …
            - `AccountAddresses` AccountAddress[], nullable
              - …
            - `AccountContacts` AccountContact[], nullable
              - …
            - `SpecialInstruction` Note
              - …
          - `SpecialInstruction` Note
            - `NoteId` integer
            - `NoteText` string, required
            - `InActive` boolean
            - `CategoryId` integer, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `FollowUpDate` string, date-time, nullable: When set, this note is a follow-up scheduled for the given date.
            - `IsFollowUp` boolean: Convenience flag — a note is a follow-up when FollowUpDate has a value.
            - `NoteFollowUpUsers` NoteFollowUpUser[], nullable: Optional users associated with a follow-up note.
              - …
            - `FollowUpUserIds` integer[], nullable
            - `FollowUpUsers` string[], nullable
            - `FollowUpUsersDisplay` string, nullable
            - `JobId` integer, nullable
            - `ProjectId` integer, nullable
            - `OutlookEventId` string, nullable
            - `SeriesICalUId` string, nullable: When set, note applies to the entire recurring series (shared ICalUId).
            - `AccountId` integer, nullable
            - `ContactId` integer, nullable
            - `AddressV2Id` integer, nullable
            - `ReferringEntityId` integer, nullable
            - `Category` Category
              - …
          - `BusDevUser` ApplicationUser
            - `Id` integer
            - `UserName` string, nullable
            - `NormalizedUserName` string, nullable
            - `Email` string, nullable
            - `NormalizedEmail` string, nullable
            - `EmailConfirmed` boolean
            - `PasswordHash` string, nullable
            - `SecurityStamp` string, nullable
            - `ConcurrencyStamp` string, nullable
            - `PhoneNumber` string, nullable
            - `PhoneNumberConfirmed` boolean
            - `TwoFactorEnabled` boolean
            - `LockoutEnd` string, date-time, nullable
            - `LockoutEnabled` boolean
            - `AccessFailedCount` integer
            - `FirstName` string, nullable
            - `LastName` string, nullable
            - `FullName` string, nullable
            - `GP_Department` string, nullable
            - `GP_JobTitle` string, nullable
            - `GP_LocationId` string, nullable
            - `GP_DivisionCode` string, nullable
            - `GP_EmpId` string, nullable
            - `IsActive` boolean
            - `ReceiveTextNotifications` boolean
            - `ReceiveEmailNotifications` boolean
            - `HideInProductionLists` boolean
            - `HideFromTimeApproval` boolean
            - `ForcePasswordReset` boolean
            - `IsEstimator` boolean
            - `IsSupervisor` boolean
            - `LastPasswordChangedDate` string, date-time
            - `PasswordResetExempt` boolean
            - `ProfilePictureUrl` string, nullable
            - `MicrosoftUserId` string, nullable
            - `MicrosoftUserPrincipalName` string, nullable
            - `CalendarSyncEnabled` boolean
            - `CalendarSyncLastSucceeded` boolean, nullable
            - `CalendarSyncFailReason` string, nullable
            - `CalendarVisibleToMasterViewOnly` boolean: When true, this user's calendar details are only visible to users with CalendarMasterView.
            - `CalendarPrivateForEveryone` boolean: When true, only this user can see their calendar details; everyone else sees private blocks.
            - `CalendarHiddenFromNonMasterView` boolean: Ghost mode: this user's organized appointments are omitted entirely for viewers without CalendarMasterView unless the viewer is an attendee. Conflict checks still show a private block.
            - `UseGeneralCalendar` boolean: When true, Outlook create/update/delete for this user uses the shared general organizer mailbox instead of their personal Microsoft account (they may have none, or share someone else's).
            - `TagAppointmentsWithUserTeams` boolean: When true, Outlook sync tags appointments this user organizes with their teams if the appointment is not already on a team calendar. Off by default.
            - `AutoLinkOutlookAppointmentsByJobId` boolean: When true, Outlook sync links this user's incoming appointments to an existing P2 job when the title contains an unbroken run of exactly five digits that matches a job. Off by default. An appointment that already has a job is left as-is.
            - `OutlookSyncCalendarEventTypeId` integer, nullable: When set, Outlook sync assigns this appointment type to this user's appointments that do not already have one. Null leaves types unchanged.
            - `CalendarDefaultBuiltinFilterId` string, nullable: Built-in calendar quick-filter id (e.g. mine-only) used as the user's default view on load. Mutually exclusive with a preset marked IsDefault.
            - `TeamUsers` TeamUser[], nullable
              - …
          - `RefContactClass` RefContactClass
            - `RefContactClassId` integer
            - `Description` string, nullable
            - `InActive` boolean
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `ContactRefContactClass` ContactRefContactClass[], nullable
              - …
          - `ContactConTypes` ContactConType[], nullable
            - `ContactConTypeId` integer
            - `ContactId` integer
            - `ContactTypeId` integer
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Contact` Contact (recursive)
            - `ContactType` ContactType
              - …
          - `ContactRefContactClasses` ContactRefContactClass[], nullable
            - `ContactRefContactClassId` integer
            - `ContactId` integer
            - `RefContactClassId` integer
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Contact` Contact (recursive)
            - `RefContactClass` RefContactClass
              - …
          - `Addresses` Address[], nullable
            - `AddressId` integer
            - `AddressType` string, required
            - `OtherAddressType` string, nullable
            - `AccountId` integer, nullable
            - `ContactId` integer, nullable
            - `IsDefault` boolean
            - `InActive` boolean
            - `HasMigratedToV2Address` boolean
            - `ContactPerson` string, nullable: Job Address
            - `Address1` string, required
            - `Address2` string, nullable
            - `City` string, required
            - `State` string, required
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, required
            - `Phone1` string, required
            - `Phone1Type` string, required
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Account` Account
              - …
            - `Contact` Contact (recursive)
          - `ReasonCode` ReasonCode
            - `ReasonCodeId` integer
            - `Description` string, nullable
            - `Category` string, nullable
            - `InActive` boolean
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
          - `ContactAddresses` ContactAddress[], nullable
            - `ContactAddressId` integer
            - `ContactId` integer: Foreign key to Contact
            - `AddressV2Id` integer: Foreign key to AddressV2
            - `AddressTypeId` integer: Foreign key to AddressType lookup
            - `OtherAddressTypeDescription` string, nullable: Free-text description if AddressType = "Other"
            - `IsPrimary` boolean: Marks this as the primary/default address for the contact
            - `Phone1` string, nullable: Phone number associated with this specific address
            - `Phone1Type` string, nullable: Phone type (Work, Cell, Fax)
            - `Phone2` string, nullable: Secondary phone number
            - `Phone2Type` string, nullable: Secondary phone type
            - `Email` string, nullable: Email address associated with this specific address
            - `InActive` boolean: Soft-delete flag for the assignment
            - `CreateDate` string, date-time: Audit fields
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Contact` Contact (recursive)
            - `AddressV2` AddressV2: Version 2 of Address model - contains ONLY address-related fields. Phone, email, and contact person moved to entity-specific link tables or parent entities. Replaces legacy Address table which mixed address data with contact data.
              - …
            - `AddressType` AddressType: Lookup table for address type classifications (Home, Office, Job, Bill-Primary, Bill-Secondary, Other, etc.) Replaces hardcoded address type strings in legacy Address table
              - …
          - `AccountContacts` AccountContact[], nullable
            - `AccountContactId` integer
            - `AccountId` integer: Foreign key to Account
            - `ContactId` integer: Foreign key to Contact
            - `IsPrimary` boolean: Marks this contact as the primary contact for the account
            - `InActive` boolean: Soft-delete flag for the assignment
            - `CreateDate` string, date-time: Audit fields
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Account` Account
              - …
            - `Contact` Contact (recursive)
        - `JobAccount` Account
          - `AccountId` integer
          - `GpCustomerNumber` string, nullable
          - `CompanyName` string, nullable
          - `FullName` string, nullable
          - `DisplayName` string, nullable
          - `FirstName` string, nullable
          - `LastName` string, nullable
          - `CustClass` string, nullable
          - `DefaultAddressId` integer
          - `Address1` string, nullable
          - `Address2` string, nullable
          - `City` string, nullable
          - `State` string, nullable
          - `County` string, nullable
          - `Country` string, nullable
          - `Zip` string, nullable
          - `Phone1` string, nullable
          - `Phone1Type` string, nullable
          - `Phone2` string, nullable
          - `Phone2Type` string, nullable
          - `Email` string, nullable
          - `InActive` boolean
          - `CreateDate` string, date-time
          - `CreateUser` string, nullable
          - `UpdateDate` string, date-time
          - `UpdateUser` string, nullable
          - `Description` string, nullable
          - `IsCommercial` boolean
          - `ExemptFromDuplicate` boolean
          - `SmsEnrolled` boolean
          - `SmsEnrolledDate` string, date-time, nullable
          - `SpecialInstructionId` integer, nullable
          - `SpecialInstructions` string, nullable
          - `Contacts` Contact[], nullable
            - `ContactId` integer
            - `FullName` string, nullable
            - `FirstName` string, required
            - `LastName` string, required
            - `AccountId` integer, nullable
            - `DefaultAddressType` string, nullable
            - `OtherAddressType` string, nullable
            - `Address1` string, nullable
            - `Address2` string, nullable
            - `City` string, nullable
            - `State` string, nullable
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, nullable
            - `Phone1` string, required
            - `Phone1Type` string, nullable
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `BusDevId` integer, nullable
            - `RefContactClassId` integer, nullable
            - `InActive` boolean
            - `ExemptFromDuplicate` boolean
            - `SmsEnrolled` boolean
            - `SmsEnrolledDate` string, date-time, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Birthday` string, date-time, nullable
            - `Anniversary` string, date-time, nullable
            - `Married` boolean
            - `Children` boolean
            - `HobbiesAndInterests` string, nullable
            - `ReasonCodeId` integer, nullable
            - `SpecialInstructionId` integer, nullable
            - `SpecialInstructions` string, nullable
            - `isFavorite` boolean
            - `Account` Account (recursive)
            - `SpecialInstruction` Note
              - …
            - `BusDevUser` ApplicationUser
              - …
            - `RefContactClass` RefContactClass
              - …
            - `ContactConTypes` ContactConType[], nullable
              - …
            - `ContactRefContactClasses` ContactRefContactClass[], nullable
              - …
            - `Addresses` Address[], nullable
              - …
            - `ReasonCode` ReasonCode
              - …
            - `ContactAddresses` ContactAddress[], nullable
              - …
            - `AccountContacts` AccountContact[], nullable
              - …
          - `Addresses` Address[], nullable
            - `AddressId` integer
            - `AddressType` string, required
            - `OtherAddressType` string, nullable
            - `AccountId` integer, nullable
            - `ContactId` integer, nullable
            - `IsDefault` boolean
            - `InActive` boolean
            - `HasMigratedToV2Address` boolean
            - `ContactPerson` string, nullable: Job Address
            - `Address1` string, required
            - `Address2` string, nullable
            - `City` string, required
            - `State` string, required
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, required
            - `Phone1` string, required
            - `Phone1Type` string, required
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Account` Account (recursive)
            - `Contact` Contact
              - …
          - `AccountAccountTypes` AccountAccountType[], nullable
            - `AccountAccountTypeId` integer
            - `AccountId` integer
            - `AccountTypeId` integer
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Account` Account (recursive)
            - `AccountType` AccountType
              - …
          - `AccountAddresses` AccountAddress[], nullable
            - `AccountAddressId` integer
            - `AccountId` integer: Foreign key to Account
            - `AddressV2Id` integer: Foreign key to AddressV2
            - `AddressTypeId` integer: Foreign key to AddressType lookup
            - `OtherAddressTypeDescription` string, nullable: Free-text description if AddressType = "Other"
            - `IsPrimary` boolean: Marks this as the primary/default address for the account
            - `IsDefaultBilling` boolean: Marks this as the default billing address for the account
            - `IsDefaultJob` boolean: Marks this as the default job address for the account
            - `ContactPerson` string, nullable: Contact person at this address (job-specific)
            - `Phone1` string, nullable: Phone number associated with this specific address
            - `Phone1Type` string, nullable: Phone type (Work, Cell, Fax)
            - `Phone2` string, nullable: Secondary phone number
            - `Phone2Type` string, nullable: Secondary phone type
            - `Email` string, nullable: Email address associated with this specific address
            - `InActive` boolean: Soft-delete flag for the assignment
            - `CreateDate` string, date-time: Audit fields
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Account` Account (recursive)
            - `AddressV2` AddressV2: Version 2 of Address model - contains ONLY address-related fields. Phone, email, and contact person moved to entity-specific link tables or parent entities. Replaces legacy Address table which mixed address data with contact data.
              - …
            - `AddressType` AddressType: Lookup table for address type classifications (Home, Office, Job, Bill-Primary, Bill-Secondary, Other, etc.) Replaces hardcoded address type strings in legacy Address table
              - …
          - `AccountContacts` AccountContact[], nullable
            - `AccountContactId` integer
            - `AccountId` integer: Foreign key to Account
            - `ContactId` integer: Foreign key to Contact
            - `IsPrimary` boolean: Marks this contact as the primary contact for the account
            - `InActive` boolean: Soft-delete flag for the assignment
            - `CreateDate` string, date-time: Audit fields
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Account` Account (recursive)
            - `Contact` Contact
              - …
          - `SpecialInstruction` Note
            - `NoteId` integer
            - `NoteText` string, required
            - `InActive` boolean
            - `CategoryId` integer, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `FollowUpDate` string, date-time, nullable: When set, this note is a follow-up scheduled for the given date.
            - `IsFollowUp` boolean: Convenience flag — a note is a follow-up when FollowUpDate has a value.
            - `NoteFollowUpUsers` NoteFollowUpUser[], nullable: Optional users associated with a follow-up note.
              - …
            - `FollowUpUserIds` integer[], nullable
            - `FollowUpUsers` string[], nullable
            - `FollowUpUsersDisplay` string, nullable
            - `JobId` integer, nullable
            - `ProjectId` integer, nullable
            - `OutlookEventId` string, nullable
            - `SeriesICalUId` string, nullable: When set, note applies to the entire recurring series (shared ICalUId).
            - `AccountId` integer, nullable
            - `ContactId` integer, nullable
            - `AddressV2Id` integer, nullable
            - `ReferringEntityId` integer, nullable
            - `Category` Category
              - …
        - `JobAddress` Address
          - `AddressId` integer
          - `AddressType` string, required
          - `OtherAddressType` string, nullable
          - `AccountId` integer, nullable
          - `ContactId` integer, nullable
          - `IsDefault` boolean
          - `InActive` boolean
          - `HasMigratedToV2Address` boolean
          - `ContactPerson` string, nullable: Job Address
          - `Address1` string, required
          - `Address2` string, nullable
          - `City` string, required
          - `State` string, required
          - `County` string, nullable
          - `Country` string, nullable
          - `Zip` string, required
          - `Phone1` string, required
          - `Phone1Type` string, required
          - `Phone2` string, nullable
          - `Phone2Type` string, nullable
          - `Email` string, nullable
          - `CreateDate` string, date-time
          - `CreateUser` string, nullable
          - `UpdateDate` string, date-time
          - `UpdateUser` string, nullable
          - `Account` Account
            - `AccountId` integer
            - `GpCustomerNumber` string, nullable
            - `CompanyName` string, nullable
            - `FullName` string, nullable
            - `DisplayName` string, nullable
            - `FirstName` string, nullable
            - `LastName` string, nullable
            - `CustClass` string, nullable
            - `DefaultAddressId` integer
            - `Address1` string, nullable
            - `Address2` string, nullable
            - `City` string, nullable
            - `State` string, nullable
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, nullable
            - `Phone1` string, nullable
            - `Phone1Type` string, nullable
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `InActive` boolean
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Description` string, nullable
            - `IsCommercial` boolean
            - `ExemptFromDuplicate` boolean
            - `SmsEnrolled` boolean
            - `SmsEnrolledDate` string, date-time, nullable
            - `SpecialInstructionId` integer, nullable
            - `SpecialInstructions` string, nullable
            - `Contacts` Contact[], nullable
              - …
            - `Addresses` Address[], nullable
            - `AccountAccountTypes` AccountAccountType[], nullable
              - …
            - `AccountAddresses` AccountAddress[], nullable
              - …
            - `AccountContacts` AccountContact[], nullable
              - …
            - `SpecialInstruction` Note
              - …
          - `Contact` Contact
            - `ContactId` integer
            - `FullName` string, nullable
            - `FirstName` string, required
            - `LastName` string, required
            - `AccountId` integer, nullable
            - `DefaultAddressType` string, nullable
            - `OtherAddressType` string, nullable
            - `Address1` string, nullable
            - `Address2` string, nullable
            - `City` string, nullable
            - `State` string, nullable
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, nullable
            - `Phone1` string, required
            - `Phone1Type` string, nullable
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `BusDevId` integer, nullable
            - `RefContactClassId` integer, nullable
            - `InActive` boolean
            - `ExemptFromDuplicate` boolean
            - `SmsEnrolled` boolean
            - `SmsEnrolledDate` string, date-time, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Birthday` string, date-time, nullable
            - `Anniversary` string, date-time, nullable
            - `Married` boolean
            - `Children` boolean
            - `HobbiesAndInterests` string, nullable
            - `ReasonCodeId` integer, nullable
            - `SpecialInstructionId` integer, nullable
            - `SpecialInstructions` string, nullable
            - `isFavorite` boolean
            - `Account` Account
              - …
            - `SpecialInstruction` Note
              - …
            - `BusDevUser` ApplicationUser
              - …
            - `RefContactClass` RefContactClass
              - …
            - `ContactConTypes` ContactConType[], nullable
              - …
            - `ContactRefContactClasses` ContactRefContactClass[], nullable
              - …
            - `Addresses` Address[], nullable
            - `ReasonCode` ReasonCode
              - …
            - `ContactAddresses` ContactAddress[], nullable
              - …
            - `AccountContacts` AccountContact[], nullable
              - …
        - `BillAccount` Account
          - `AccountId` integer
          - `GpCustomerNumber` string, nullable
          - `CompanyName` string, nullable
          - `FullName` string, nullable
          - `DisplayName` string, nullable
          - `FirstName` string, nullable
          - `LastName` string, nullable
          - `CustClass` string, nullable
          - `DefaultAddressId` integer
          - `Address1` string, nullable
          - `Address2` string, nullable
          - `City` string, nullable
          - `State` string, nullable
          - `County` string, nullable
          - `Country` string, nullable
          - `Zip` string, nullable
          - `Phone1` string, nullable
          - `Phone1Type` string, nullable
          - `Phone2` string, nullable
          - `Phone2Type` string, nullable
          - `Email` string, nullable
          - `InActive` boolean
          - `CreateDate` string, date-time
          - `CreateUser` string, nullable
          - `UpdateDate` string, date-time
          - `UpdateUser` string, nullable
          - `Description` string, nullable
          - `IsCommercial` boolean
          - `ExemptFromDuplicate` boolean
          - `SmsEnrolled` boolean
          - `SmsEnrolledDate` string, date-time, nullable
          - `SpecialInstructionId` integer, nullable
          - `SpecialInstructions` string, nullable
          - `Contacts` Contact[], nullable
            - `ContactId` integer
            - `FullName` string, nullable
            - `FirstName` string, required
            - `LastName` string, required
            - `AccountId` integer, nullable
            - `DefaultAddressType` string, nullable
            - `OtherAddressType` string, nullable
            - `Address1` string, nullable
            - `Address2` string, nullable
            - `City` string, nullable
            - `State` string, nullable
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, nullable
            - `Phone1` string, required
            - `Phone1Type` string, nullable
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `BusDevId` integer, nullable
            - `RefContactClassId` integer, nullable
            - `InActive` boolean
            - `ExemptFromDuplicate` boolean
            - `SmsEnrolled` boolean
            - `SmsEnrolledDate` string, date-time, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Birthday` string, date-time, nullable
            - `Anniversary` string, date-time, nullable
            - `Married` boolean
            - `Children` boolean
            - `HobbiesAndInterests` string, nullable
            - `ReasonCodeId` integer, nullable
            - `SpecialInstructionId` integer, nullable
            - `SpecialInstructions` string, nullable
            - `isFavorite` boolean
            - `Account` Account (recursive)
            - `SpecialInstruction` Note
              - …
            - `BusDevUser` ApplicationUser
              - …
            - `RefContactClass` RefContactClass
              - …
            - `ContactConTypes` ContactConType[], nullable
              - …
            - `ContactRefContactClasses` ContactRefContactClass[], nullable
              - …
            - `Addresses` Address[], nullable
              - …
            - `ReasonCode` ReasonCode
              - …
            - `ContactAddresses` ContactAddress[], nullable
              - …
            - `AccountContacts` AccountContact[], nullable
              - …
          - `Addresses` Address[], nullable
            - `AddressId` integer
            - `AddressType` string, required
            - `OtherAddressType` string, nullable
            - `AccountId` integer, nullable
            - `ContactId` integer, nullable
            - `IsDefault` boolean
            - `InActive` boolean
            - `HasMigratedToV2Address` boolean
            - `ContactPerson` string, nullable: Job Address
            - `Address1` string, required
            - `Address2` string, nullable
            - `City` string, required
            - `State` string, required
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, required
            - `Phone1` string, required
            - `Phone1Type` string, required
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Account` Account (recursive)
            - `Contact` Contact
              - …
          - `AccountAccountTypes` AccountAccountType[], nullable
            - `AccountAccountTypeId` integer
            - `AccountId` integer
            - `AccountTypeId` integer
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Account` Account (recursive)
            - `AccountType` AccountType
              - …
          - `AccountAddresses` AccountAddress[], nullable
            - `AccountAddressId` integer
            - `AccountId` integer: Foreign key to Account
            - `AddressV2Id` integer: Foreign key to AddressV2
            - `AddressTypeId` integer: Foreign key to AddressType lookup
            - `OtherAddressTypeDescription` string, nullable: Free-text description if AddressType = "Other"
            - `IsPrimary` boolean: Marks this as the primary/default address for the account
            - `IsDefaultBilling` boolean: Marks this as the default billing address for the account
            - `IsDefaultJob` boolean: Marks this as the default job address for the account
            - `ContactPerson` string, nullable: Contact person at this address (job-specific)
            - `Phone1` string, nullable: Phone number associated with this specific address
            - `Phone1Type` string, nullable: Phone type (Work, Cell, Fax)
            - `Phone2` string, nullable: Secondary phone number
            - `Phone2Type` string, nullable: Secondary phone type
            - `Email` string, nullable: Email address associated with this specific address
            - `InActive` boolean: Soft-delete flag for the assignment
            - `CreateDate` string, date-time: Audit fields
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Account` Account (recursive)
            - `AddressV2` AddressV2: Version 2 of Address model - contains ONLY address-related fields. Phone, email, and contact person moved to entity-specific link tables or parent entities. Replaces legacy Address table which mixed address data with contact data.
              - …
            - `AddressType` AddressType: Lookup table for address type classifications (Home, Office, Job, Bill-Primary, Bill-Secondary, Other, etc.) Replaces hardcoded address type strings in legacy Address table
              - …
          - `AccountContacts` AccountContact[], nullable
            - `AccountContactId` integer
            - `AccountId` integer: Foreign key to Account
            - `ContactId` integer: Foreign key to Contact
            - `IsPrimary` boolean: Marks this contact as the primary contact for the account
            - `InActive` boolean: Soft-delete flag for the assignment
            - `CreateDate` string, date-time: Audit fields
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Account` Account (recursive)
            - `Contact` Contact
              - …
          - `SpecialInstruction` Note
            - `NoteId` integer
            - `NoteText` string, required
            - `InActive` boolean
            - `CategoryId` integer, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `FollowUpDate` string, date-time, nullable: When set, this note is a follow-up scheduled for the given date.
            - `IsFollowUp` boolean: Convenience flag — a note is a follow-up when FollowUpDate has a value.
            - `NoteFollowUpUsers` NoteFollowUpUser[], nullable: Optional users associated with a follow-up note.
              - …
            - `FollowUpUserIds` integer[], nullable
            - `FollowUpUsers` string[], nullable
            - `FollowUpUsersDisplay` string, nullable
            - `JobId` integer, nullable
            - `ProjectId` integer, nullable
            - `OutlookEventId` string, nullable
            - `SeriesICalUId` string, nullable: When set, note applies to the entire recurring series (shared ICalUId).
            - `AccountId` integer, nullable
            - `ContactId` integer, nullable
            - `AddressV2Id` integer, nullable
            - `ReferringEntityId` integer, nullable
            - `Category` Category
              - …
        - `ReferringAccount` Account
          - `AccountId` integer
          - `GpCustomerNumber` string, nullable
          - `CompanyName` string, nullable
          - `FullName` string, nullable
          - `DisplayName` string, nullable
          - `FirstName` string, nullable
          - `LastName` string, nullable
          - `CustClass` string, nullable
          - `DefaultAddressId` integer
          - `Address1` string, nullable
          - `Address2` string, nullable
          - `City` string, nullable
          - `State` string, nullable
          - `County` string, nullable
          - `Country` string, nullable
          - `Zip` string, nullable
          - `Phone1` string, nullable
          - `Phone1Type` string, nullable
          - `Phone2` string, nullable
          - `Phone2Type` string, nullable
          - `Email` string, nullable
          - `InActive` boolean
          - `CreateDate` string, date-time
          - `CreateUser` string, nullable
          - `UpdateDate` string, date-time
          - `UpdateUser` string, nullable
          - `Description` string, nullable
          - `IsCommercial` boolean
          - `ExemptFromDuplicate` boolean
          - `SmsEnrolled` boolean
          - `SmsEnrolledDate` string, date-time, nullable
          - `SpecialInstructionId` integer, nullable
          - `SpecialInstructions` string, nullable
          - `Contacts` Contact[], nullable
            - `ContactId` integer
            - `FullName` string, nullable
            - `FirstName` string, required
            - `LastName` string, required
            - `AccountId` integer, nullable
            - `DefaultAddressType` string, nullable
            - `OtherAddressType` string, nullable
            - `Address1` string, nullable
            - `Address2` string, nullable
            - `City` string, nullable
            - `State` string, nullable
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, nullable
            - `Phone1` string, required
            - `Phone1Type` string, nullable
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `BusDevId` integer, nullable
            - `RefContactClassId` integer, nullable
            - `InActive` boolean
            - `ExemptFromDuplicate` boolean
            - `SmsEnrolled` boolean
            - `SmsEnrolledDate` string, date-time, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Birthday` string, date-time, nullable
            - `Anniversary` string, date-time, nullable
            - `Married` boolean
            - `Children` boolean
            - `HobbiesAndInterests` string, nullable
            - `ReasonCodeId` integer, nullable
            - `SpecialInstructionId` integer, nullable
            - `SpecialInstructions` string, nullable
            - `isFavorite` boolean
            - `Account` Account (recursive)
            - `SpecialInstruction` Note
              - …
            - `BusDevUser` ApplicationUser
              - …
            - `RefContactClass` RefContactClass
              - …
            - `ContactConTypes` ContactConType[], nullable
              - …
            - `ContactRefContactClasses` ContactRefContactClass[], nullable
              - …
            - `Addresses` Address[], nullable
              - …
            - `ReasonCode` ReasonCode
              - …
            - `ContactAddresses` ContactAddress[], nullable
              - …
            - `AccountContacts` AccountContact[], nullable
              - …
          - `Addresses` Address[], nullable
            - `AddressId` integer
            - `AddressType` string, required
            - `OtherAddressType` string, nullable
            - `AccountId` integer, nullable
            - `ContactId` integer, nullable
            - `IsDefault` boolean
            - `InActive` boolean
            - `HasMigratedToV2Address` boolean
            - `ContactPerson` string, nullable: Job Address
            - `Address1` string, required
            - `Address2` string, nullable
            - `City` string, required
            - `State` string, required
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, required
            - `Phone1` string, required
            - `Phone1Type` string, required
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Account` Account (recursive)
            - `Contact` Contact
              - …
          - `AccountAccountTypes` AccountAccountType[], nullable
            - `AccountAccountTypeId` integer
            - `AccountId` integer
            - `AccountTypeId` integer
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Account` Account (recursive)
            - `AccountType` AccountType
              - …
          - `AccountAddresses` AccountAddress[], nullable
            - `AccountAddressId` integer
            - `AccountId` integer: Foreign key to Account
            - `AddressV2Id` integer: Foreign key to AddressV2
            - `AddressTypeId` integer: Foreign key to AddressType lookup
            - `OtherAddressTypeDescription` string, nullable: Free-text description if AddressType = "Other"
            - `IsPrimary` boolean: Marks this as the primary/default address for the account
            - `IsDefaultBilling` boolean: Marks this as the default billing address for the account
            - `IsDefaultJob` boolean: Marks this as the default job address for the account
            - `ContactPerson` string, nullable: Contact person at this address (job-specific)
            - `Phone1` string, nullable: Phone number associated with this specific address
            - `Phone1Type` string, nullable: Phone type (Work, Cell, Fax)
            - `Phone2` string, nullable: Secondary phone number
            - `Phone2Type` string, nullable: Secondary phone type
            - `Email` string, nullable: Email address associated with this specific address
            - `InActive` boolean: Soft-delete flag for the assignment
            - `CreateDate` string, date-time: Audit fields
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Account` Account (recursive)
            - `AddressV2` AddressV2: Version 2 of Address model - contains ONLY address-related fields. Phone, email, and contact person moved to entity-specific link tables or parent entities. Replaces legacy Address table which mixed address data with contact data.
              - …
            - `AddressType` AddressType: Lookup table for address type classifications (Home, Office, Job, Bill-Primary, Bill-Secondary, Other, etc.) Replaces hardcoded address type strings in legacy Address table
              - …
          - `AccountContacts` AccountContact[], nullable
            - `AccountContactId` integer
            - `AccountId` integer: Foreign key to Account
            - `ContactId` integer: Foreign key to Contact
            - `IsPrimary` boolean: Marks this contact as the primary contact for the account
            - `InActive` boolean: Soft-delete flag for the assignment
            - `CreateDate` string, date-time: Audit fields
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Account` Account (recursive)
            - `Contact` Contact
              - …
          - `SpecialInstruction` Note
            - `NoteId` integer
            - `NoteText` string, required
            - `InActive` boolean
            - `CategoryId` integer, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `FollowUpDate` string, date-time, nullable: When set, this note is a follow-up scheduled for the given date.
            - `IsFollowUp` boolean: Convenience flag — a note is a follow-up when FollowUpDate has a value.
            - `NoteFollowUpUsers` NoteFollowUpUser[], nullable: Optional users associated with a follow-up note.
              - …
            - `FollowUpUserIds` integer[], nullable
            - `FollowUpUsers` string[], nullable
            - `FollowUpUsersDisplay` string, nullable
            - `JobId` integer, nullable
            - `ProjectId` integer, nullable
            - `OutlookEventId` string, nullable
            - `SeriesICalUId` string, nullable: When set, note applies to the entire recurring series (shared ICalUId).
            - `AccountId` integer, nullable
            - `ContactId` integer, nullable
            - `AddressV2Id` integer, nullable
            - `ReferringEntityId` integer, nullable
            - `Category` Category
              - …
        - `BillAddress` Address
          - `AddressId` integer
          - `AddressType` string, required
          - `OtherAddressType` string, nullable
          - `AccountId` integer, nullable
          - `ContactId` integer, nullable
          - `IsDefault` boolean
          - `InActive` boolean
          - `HasMigratedToV2Address` boolean
          - `ContactPerson` string, nullable: Job Address
          - `Address1` string, required
          - `Address2` string, nullable
          - `City` string, required
          - `State` string, required
          - `County` string, nullable
          - `Country` string, nullable
          - `Zip` string, required
          - `Phone1` string, required
          - `Phone1Type` string, required
          - `Phone2` string, nullable
          - `Phone2Type` string, nullable
          - `Email` string, nullable
          - `CreateDate` string, date-time
          - `CreateUser` string, nullable
          - `UpdateDate` string, date-time
          - `UpdateUser` string, nullable
          - `Account` Account
            - `AccountId` integer
            - `GpCustomerNumber` string, nullable
            - `CompanyName` string, nullable
            - `FullName` string, nullable
            - `DisplayName` string, nullable
            - `FirstName` string, nullable
            - `LastName` string, nullable
            - `CustClass` string, nullable
            - `DefaultAddressId` integer
            - `Address1` string, nullable
            - `Address2` string, nullable
            - `City` string, nullable
            - `State` string, nullable
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, nullable
            - `Phone1` string, nullable
            - `Phone1Type` string, nullable
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `InActive` boolean
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Description` string, nullable
            - `IsCommercial` boolean
            - `ExemptFromDuplicate` boolean
            - `SmsEnrolled` boolean
            - `SmsEnrolledDate` string, date-time, nullable
            - `SpecialInstructionId` integer, nullable
            - `SpecialInstructions` string, nullable
            - `Contacts` Contact[], nullable
              - …
            - `Addresses` Address[], nullable
            - `AccountAccountTypes` AccountAccountType[], nullable
              - …
            - `AccountAddresses` AccountAddress[], nullable
              - …
            - `AccountContacts` AccountContact[], nullable
              - …
            - `SpecialInstruction` Note
              - …
          - `Contact` Contact
            - `ContactId` integer
            - `FullName` string, nullable
            - `FirstName` string, required
            - `LastName` string, required
            - `AccountId` integer, nullable
            - `DefaultAddressType` string, nullable
            - `OtherAddressType` string, nullable
            - `Address1` string, nullable
            - `Address2` string, nullable
            - `City` string, nullable
            - `State` string, nullable
            - `County` string, nullable
            - `Country` string, nullable
            - `Zip` string, nullable
            - `Phone1` string, required
            - `Phone1Type` string, nullable
            - `Phone2` string, nullable
            - `Phone2Type` string, nullable
            - `Email` string, nullable
            - `BusDevId` integer, nullable
            - `RefContactClassId` integer, nullable
            - `InActive` boolean
            - `ExemptFromDuplicate` boolean
            - `SmsEnrolled` boolean
            - `SmsEnrolledDate` string, date-time, nullable
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `Birthday` string, date-time, nullable
            - `Anniversary` string, date-time, nullable
            - `Married` boolean
            - `Children` boolean
            - `HobbiesAndInterests` string, nullable
            - `ReasonCodeId` integer, nullable
            - `SpecialInstructionId` integer, nullable
            - `SpecialInstructions` string, nullable
            - `isFavorite` boolean
            - `Account` Account
              - …
            - `SpecialInstruction` Note
              - …
            - `BusDevUser` ApplicationUser
              - …
            - `RefContactClass` RefContactClass
              - …
            - `ContactConTypes` ContactConType[], nullable
              - …
            - `ContactRefContactClasses` ContactRefContactClass[], nullable
              - …
            - `Addresses` Address[], nullable
            - `ReasonCode` ReasonCode
              - …
            - `ContactAddresses` ContactAddress[], nullable
              - …
            - `AccountContacts` AccountContact[], nullable
              - …
        - `JobType` JobType
          - `JobTypeId` integer
          - `JobTypeDesc` string, required
          - `JobTypeCode` string, nullable
          - `InActive` boolean
          - `FeePercentage` number, double
          - `CreditCardFeePercentage` number, double
          - `CreateDate` string, date-time
          - `CreateUser` string, nullable
          - `UpdateDate` string, date-time
          - `UpdateUser` string, nullable
          - `SubJobTypes` SubJobType[], nullable
            - `SubJobTypeId` integer
            - `SubJobTypeDesc` string, required
            - `JobTypeId` integer, required
            - `InActive` boolean
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `JobType` JobType (recursive)
          - `ParentJobTypes` JobTypeDependency[], nullable
            - `JobTypeDependencyId` integer
            - `ParentJobTypeId` integer, required
            - `ChildJobTypeId` integer, required
            - `ChildDefaultJobSubTypeId` integer, required
            - `ParentJobType` JobType (recursive)
            - `ChildJobType` JobType (recursive)
            - `ChildDefaultJobSubType` SubJobType
              - …
          - `ChildJobTypes` JobTypeDependency[], nullable
            - `JobTypeDependencyId` integer
            - `ParentJobTypeId` integer, required
            - `ChildJobTypeId` integer, required
            - `ChildDefaultJobSubTypeId` integer, required
            - `ParentJobType` JobType (recursive)
            - `ChildJobType` JobType (recursive)
            - `ChildDefaultJobSubType` SubJobType
              - …
          - `JobStatuses` JobStatus[], nullable
            - `JobStatusId` integer
            - `JobStatusDesc` string, required
            - `InActive` boolean
            - `Sequence` integer, required
            - `JobTypeId` integer, required
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
            - `UpdateDate` string, date-time
            - `UpdateUser` string, nullable
            - `JobType` JobType (recursive)
          - `JobTypeElementPhases` JobTypeElementPhase[], nullable
            - `JobTypeElementPhaseId` integer
            - `JobTypeId` integer, required
            - `JobElementPhaseId` integer, required
            - `CreateDate` string, date-time
            - `CreateUser` string, nullable
- … truncated; see the full OpenAPI document linked below

## Response `200`

Success

---

[API](https://skmtc.dev/fireserviceusa/apis/fireservice-usa-p2-api.md) - [All operations](https://skmtc.dev/fireserviceusa/apis/fireservice-usa-p2-api/llms.txt) - [OpenAPI document](https://skmtc.dev/fireserviceusa/apis/fireservice-usa-p2-api/revisions/96ea2ea68d87?raw)
