agmission/Development/client/AgMission-GA4-Complete-Reference.csv

56 KiB

1Event CategoryEvent NameEvent DescriptionComponent LocationParameter NameParameter TypeParameter DescriptionAllowed ValuesExample ValueRequired/OptionalBusiness PurposeValidation Rules
2Job Managementjob_createdUser creates a new agricultural jobjob.effects.tsjob_typeStringType of agricultural job being performedspraying, seeding, fertilizing, harvesting, soil_testingsprayingRequiredCategorize jobs for operational insightsMust be from predefined list
3Job Managementjob_createdUser creates a new agricultural jobjob.effects.tsfield_size_acresNumberSize of the field in acresPositive numbers up to 10000150.5RequiredTrack job scale and pricingMust be > 0 and <= 10000
4Job Managementjob_createdUser creates a new agricultural jobjob.effects.tscrop_typeStringType of crop being worked oncorn, soybeans, wheat, cotton, alfalfa, othercornRequiredAnalyze crop-specific patternsRequired for all job events
5Job Managementjob_createdUser creates a new agricultural jobjob.effects.tsclient_idStringUnique identifier for the clientAlphanumeric stringCLIENT_12345RequiredTrack client relationships and revenueMust be valid client ID
6Job Managementjob_createdUser creates a new agricultural jobjob.effects.tspriorityStringJob priority levellow, medium, high, urgenthighRequiredOptimize job schedulingMust be from predefined list
7Job Managementjob_createdUser creates a new agricultural jobjob.effects.tsequipment_typeStringType of equipment useddrone, ground_rig, aerial, manual, tractordroneOptionalTrack equipment utilizationMust be from equipment catalog
8Job Managementjob_createdUser creates a new agricultural jobjob.effects.tsweather_dependencyBooleanWhether job depends on weather conditionstrue or falsetrueOptionalPlan weather-sensitive operationsBoolean validation
9Job Managementjob_createdUser creates a new agricultural jobjob.effects.tsestimated_duration_hoursNumberExpected job duration in hoursPositive numbers4.5OptionalResource planning and schedulingMust be > 0 and <= 24
10Job Managementjob_updatedUser modifies an existing jobjob.effects.tsjob_idStringUnique job identifierAlphanumeric stringJOB_001RequiredTrack individual job lifecycleMust be valid job ID
11Job Managementjob_updatedUser modifies an existing jobjob.effects.tsfields_modifiedArrayList of fields changed in updateArray of strings["priority", "crop_type"]RequiredMonitor update patternsMust be valid field names
12Job Managementjob_updatedUser modifies an existing jobjob.effects.tschange_magnitudeStringMagnitude of the changes mademinor, majorminorOptionalTrack update impactMust be from predefined levels
13Job Managementjob_updatedUser modifies an existing jobjob.effects.tsedit_session_durationNumberTime spent editing in minutesPositive numbers15.5OptionalMonitor user efficiencyMust be > 0
14Job Managementjob_updatedUser modifies an existing jobjob.effects.tssave_methodStringHow the update was savedmanual, auto_savemanualOptionalTrack save behaviorMust be from valid save methods
15Job Managementjob_deletedUser removes a job from systemjob.effects.tsjob_idStringUnique job identifierAlphanumeric stringJOB_001RequiredTrack individual job lifecycleMust be valid job ID
16Job Managementjob_deletedUser removes a job from systemjob.effects.tsjob_typeStringType of agricultural job being performedspraying, seeding, fertilizing, harvesting, soil_testingsprayingRequiredCategorize jobs for operational insightsMust be from predefined list
17Job Managementjob_deletedUser removes a job from systemjob.effects.tsjob_statusStringCurrent status of the jobnew, ready, downloaded, sprayed, invoicednewRequiredTrack job lifecycle statesMust be from valid status list
18Job Managementjob_deletedUser removes a job from systemjob.effects.tsdeletion_reasonStringReason for job deletioncancelled, duplicate, error, user_actionuser_actionOptionalTrack deletion patterns and causesMust be from predefined reasons
19Job Managementjob_deletedUser removes a job from systemjob.effects.tstime_since_creationNumberTime between creation and deletion in hoursNon-negative numbers48.5OptionalMonitor job lifecycle timingMust be >= 0
20Job Managementjob_deletedUser removes a job from systemjob.effects.tsdeletion_methodStringHow job deletion was triggeredbutton_click, bulk_action, api_callbutton_clickOptionalOptimize deletion workflowsMust be from valid methods
21Job Managementjob_assignedJob assigned to pilot or operatorjob.effects.tsjob_idStringUnique job identifierAlphanumeric stringJOB_001RequiredTrack individual job lifecycleMust be valid job ID
22Job Managementjob_assignedJob assigned to pilot or operatorjob.effects.tsassignee_idStringID of person assigned to jobAlphanumeric stringUSER_456RequiredTrack assignment patternsMust be valid user ID
23Job Managementjob_assignedJob assigned to pilot or operatorjob.effects.tsassignee_roleStringRole of assigned personpilot, operator, supervisor, managerpilotRequiredOptimize role assignmentsMust be from predefined roles
24Job Managementjob_assignedJob assigned to pilot or operatorjob.effects.tsassignment_methodStringHow assignment was mademanual, auto, bulkmanualRequiredTrack assignment efficiencyMust be from predefined methods
25Job Managementjob_assignedJob assigned to pilot or operatorjob.effects.tsassignment_lead_time_hoursNumberHours between assignment and scheduled startNon-negative numbers24.0OptionalTrack planning efficiencyMust be >= 0
26Job Managementjob_status_changedJob status transitionsjob-edit.component.tsjob_idStringUnique job identifierAlphanumeric stringJOB_001RequiredTrack individual job lifecycleMust be valid job ID
27Job Managementjob_status_changedJob status transitionsjob-edit.component.tsold_statusStringPrevious status before changenew, ready, downloaded, sprayed, invoicednewRequiredTrack status transition patternsMust be from valid status list
28Job Managementjob_status_changedJob status transitionsjob-edit.component.tsnew_statusStringNew status after changenew, ready, downloaded, sprayed, invoicedsprayedRequiredTrack status transition patternsMust be from valid status list
29Job Managementjob_status_changedJob status transitionsjob-edit.component.tsstatus_change_reasonStringReason for status changeuser_action, system_update, api_call, automationuser_actionRequiredUnderstand status change driversMust be from valid reason types
30Job Managementjob_status_changedJob status transitionsjob-edit.component.tscompletion_timeNumberTime to complete job in hoursPositive numbers4.2OptionalTrack job completion efficiencyMust be > 0 when status changed to completed
31Job Managementjob_status_changedJob status transitionsjob-edit.component.tsefficiency_scoreNumberCalculated efficiency percentageNumber 0-10085.5OptionalMonitor operational efficiencyMust be between 0 and 100
32Job List Operationsjob_list_viewedUser accesses the jobs list interfacejob-list.component.tsview_typeStringType of list view usedtable, grid, map, calendartableRequiredOptimize UI preferencesMust be from available views
33Job List Operationsjob_list_viewedUser accesses the jobs list interfacejob-list.component.tstotal_jobsNumberTotal jobs available in systemNon-negative integer45RequiredMonitor system usageMust be >= 0
34Job List Operationsjob_list_viewedUser accesses the jobs list interfacejob-list.component.tsdisplayed_jobsNumberNumber of jobs shown to userNon-negative integer20RequiredTrack filtering effectivenessMust be >= 0 and <= total_jobs
35Job List Operationsjob_list_viewedUser accesses the jobs list interfacejob-list.component.tsclient_filter_appliedBooleanWhether client filter is activetrue or falsetrueOptionalTrack client-specific viewing patternsBoolean validation
36Job List Operationsjob_list_viewedUser accesses the jobs list interfacejob-list.component.tsreload_intervalNumberAuto-reload interval in minutesNon-negative integer5OptionalTrack user preference for data freshnessMust be >= 0
37Job List Operationsjob_list_filteredUser applies filters to narrow job resultsjob-list.component.tsfilter_typeStringType of filter appliedstatus, date_range, client, crop_type, prioritystatusRequiredImprove filter functionalityMust be valid filter type
38Job List Operationsjob_list_filteredUser applies filters to narrow job resultsjob-list.component.tsresults_beforeNumberResults count before filterNon-negative integer45RequiredMeasure filter effectivenessMust be >= 0
39Job List Operationsjob_list_filteredUser applies filters to narrow job resultsjob-list.component.tsresults_afterNumberResults count after filterNon-negative integer12RequiredMeasure filter effectivenessMust be >= 0 and <= results_before
40Job List Operationsjob_list_filteredUser applies filters to narrow job resultsjob-list.component.tsfilter_valueStringValue of the applied filterStringnewOptionalTrack specific filter usageMust be valid for filter type
41Job List Operationsjob_list_filteredUser applies filters to narrow job resultsjob-list.component.tsdate_filter_typeStringType of date filter appliedtoday, week, month, quarter, custommonthOptionalTrack temporal filtering patternsMust be from valid date types
42Job List Operationsjob_list_filteredUser applies filters to narrow job resultsjob-list.component.tscustom_date_rangeArrayCustom date range selectedArray of dates["2024-01-01", "2024-01-31"]OptionalTrack custom date usageMust be valid date range
43Job List Operationsjob_selectedUser clicks/selects a specific jobjob-list.component.tsjob_idStringUnique job identifierAlphanumeric stringJOB_001RequiredTrack individual job lifecycleMust be valid job ID
44Job List Operationsjob_selectedUser clicks/selects a specific jobjob-list.component.tsselection_methodStringMethod used to select jobrow_click, search_result, link_navigationrow_clickRequiredOptimize selection UXMust be from valid selection methods
45Job List Operationsjob_selectedUser clicks/selects a specific jobjob-list.component.tsposition_in_listNumberPosition of job in list when selectedPositive integer3OptionalTrack selection patternsMust be > 0
46Job List Operationsjob_selectedUser clicks/selects a specific jobjob-list.component.tsjob_typeStringType of agricultural job being performedspraying, seeding, fertilizing, harvesting, soil_testingsprayingOptionalCategorize jobs for operational insightsMust be from predefined list
47Job List Operationsjob_selectedUser clicks/selects a specific jobjob-list.component.tsjob_statusStringCurrent status of the jobnew, ready, downloaded, sprayed, invoicednewOptionalTrack job lifecycle statesMust be from valid status list
48Job List Operationsjob_bulk_actionUser performs action on multiple jobsjob-list.component.tsaction_typeStringType of bulk action performedduplicate, delete, assign, status_change, exportduplicateRequiredTrack bulk operation patternsMust be from valid action types
49Job List Operationsjob_bulk_actionUser performs action on multiple jobsjob-list.component.tsjob_countNumberNumber of jobs affected by bulk actionPositive integer1RequiredMonitor bulk operation scaleMust be > 0
50Job List Operationsjob_bulk_actionUser performs action on multiple jobsjob-list.component.tsjob_idsArrayList of job IDs affected by actionArray of strings["JOB_001"]RequiredTrack specific jobs in bulk operationsMust be valid job IDs
51Job List Operationsjob_bulk_actionUser performs action on multiple jobsjob-list.component.tsexecution_timeNumberTime taken to complete bulk action in secondsPositive numbers2.5OptionalMonitor bulk operation performanceMust be > 0
52Job List Operationsjob_bulk_actionUser performs action on multiple jobsjob-list.component.tssuccess_rateNumberPercentage of successful operations in bulk actionNumber 0-100100OptionalTrack bulk operation reliabilityMust be between 0 and 100
53File Upload Operationsfile_upload_startedUser initiates file upload processupload.component.ts, job-edit.component.tsfile_typeStringType of file being uploadedfield_boundary, prescription_map, application_report, soil_map, shape, geojson, kml, otherfield_boundaryRequiredTrack file usage patternsMust be from supported file types
54File Upload Operationsfile_upload_startedUser initiates file upload processupload.component.ts, job-edit.component.tsfile_size_mbNumberFile size in megabytesPositive numbers2.3RequiredMonitor upload performanceMust be > 0 and <= 100
55File Upload Operationsfile_upload_startedUser initiates file upload processupload.component.ts, job-edit.component.tsrelated_job_idStringJob ID associated with file uploadAlphanumeric stringJOB_001OptionalTrack file-job relationshipsMust be valid job ID when provided
56File Upload Operationsfile_upload_startedUser initiates file upload processupload.component.ts, job-edit.component.tsupload_sourceStringSource of file uploaddrag_drop, file_picker, apidrag_dropOptionalTrack upload method preferencesMust be from valid upload sources
57File Upload Operationsfile_upload_completedFile upload finishes successfullyupload.component.ts, job-edit.component.ts, areas.component.tsfile_typeStringType of file being uploadedfield_boundary, prescription_map, application_report, soil_map, shape, geojson, kml, otherfield_boundaryRequiredTrack file usage patternsMust be from supported file types
58File Upload Operationsfile_upload_completedFile upload finishes successfullyupload.component.ts, job-edit.component.ts, areas.component.tsprocessing_time_secondsNumberTime to process file in secondsPositive numbers15.2RequiredOptimize processing performanceMust be > 0
59File Upload Operationsfile_upload_completedFile upload finishes successfullyupload.component.ts, job-edit.component.ts, areas.component.tsvalidation_statusStringFile validation resultpassed, failed, warningpassedRequiredMonitor file qualityMust be from validation states
60File Upload Operationsfile_upload_completedFile upload finishes successfullyupload.component.ts, job-edit.component.ts, areas.component.tsdata_quality_scoreNumberQuality score of uploaded file dataNumber 0-10087.5OptionalMonitor data quality trendsMust be between 0 and 100
61File Upload Operationsfile_upload_completedFile upload finishes successfullyupload.component.ts, job-edit.component.ts, areas.component.tsautomation_enabledBooleanWhether automated processing was usedtrue or falsetrueOptionalTrack automation usageBoolean validation
62File Upload Operationsfile_upload_failedFile upload encounters errorupload.component.ts, job-edit.component.tsfile_typeStringType of file being uploadedfield_boundary, prescription_map, application_report, soil_map, shape, geojson, kml, otherfield_boundaryRequiredTrack file usage patternsMust be from supported file types
63File Upload Operationsfile_upload_failedFile upload encounters errorupload.component.ts, job-edit.component.tserror_typeStringType of upload errornetwork_error, file_too_large, invalid_format, timeout, server_errorinvalid_formatRequiredImprove error handlingMust be from error catalog
64File Upload Operationsfile_upload_failedFile upload encounters errorupload.component.ts, job-edit.component.tsfile_size_mbNumberFile size in megabytesPositive numbers2.3RequiredMonitor upload performanceMust be > 0 and <= 100
65File Upload Operationsfile_upload_failedFile upload encounters errorupload.component.ts, job-edit.component.tsretry_attemptedBooleanWhether user attempted to retry uploadtrue or falsetrueOptionalMonitor retry patternsBoolean validation
66File Upload Operationsfile_validation_errorFile validation fails with specific errorsupload.component.ts, job-edit.component.tsvalidation_error_typeStringType of file validation errormissing_coordinates, invalid_geometry, unsupported_format, file_corruption, size_limit_exceededmissing_coordinatesRequiredCategorize validation failuresMust be from validation error types
67File Upload Operationsfile_validation_errorFile validation fails with specific errorsupload.component.ts, job-edit.component.tserror_detailsStringDetailed error informationStringInvalid coordinate system detectedRequiredImprove error messagingRequired for validation errors
68File Upload Operationsfile_validation_errorFile validation fails with specific errorsupload.component.ts, job-edit.component.tsuser_actionStringUser action after validation errorretry, cancel, ignore, editretryRequiredTrack user response to errorsMust be from valid actions
69File Management Operationsfile_deletedUser deletes an uploaded filejob-edit.component.tsfile_typeStringType of file being uploadedfield_boundary, prescription_map, application_report, soil_map, shape, geojson, kml, otherfield_boundaryRequiredTrack file usage patternsMust be from supported file types
70File Management Operationsfile_deletedUser deletes an uploaded filejob-edit.component.tsfile_size_mbNumberFile size in megabytesPositive numbers2.3RequiredMonitor upload performanceMust be > 0 and <= 100
71File Management Operationsfile_deletedUser deletes an uploaded filejob-edit.component.tsdeletion_reasonStringReason for file deletionuser_action, cleanup, replacement, error_correctionuser_actionRequiredTrack file management patternsMust be from predefined reasons
72File Management Operationsfile_deletedUser deletes an uploaded filejob-edit.component.tsconfirmation_requiredBooleanWhether deletion required user confirmationtrue or falsetrueRequiredTrack UX patterns for file operationsBoolean validation
73File Management Operationsfile_deletedUser deletes an uploaded filejob-edit.component.tsrelated_job_idStringJob ID associated with file uploadAlphanumeric stringJOB_001OptionalTrack file-job relationshipsMust be valid job ID when provided
74File Management Operationsfile_deletedUser deletes an uploaded filejob-edit.component.tsfile_age_daysNumberAge of file in days when deletedNon-negative integer7OptionalMonitor file lifecycle patternsMust be >= 0
75File Management Operationsfile_downloadedUser downloads a filejob-edit.component.tsfile_typeStringType of file being uploadedfield_boundary, prescription_map, application_report, soil_map, shape, geojson, kml, otherfield_boundaryRequiredTrack file usage patternsMust be from supported file types
76File Management Operationsfile_downloadedUser downloads a filejob-edit.component.tsfile_size_mbNumberFile size in megabytesPositive numbers2.3RequiredMonitor upload performanceMust be > 0 and <= 100
77File Management Operationsfile_downloadedUser downloads a filejob-edit.component.tsdownload_methodStringMethod used to download filedirect_link, button_click, bulk_exportbutton_clickRequiredOptimize download UXMust be from valid download methods
78File Management Operationsfile_downloadedUser downloads a filejob-edit.component.tsdownload_sourceStringSource location of download actionjob_edit, file_manager, report_exportjob_editRequiredTrack download contextMust be from valid source locations
79File Management Operationsfile_downloadedUser downloads a filejob-edit.component.tsrelated_job_idStringJob ID associated with file uploadAlphanumeric stringJOB_001OptionalTrack file-job relationshipsMust be valid job ID when provided
80File Management Operationsfile_downloadedUser downloads a filejob-edit.component.tsfile_formatStringFormat of downloaded fileoriginal, convertedoriginalOptionalTrack format preferencesMust be valid format type
81Library Upload Operationslibrary_upload_completedAreas/fields uploaded to library successfullyareas.component.ts, track.component.tsupload_typeStringType of library uploadfield_areas, tracked_areasfield_areasRequiredTrack library content additionsMust be from valid upload types
82Library Upload Operationslibrary_upload_completedAreas/fields uploaded to library successfullyareas.component.ts, track.component.tsfile_countNumberNumber of files uploadedPositive integer3RequiredMonitor upload volumeMust be > 0
83Library Upload Operationslibrary_upload_completedAreas/fields uploaded to library successfullyareas.component.ts, track.component.tstotal_areas_uploadedNumberTotal number of areas added to libraryNon-negative integer12RequiredTrack library growthMust be >= 0
84Library Upload Operationslibrary_upload_completedAreas/fields uploaded to library successfullyareas.component.ts, track.component.tsduplicate_areas_foundNumberNumber of duplicate areas detectedNon-negative integer2OptionalMonitor data qualityMust be >= 0
85Library Upload Operationslibrary_upload_completedAreas/fields uploaded to library successfullyareas.component.ts, track.component.tsfailed_filesNumberNumber of files that failed to processNon-negative integer0OptionalTrack processing reliabilityMust be >= 0
86Library Upload Operationslibrary_upload_completedAreas/fields uploaded to library successfullyareas.component.ts, track.component.tsprocessing_methodStringMethod used for processingautomatic, manual_reviewautomaticOptionalTrack processing approachesMust be from valid processing methods
87E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)subscription_typeStringType of subscription purchasedAgMission package names (e.g. AgMission Essentials 1-5 or AgMission Enterprise 1-5)AgMission Essentials 3RequiredTrack subscription tier adoption and revenueMust be valid SUB_NAME value from common.ts
88E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)subscription_durationStringDuration of subscriptionmonthly, quarterly, annualmonthlyRequiredMonitor subscription length preferencesMust be from valid duration options
89E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)subscription_priceNumberPrice of subscription in USDPositive numbers99.99RequiredTrack revenue per subscriptionMust be > 0
90E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)previous_subscription_typeStringPrevious subscription type before changeAgMission package names or noneAgMission Essentials 1OptionalTrack subscription transitionsMust be valid SUB_NAME value or none
91E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)payment_methodStringMethod used for paymentcredit_card, bank_transfer, paypal, invoicecredit_cardRequiredOptimize payment optionsMust be from supported payment methods
92E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)billing_frequencyStringHow often billing occursmonthly, quarterly, annualmonthlyRequiredTrack billing preferencesMust match subscription duration
93E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)promo_codeStringPromotional code usedAlphanumeric stringSAVE20OptionalTrack promotion effectivenessOptional promotional code
94E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)discount_amountNumberDiscount applied in USDNon-negative numbers19.99OptionalMonitor discount impactMust be >= 0
95E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)subscription_start_dateStringStart date of subscriptionISO date string2024-01-15RequiredTrack subscription lifecycleMust be valid ISO date
96E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)auto_renewalBooleanWhether subscription auto-renewstrue or falsetrueRequiredMonitor auto-renewal adoptionBoolean validation
97E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)upgrade_fromStringPrevious subscription tier when upgradingAgMission package namesAgMission Essentials 1OptionalTrack upgrade patternsRequired when transaction is an upgrade
98E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)upgrade_toStringNew subscription tier when upgradingAgMission package namesAgMission Essentials 3OptionalTrack upgrade patternsRequired when transaction is an upgrade
99E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)trial_conversionBooleanWhether purchase is converting from trialtrue or falsetrueRequiredMonitor trial conversion rateBoolean validation
100E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)subscription_valueNumberAnnual contract value in USDPositive numbers1199.88RequiredTrack customer lifetime valueMust be > 0
101E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)user_tenure_daysNumberDays since user first registeredNon-negative integer45RequiredAnalyze subscription timing patternsMust be >= 0
102E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)service_typeStringService category of subscriptionessential, enterprise, addonessentialOptionalCategorize subscription types by service levelMust be from SERVICE_TYPE enum
103E-commercesubscription_purchasedUser purchases or upgrades subscriptionsubscription.effects.ts (updateSubscription$, checkoutTrial$)is_trialBooleanWhether this is a trial subscriptiontrue or falsefalseOptionalTrack trial vs paid subscriptionsBoolean validation
104Performanceslow_page_loadPage loads slower than thresholdapp.component.tspage_urlStringURL of the page with slow loadString/dashboard/jobsRequiredIdentify performance bottlenecksMust be valid URL path
105Performanceslow_page_loadPage loads slower than thresholdapp.component.tsload_timeNumberPage load time in secondsPositive numbers8.5RequiredMonitor page performanceMust be > 0
106Performanceslow_page_loadPage loads slower than thresholdapp.component.tsdevice_typeStringType of device experiencing slow loaddesktop, mobile, tabletdesktopOptionalOptimize for different devicesMust be from device categories
107Performanceslow_page_loadPage loads slower than thresholdapp.component.tsconnection_typeStringUser's connection typewifi, cellular, ethernet, unknownwifiOptionalUnderstand connection impactMust be from connection types
108Performanceapi_response_slowAPI calls exceed performance thresholdglobal-error.interceptor.tsapi_endpointStringAPI endpoint with slow responseString/api/v1/jobsRequiredIdentify slow API endpointsMust be valid API path
109Performanceapi_response_slowAPI calls exceed performance thresholdglobal-error.interceptor.tsresponse_timeNumberAPI response time in millisecondsPositive numbers3500RequiredMonitor API performanceMust be > 0
110Performanceapi_response_slowAPI calls exceed performance thresholdglobal-error.interceptor.tsrequest_sizeNumberSize of API request in bytesNon-negative integer1024OptionalAnalyze request impact on performanceMust be >= 0
111Performanceapi_response_slowAPI calls exceed performance thresholdglobal-error.interceptor.tsresponse_sizeNumberSize of API response in bytesNon-negative integer5120OptionalAnalyze response impact on performanceMust be >= 0
112Performanceapi_response_slowAPI calls exceed performance thresholdglobal-error.interceptor.tscache_hitBooleanWhether response was served from cachetrue or falsefalseOptionalMonitor caching effectivenessBoolean validation
113Performanceapi_response_slowAPI calls exceed performance thresholdglobal-error.interceptor.tshttp_statusNumberHTTP status code of responseValid HTTP status codes200OptionalTrack response success patternsMust be valid HTTP status code
114Error Trackinghttp_errorHTTP request errors automatically tracked by interceptorglobal-error.interceptor.tserror_typeStringType of HTTP error that occurrednetwork_error, server_error, client_error, timeout, unknown_errorserver_errorRequiredCategorize HTTP errors for debugging and monitoringMust be from predefined error types
115Error Trackinghttp_errorHTTP request errors automatically tracked by interceptorglobal-error.interceptor.tshttp_status_codeNumberHTTP status code returned by serverInteger 0-599500RequiredTrack specific HTTP error codes for debuggingMust be valid HTTP status code (0-599)
116Error Trackinghttp_errorHTTP request errors automatically tracked by interceptorglobal-error.interceptor.tsrequest_methodStringHTTP method used for the requestGET, POST, PUT, DELETE, PATCH, HEAD, OPTIONSGETRequiredTrack which HTTP methods encounter errorsMust be valid HTTP method
117Error Trackinghttp_errorHTTP request errors automatically tracked by interceptorglobal-error.interceptor.tsrequest_urlStringFull URL of the failed requestValid URL stringhttps://api.agmission.com/api/jobsRequiredTrack specific endpoints experiencing errorsMust be valid URL format
118Error Trackinghttp_errorHTTP request errors automatically tracked by interceptorglobal-error.interceptor.tsrequest_endpointStringAPI endpoint that failedStringjobsRequiredTrack which API endpoints have the most errorsMust be valid endpoint identifier
119Error Trackinghttp_errorHTTP request errors automatically tracked by interceptorglobal-error.interceptor.tsresponse_time_msNumberTime taken for the request to fail in millisecondsNon-negative integer5000OptionalMonitor request timing patterns for failed requestsMust be >= 0
120Error Trackinghttp_errorHTTP request errors automatically tracked by interceptorglobal-error.interceptor.tsaffected_featureStringApplication feature affected by the errorjob_management, billing, reporting, file_management, user_management, authentication, customer_management, equipment_management, unknownjob_managementOptionalTrack which features are most impacted by HTTP errorsMust be from predefined feature list
121User AuthenticationloginUser logs into AgMission systemauth.service.tsmethodStringAuthentication method usedemail, google, microsoft, ssoemailRequiredTrack authentication preferences and securityMust be from supported authentication methods
122User AuthenticationloginUser logs into AgMission systemauth.service.tsuser_roleStringRole of the user performing the actionadmin, applicator, office_admin, client, officer, pilot, inspector, aircraftapplicatorRequiredSegment analytics by user type and permissionsMust be from predefined role list
123User AuthenticationloginUser logs into AgMission systemauth.service.tslast_login_days_agoNumberDays since user's last loginNon-negative numbers7OptionalTrack user return patternsMust be >= 0
124User AuthenticationlogoutUser logs out of systemauth.service.tssession_duration_minutesNumberDuration of user session in minutesPositive integers45RequiredMonitor user engagement and session patternsMust be > 0
125User AuthenticationlogoutUser logs out of systemauth.service.tsuser_roleStringRole of the user performing the actionadmin, applicator, office_admin, client, officer, pilot, inspector, aircraftapplicatorRequiredSegment analytics by user type and permissionsMust be from predefined role list
126User AuthenticationlogoutUser logs out of systemauth.service.tslogout_methodStringHow user logged outmanual, timeout, forcedmanualOptionalUnderstand logout patterns and session managementMust be from predefined logout types
127User AuthenticationsignupUser begins signup processsignup-form.component.ts, signup-verify.component.tssignup_methodStringMethod used for account signupemail, google, microsoft, invitationemailRequiredTrack signup channel effectivenessMust be from supported signup methods
128User AuthenticationsignupUser begins signup processsignup-form.component.ts, signup-verify.component.tsuser_typeStringType of user signing upclient, applicator, admin, office_adminapplicatorRequiredSegment new user acquisitionMust be from predefined user types
129User AuthenticationsignupUser begins signup processsignup-form.component.ts, signup-verify.component.tssourceStringSource of signup trafficlanding_page, referral, advertisement, directlanding_pageOptionalTrack marketing channel effectivenessMust be from valid traffic sources
130User AuthenticationsignupUser begins signup processsignup-form.component.ts, signup-verify.component.tscompany_nameStringName of company during signupStringAgriCorp IncOptionalIdentify business customersRequired for business signups
131User Authenticationsignup_completedUser completes signup processsignup-form.component.tssignup_duration_minutesNumberTime taken to complete signup in minutesPositive numbers15.5RequiredMonitor signup flow efficiencyMust be > 0
132User Authenticationsignup_completedUser completes signup processsignup-form.component.tssignup_methodStringMethod used for account signupemail, google, microsoft, invitationemailRequiredTrack signup channel effectivenessMust be from supported signup methods
133User Authenticationsignup_completedUser completes signup processsignup-form.component.tsuser_typeStringType of user signing upclient, applicator, admin, office_adminapplicatorRequiredSegment new user acquisitionMust be from predefined user types
134User Authenticationsignup_completedUser completes signup processsignup-form.component.tsverification_requiredBooleanWhether email verification was requiredtrue or falsetrueRequiredTrack verification requirementsBoolean validation
135User Authenticationsignup_completedUser completes signup processsignup-form.component.tsprofile_completedBooleanWhether user completed full profile setuptrue or falsefalseOptionalMonitor onboarding completionBoolean validation
136User Authenticationpassword_reset_requestedUser requests password resetauth.service.tsrequest_methodStringHow password reset was requestedforgot_password_page, login_page, profile_pageforgot_password_pageRequiredTrack reset request patternsMust be from valid request sources
137User Authenticationpassword_reset_requestedUser requests password resetauth.service.tsuser_existsBooleanWhether user account exists for reset requesttrue or falsetrueRequiredMonitor reset request validityBoolean validation
138User Authenticationpassword_reset_requestedUser requests password resetauth.service.tsemail_address_hashStringHashed email address for privacyStringabc123def456OptionalTrack verification requests while maintaining privacyMust be valid hash when provided
139User Authenticationpassword_reset_completedPassword reset process completedauth.service.ts, app.password-reset.component.tssuccessBooleanWhether password reset was successfultrue or falsetrueRequiredTrack reset success ratesBoolean validation
140User Authenticationpassword_reset_completedPassword reset process completedauth.service.ts, app.password-reset.component.tsreset_token_age_minutesNumberAge of reset token when used in minutesNon-negative numbers5RequiredMonitor token validity and timingMust be >= 0
141User Authenticationpassword_reset_completedPassword reset process completedauth.service.ts, app.password-reset.component.tsfailure_reasonStringReason for password reset failureexpired_token, invalid_token, weak_password, otherexpired_tokenOptionalCategorize reset failures for improvementMust be from predefined failure reasons
142User Authenticationemail_verification_requestedUser requests email verificationsignup-verify.component.tsrequest_methodStringHow email verification was requestedsignup_form, verification_page, resend_requestverification_pageRequiredTrack verification request patternsMust be from valid request sources
143User Authenticationemail_verification_requestedUser requests email verificationsignup-verify.component.tsuser_existsBooleanWhether user account exists for reset requesttrue or falsetrueRequiredMonitor reset request validityBoolean validation
144User Authenticationemail_verification_requestedUser requests email verificationsignup-verify.component.tsemail_address_hashStringHashed email address for privacyStringabc123def456OptionalTrack verification requests while maintaining privacyMust be valid hash when provided
145User Authenticationemail_verification_completedEmail verification process completedsignup-verify.component.tssuccessBooleanWhether password reset was successfultrue or falsetrueRequiredTrack reset success ratesBoolean validation
146User Authenticationemail_verification_completedEmail verification process completedsignup-verify.component.tsverification_token_age_minutesNumberAge of verification token when used in minutesNon-negative numbers30RequiredMonitor verification token validity and timingMust be >= 0
147User Authenticationemail_verification_completedEmail verification process completedsignup-verify.component.tsfailure_reasonStringReason for password reset failureexpired_token, invalid_token, weak_password, otherexpired_tokenOptionalCategorize reset failures for improvementMust be from predefined failure reasons
148Invoice Managementinvoice_createdUser creates a new invoiceinvoice-edit.component.tsinvoice_idStringUnique identifier for invoiceAlphanumeric stringINV_001RequiredTrack individual invoice lifecycleMust be valid invoice ID
149Invoice Managementinvoice_createdUser creates a new invoiceinvoice-edit.component.tstotal_amountNumberTotal invoice amountPositive numbers2500.00RequiredTrack revenue and financial metricsMust be > 0
150Invoice Managementinvoice_createdUser creates a new invoiceinvoice-edit.component.tscurrencyStringCurrency code for invoice amountUSD, CAD, EURUSDRequiredTrack multi-currency operationsMust be valid ISO currency code
151Invoice Managementinvoice_createdUser creates a new invoiceinvoice-edit.component.tscreation_methodStringMethod used to create invoicemanual, auto_generated, template, recurringmanualRequiredTrack invoice creation patternsMust be from predefined methods
152Invoice Managementinvoice_createdUser creates a new invoiceinvoice-edit.component.tsdue_date_daysNumberDays until invoice due dateInteger30RequiredTrack payment terms and cash flowMust be >= 0
153Invoice Managementinvoice_createdUser creates a new invoiceinvoice-edit.component.tspayment_termsStringPayment terms for invoiceStringnet_30OptionalAnalyze payment term preferencesFree text or predefined terms
154Invoice Managementinvoice_updatedUser modifies an existing invoiceinvoice-edit.component.tsinvoice_idStringUnique identifier for invoiceAlphanumeric stringINV_001RequiredTrack individual invoice lifecycleMust be valid invoice ID
155Invoice Managementinvoice_updatedUser modifies an existing invoiceinvoice-edit.component.tsfields_modifiedArrayList of fields changed in invoice updateArray of strings["amount", "due_date"]RequiredMonitor invoice modification patternsMust be valid field names
156Invoice Managementinvoice_updatedUser modifies an existing invoiceinvoice-edit.component.tsmodification_typeStringPrimary type of modification madeamount, due_date, jobs, customer, payment_termsamountRequiredCategorize modification patternsMust be from predefined types
157Invoice Managementinvoice_updatedUser modifies an existing invoiceinvoice-edit.component.tsamount_changeNumberChange in invoice amountNumber (can be negative)-150.00OptionalTrack invoice adjustmentsCan be positive or negative
158Invoice Managementinvoice_updatedUser modifies an existing invoiceinvoice-edit.component.tsprevious_statusStringPrevious invoice status before updatenew, draft, open, paid, void, uncollectibledraftOptionalTrack status progressionMust be from valid status list
159Invoice Managementinvoice_updatedUser modifies an existing invoiceinvoice-edit.component.tscurrent_statusStringCurrent invoice status after updatenew, draft, open, paid, void, uncollectibleopenOptionalTrack status progressionMust be from valid status list
160Invoice Managementinvoice_updatedUser modifies an existing invoiceinvoice-edit.component.tsedit_session_durationNumberTime spent editing invoice in minutesPositive numbers15.5OptionalMonitor user efficiencyMust be > 0
161Invoice Managementinvoice_deletedUser removes an invoice from systeminvoice-edit.component.tsinvoice_idStringUnique identifier for invoiceAlphanumeric stringINV_001RequiredTrack individual invoice lifecycleMust be valid invoice ID
162Invoice Managementinvoice_deletedUser removes an invoice from systeminvoice-edit.component.tsinvoice_statusStringCurrent status of invoicenew, draft, open, paid, void, uncollectiblepaidRequiredTrack invoice lifecycle statesMust be from valid status list
163Invoice Managementinvoice_deletedUser removes an invoice from systeminvoice-edit.component.tstotal_amountNumberTotal invoice amountPositive numbers2500.00RequiredTrack revenue and financial metricsMust be > 0
164Invoice Managementinvoice_deletedUser removes an invoice from systeminvoice-edit.component.tsdeletion_reasonStringReason for invoice deletioncancelled, duplicate, error, customer_requestcancelledRequiredTrack deletion patterns and causesMust be from predefined reasons
165Invoice Managementinvoice_deletedUser removes an invoice from systeminvoice-edit.component.tsdays_since_creationNumberDays between creation and deletionNon-negative integer7RequiredMonitor invoice lifecycle timingMust be >= 0
166Invoice Managementinvoice_deletedUser removes an invoice from systeminvoice-edit.component.tshad_paymentsBooleanWhether invoice had any payments before deletiontrue or falsefalseRequiredTrack payment impact on deletionsBoolean validation
167Invoice Managementinvoice_status_changedInvoice status transitionsinvoice-detail.component.tsinvoice_idStringUnique identifier for invoiceAlphanumeric stringINV_001RequiredTrack individual invoice lifecycleMust be valid invoice ID
168Invoice Managementinvoice_status_changedInvoice status transitionsinvoice-detail.component.tsold_statusStringPrevious invoice statusnew, draft, open, paid, void, uncollectibledraftRequiredTrack status transitionsMust be from valid status list
169Invoice Managementinvoice_status_changedInvoice status transitionsinvoice-detail.component.tsnew_statusStringNew invoice statusnew, draft, open, paid, void, uncollectibleopenRequiredTrack status transitionsMust be from valid status list
170Invoice Managementinvoice_status_changedInvoice status transitionsinvoice-detail.component.tsstatus_change_reasonStringReason for status changeuser_action, payment_received, due_date_passed, automateduser_actionRequiredUnderstand status change driversMust be from valid reason types
171Invoice Managementinvoice_status_changedInvoice status transitionsinvoice-detail.component.tstotal_amountNumberTotal invoice amountPositive numbers2500.00RequiredTrack revenue and financial metricsMust be > 0
172Invoice Managementinvoice_status_changedInvoice status transitionsinvoice-detail.component.tsdays_in_previous_statusNumberDays spent in previous statusNon-negative integer5OptionalTrack status duration patternsMust be >= 0
173Invoice Managementinvoice_payment_loggedPayment recorded against invoiceinvoice-detail.component.ts, invoice-edit.component.tsinvoice_idStringUnique identifier for invoiceAlphanumeric stringINV_001RequiredTrack individual invoice lifecycleMust be valid invoice ID
174Invoice Managementinvoice_payment_loggedPayment recorded against invoiceinvoice-detail.component.ts, invoice-edit.component.tspayment_amountNumberAmount of payment loggedPositive numbers2500.00RequiredTrack payment patternsMust be > 0
175Invoice Managementinvoice_payment_loggedPayment recorded against invoiceinvoice-detail.component.ts, invoice-edit.component.tspayment_methodStringMethod used for paymentcash, check, credit_card, bank_transfer, othercheckRequiredAnalyze payment preferencesMust be from valid payment methods
176Invoice Managementinvoice_payment_loggedPayment recorded against invoiceinvoice-detail.component.ts, invoice-edit.component.tspayment_dateStringDate payment was receivedISO date string2024-01-15RequiredTrack payment timingMust be valid date format
177Invoice Managementinvoice_payment_loggedPayment recorded against invoiceinvoice-detail.component.ts, invoice-edit.component.tsremaining_balanceNumberInvoice balance after paymentNon-negative numbers0.00RequiredMonitor collection completionMust be >= 0
178Invoice Managementinvoice_payment_loggedPayment recorded against invoiceinvoice-detail.component.ts, invoice-edit.component.tsdays_to_paymentNumberDays from invoice creation to paymentNon-negative integer15RequiredAnalyze collection efficiencyMust be >= 0
179Invoice Managementinvoice_payment_loggedPayment recorded against invoiceinvoice-detail.component.ts, invoice-edit.component.tspayment_referenceStringReference number for paymentStringCHK_001OptionalTrack payment reconciliationOptional reference identifier
180Invoice List Operationsinvoice_list_viewedUser accesses the invoices list interfaceinvoices-list.component.tsview_typeStringType of list view usedtable, grid, map, calendartableRequiredOptimize UI preferencesMust be from available views
181Invoice List Operationsinvoice_list_viewedUser accesses the invoices list interfaceinvoices-list.component.tstotal_invoicesNumberTotal number of invoices in systemNon-negative integer120RequiredMonitor system usage and scaleMust be >= 0
182Invoice List Operationsinvoice_list_viewedUser accesses the invoices list interfaceinvoices-list.component.tsdisplayed_invoicesNumberNumber of invoices shown to userNon-negative integer25RequiredTrack pagination and filteringMust be >= 0 and <= total_invoices
183Invoice List Operationsinvoice_list_viewedUser accesses the invoices list interfaceinvoices-list.component.tsdate_range_appliedBooleanWhether date range filter is activetrue or falsetrueOptionalTrack temporal filtering usageBoolean validation
184Invoice List Operationsinvoice_list_viewedUser accesses the invoices list interfaceinvoices-list.component.tsstatus_filter_appliedBooleanWhether status filter is activetrue or falsefalseOptionalTrack status filtering usageBoolean validation
185Invoice List Operationsinvoice_list_filteredUser applies filters to narrow invoice resultsinvoices-list.component.tsfilter_typeStringType of filter applied to invoice liststatus, date_range, client, amount_range, overduestatusRequiredImprove filter functionalityMust be valid filter type
186Invoice List Operationsinvoice_list_filteredUser applies filters to narrow invoice resultsinvoices-list.component.tsfilter_valueStringValue of the applied filterStringnewRequiredTrack specific filter usageMust be valid for filter type
187Invoice List Operationsinvoice_list_filteredUser applies filters to narrow invoice resultsinvoices-list.component.tsresults_beforeNumberResults count before filterNon-negative integer45RequiredMeasure filter effectivenessMust be >= 0
188Invoice List Operationsinvoice_list_filteredUser applies filters to narrow invoice resultsinvoices-list.component.tsresults_afterNumberResults count after filterNon-negative integer12RequiredMeasure filter effectivenessMust be >= 0 and <= results_before
189Invoice List Operationsinvoice_list_filteredUser applies filters to narrow invoice resultsinvoices-list.component.tsmultiple_filters_activeBooleanWhether multiple filters are applied simultaneouslytrue or falsetrueOptionalTrack complex filtering patternsBoolean validation
190Invoice List Operationsinvoice_selectedUser clicks/selects a specific invoiceinvoices-list.component.tsinvoice_idStringUnique identifier for invoiceAlphanumeric stringINV_001RequiredTrack individual invoice lifecycleMust be valid invoice ID
191Invoice List Operationsinvoice_selectedUser clicks/selects a specific invoiceinvoices-list.component.tsselection_methodStringMethod used to select invoicerow_click, search_result, link_navigation, edit_button, view_buttonedit_buttonRequiredOptimize selection UXMust be from valid selection methods
192Invoice List Operationsinvoice_selectedUser clicks/selects a specific invoiceinvoices-list.component.tsinvoice_statusStringCurrent status of invoicenew, draft, open, paid, void, uncollectiblepaidRequiredTrack invoice lifecycle statesMust be from valid status list
193Invoice List Operationsinvoice_selectedUser clicks/selects a specific invoiceinvoices-list.component.tsinvoice_amountNumberAmount of selected/viewed invoicePositive numbers2500.00RequiredTrack amount-based patternsMust be > 0
194Invoice List Operationsinvoice_selectedUser clicks/selects a specific invoiceinvoices-list.component.tsposition_in_listNumberPosition of invoice in list when selectedPositive integer3OptionalTrack selection patternsMust be > 0
195Invoice List Operationsinvoice_bulk_actionUser performs action on multiple invoicesinvoices-list.component.tsaction_typeStringType of bulk action performeddelete, mark_sent, mark_paid, export, printexportRequiredTrack bulk operation patternsMust be from valid action types
196Invoice List Operationsinvoice_bulk_actionUser performs action on multiple invoicesinvoices-list.component.tsinvoice_countNumberNumber of invoices affected by bulk actionPositive integer5RequiredMonitor bulk operation scaleMust be > 0
197Invoice List Operationsinvoice_bulk_actionUser performs action on multiple invoicesinvoices-list.component.tsinvoice_idsArrayList of invoice IDs affected by actionArray of strings["INV_001", "INV_002"]RequiredTrack specific invoices in bulk operationsMust be valid invoice IDs
198Invoice List Operationsinvoice_bulk_actionUser performs action on multiple invoicesinvoices-list.component.tstotal_amount_affectedNumberTotal amount of invoices affected by bulk actionPositive numbers12500.00RequiredTrack financial impact of bulk operationsMust be > 0
199Invoice List Operationsinvoice_bulk_actionUser performs action on multiple invoicesinvoices-list.component.tsexecution_timeNumberTime taken to complete bulk action in secondsPositive numbers2.5OptionalMonitor bulk operation performanceMust be > 0
200Invoice List Operationsinvoice_bulk_actionUser performs action on multiple invoicesinvoices-list.component.tssuccess_rateNumberPercentage of successful operations in bulk actionNumber 0-100100OptionalTrack bulk operation reliabilityMust be between 0 and 100
201Invoice Detail Operationsinvoice_viewedUser opens and views invoice detailsinvoice-detail.component.tsinvoice_idStringUnique identifier for invoiceAlphanumeric stringINV_001RequiredTrack individual invoice lifecycleMust be valid invoice ID
202Invoice Detail Operationsinvoice_viewedUser opens and views invoice detailsinvoice-detail.component.tsinvoice_statusStringCurrent status of invoicenew, draft, open, paid, void, uncollectiblepaidRequiredTrack invoice lifecycle statesMust be from valid status list
203Invoice Detail Operationsinvoice_viewedUser opens and views invoice detailsinvoice-detail.component.tsinvoice_amountNumberAmount of selected/viewed invoicePositive numbers2500.00RequiredTrack amount-based patternsMust be > 0
204Invoice Detail Operationsinvoice_viewedUser opens and views invoice detailsinvoice-detail.component.tsview_sourceStringSource of invoice view navigationlist, direct_link, search, navigationlistRequiredTrack navigation patternsMust be from valid view sources
205Invoice Detail Operationsinvoice_exportedUser exports/prints invoiceinvoice-detail.component.tsinvoice_idStringUnique identifier for invoiceAlphanumeric stringINV_001RequiredTrack individual invoice lifecycleMust be valid invoice ID
206Invoice Detail Operationsinvoice_exportedUser exports/prints invoiceinvoice-detail.component.tsexport_formatStringFormat used for invoice exportpdf, excel, csv, print, iifcsvRequiredAnalyze export format preferencesMust be from supported formats
207Invoice Detail Operationsinvoice_exportedUser exports/prints invoiceinvoice-detail.component.tsinvoice_amountNumberAmount of selected/viewed invoicePositive numbers2500.00RequiredTrack amount-based patternsMust be > 0
208Invoice Detail Operationsinvoice_exportedUser exports/prints invoiceinvoice-detail.component.tsexport_methodStringMethod of export operationsingle, bulksingleRequiredTrack export operation patternsMust be from valid export methods
209Invoice Detail Operationsinvoice_exportedUser exports/prints invoiceinvoice-detail.component.tsincludes_job_detailsBooleanWhether export includes detailed job informationtrue or falsetrueRequiredTrack export content preferencesBoolean validation
210Invoice Detail Operationsinvoice_exportedUser exports/prints invoiceinvoice-detail.component.tsfile_size_kbNumberSize of exported file in kilobytesPositive numbers150.5OptionalMonitor export performanceMust be > 0
211Invoice Settings Operationscustomer_invoice_settings_updatedCustomer invoice settings modifiedcustomer-settings.component.tsclient_idStringUnique identifier for the clientAlphanumeric stringCLIENT_12345RequiredTrack client relationships and revenueMust be valid client ID
212Invoice Settings Operationscustomer_invoice_settings_updatedCustomer invoice settings modifiedcustomer-settings.component.tssettings_modifiedArrayList of customer settings changedArray of strings["payment_terms", "automation"]RequiredMonitor settings usage patternsMust be valid setting names
213Invoice Settings Operationscustomer_invoice_settings_updatedCustomer invoice settings modifiedcustomer-settings.component.tsautomation_enabledBooleanWhether automation was enabled in settingstrue or falsetrueOptionalTrack automation adoptionBoolean validation
214Invoice Settings Operationscustomer_invoice_settings_updatedCustomer invoice settings modifiedcustomer-settings.component.tspayment_terms_changedBooleanWhether payment terms were modifiedtrue or falsefalseOptionalTrack payment term adjustmentsBoolean validation
215Invoice Settings Operationscustomer_invoice_settings_updatedCustomer invoice settings modifiedcustomer-settings.component.tsbilling_preferences_updatedBooleanWhether billing preferences were changedtrue or falsetrueOptionalTrack billing customizationBoolean validation
216Invoice Settings Operationsinvoice_costing_item_managedCosting items created/updated/deletedcosting-item.component.tsitem_typeStringType of costing itemservice, material, equipment, laborserviceRequiredCategorize costing structuresMust be from predefined types
217Invoice Settings Operationsinvoice_costing_item_managedCosting items created/updated/deletedcosting-item.component.tsunit_typeStringUnit basis for costingper_acre, per_hour, flat_rate, per_unitper_acreRequiredTrack pricing modelsMust be from valid unit types
218Invoice Settings Operationsinvoice_costing_item_managedCosting items created/updated/deletedcosting-item.component.tsbase_rateNumberBase rate for costing itemPositive numbers25.00RequiredMonitor pricing strategiesMust be > 0
219Invoice Settings Operationsinvoice_costing_item_managedCosting items created/updated/deletedcosting-item.component.tsaction_typeStringType of action performed on costing itemcreated, updated, deletedcreatedRequiredTrack costing item lifecycleMust be from valid action types
220Invoice Settings Operationsinvoice_costing_item_managedCosting items created/updated/deletedcosting-item.component.tsitem_idStringUnique identifier for costing itemAlphanumeric stringITEM_001OptionalTrack individual costing itemsMust be valid item ID when provided
221Invoice Settings Operationsinvoice_costing_item_managedCosting items created/updated/deletedcosting-item.component.tsaffects_existing_invoicesBooleanWhether change affects existing invoicestrue or falsefalseOptionalTrack retroactive pricing impactsBoolean validation