Reference
Error codes
Every failure carries a stable code. The problem document’s type
links straight to that code’s entry on this page, so an error in your logs is one click from
its definition. There are 2012 codes in the catalogue; the
18 in the first table are the ones every integration meets, and the
12 in the second are the customer register’s own.
Codes every integration handles
| Code | Status | Meaning | What to do |
|---|---|---|---|
invalid_token | 401 | The bearer token is missing, malformed or revoked. | Check the Authorization header; mint a new key if it was revoked. |
api_key_expired | 401 | The key passed its expiry date. | Rotate the key. Owners are warned 14 and 3 days before expiry. |
api_key_owner_inactive | 401 | The membership the key executes as has been deactivated — the credential is fine, the identity behind it is not. | Ask an admin to reassign the service key to a current member. |
api_key_cannot_manage_keys | 403 | Key management requires a human session; a leaked key must not mint credentials. | Perform the operation from the Kelomo UI. |
api_key_cannot_manage_credentials | 403 | Connected apps, consent and sign-in settings belong to a signed-in person; API keys and OAuth access tokens are refused whatever their scope. | Perform the operation from the Kelomo UI. |
insufficient_role | 403 | The capability the operation requires is not in your effective set — most often the key’s scope is narrower than the operation. | Compare GET /v1/me/access with the operation’s x-kelomo-capabilities, then mint a key with the missing capability. |
read_only_key | 403 | A read-only key attempted a write. | Use a key without the read-only flag for writes. |
idempotency_key_required | 400 | A money-document write or a payroll/billing hand-over was sent with an API key or OAuth token but no Idempotency-Key header. | Generate a unique key per logical operation and send it in the header. |
idempotency_key_reused | 409 | The same Idempotency-Key arrived with a different request body. | A bug on the caller’s side — mint a new key for a genuinely new operation. |
idempotency_key_in_flight | 409 | The first request with this key is still running. | Wait and retry with the same key; the stored response is replayed. |
too-many-requests | 429 | The per-key or per-organisation rate limit is exhausted. | Wait Retry-After seconds. Pace yourself with the X-RateLimit-* headers. |
service_busy | 503 | The service is momentarily congested — the request never started, so nothing was written. | Retry after Retry-After seconds. The same request is safe to send again. |
range_too_long | 422 | The from–to window exceeds the operation’s documented maximum. | Split the read into windows and page each one with the cursor. |
range_end_before_start | 400 | to is earlier than from. | Swap the bounds. |
version_ranges_overlap | 422 | A versioned record (worktime model, shift type, policy) would overlap in time. | Close the previous version before opening the next. |
report_type_not_public | 403 | The report type is not available over the API — person-level absence and health data never are. | Read GET /v1/report-files for the types your credential may render. |
report_route_moved | 410 | The generic report routes under /v1/reports moved to /v1/report-files. | Call GET /v1/report-files/{type} with the same query; GET /v1/report-files lists the types. |
webhook_event_scope_exceeds_actor | 403 | Subscribing an endpoint to events your capabilities do not cover. | See the capability column of the event catalogue. |
Customer register
The register is where most integrations write first, and every refusal below names a rule rather than a malformed request. The same codes reach the merge operation, which is the one customer write that is irreversible.
| Code | Status | Meaning | What to do |
|---|---|---|---|
customer_not_found | 404 | No customer with that id in your organisation — or it is deactivated and the operation only accepts active accounts. | Resolve the id from GET /v1/customers. Add includeInactive=true if you meant a deactivated account. |
code_already_in_use | 409 | Another record of the same kind already carries this code. On the register it is a customer code, which is unique per organisation and immutable once given. | Look the code up first (GET /v1/customers?q=) and reuse that customer instead of creating a second account for it. |
customer_billing_fields_forbidden | 403 | The request carried a billing field (e-invoice address and operator, invoice e-mail, language, delivery method, payment term, buyer reference, VAT id and treatment, invoicing notes, fixed reference) and the key does not hold invoicing.manage. The whole write is refused, not the field. | Send the request without the billing fields, or mint a key that carries invoicing.manage. |
customer_stale | 409 | The expectedUpdatedAt you sent is not the customer’s current updatedAt: somebody saved the record after you read it. | Re-read the customer, reapply your change to the fresh values, and send again. |
invalid_reference_number | 422 | fixedReferenceNumber is not a payable Finnish domestic reference (4–20 digits with a mod-10/7-3-1 check digit). | Compute the check digit, or leave the field empty so each invoice gets its own reference. |
payment_term_not_found | 404 | paymentTermId does not name a payment term in your organisation. | Read the terms from the invoicing settings and send one of their ids. |
crm_contact_not_found | 404 | defaultContactId does not name a contact person that exists. | Create the contact first, then point the customer at it. |
crm_contact_customer_mismatch | 409 | The contact you named belongs to a different customer. | A contact is owned by one customer; use one of this customer’s own contacts. |
customer_has_invoices | 409 | The account being merged away has been invoiced. An issued invoice names its buyer and that name cannot move. | Merge the other way round if the billed account is the one to keep; otherwise deactivate the duplicate and leave its invoice history where it is. |
customer_merge_self | 409 | The winner and the loser are the same customer. | Send the OTHER account’s id as targetCustomerId. |
customer_merge_target_not_found | 404 | targetCustomerId does not name a customer in your organisation. | Resolve the winner from GET /v1/customers before merging. |
customer_merge_target_inactive | 409 | The winner is deactivated. Merging into it would move every contact, deal, project and quote onto an account that is out of the register. | Reactivate the winner first, or pick the active account as the winner. |
Full index
Operation-specific codes name the rule that refused the request — an append-only boundary, a lifecycle state, a missing prerequisite. They are part of the contract: a code is not renamed or removed without the notice period in the deprecation policy. New codes appear as the surface grows, so treat an unknown code as fatal for the request and harmless for your integration.
absence_cancel_after_confirmed_dayabsence_change_taken_daysabsence_day_not_in_periodabsence_day_split_unsupportedabsence_employer_recordedabsence_end_partial_one_dayabsence_overlaps_confirmed_dayabsence_overlaps_draftabsence_overlaps_exported_dayabsence_overlaps_recorded_dayabsence_pendingabsence_period_lockedabsence_period_modifiedabsence_period_not_foundabsence_period_overlapabsence_period_too_longabsence_policy_code_takenabsence_policy_day_type_requiredabsence_policy_inactiveabsence_policy_no_version_for_dateabsence_policy_not_foundabsence_postpone_after_confirmed_dayaccount_deletion_request_not_foundaccount_deletion_request_not_openaccount_notice_not_deliveredaccrual_rerun_after_rolloveraccrual_rerun_conflictaccrual_run_existsaccrual_year_not_endedacknowledgement_version_requiredactivation_outside_periodactivation_window_invalidactor_unknownaddress_blockedadhoc_shift_notice_not_foundadmin_coverage_shrinksadvance_exceeds_balanceadvance_exceeds_invoice_totaladvance_not_availableai_disabledai_draft_failedai_import_failedai_import_invalidallocation_weight_invalidallocation_weights_must_sumalready_adminalready_coveredalready_deliveredalready_endedalready_enrolledalready_memberalready_on_breakamount_out_of_rangeamount_requiredanchor_day_out_of_rangeannouncement_ack_not_requiredannouncement_already_sentannouncement_audience_emptyannouncement_member_out_of_scopeannouncement_not_editableannouncement_not_foundannouncements_disabledannual_leave_interruptedanonymization_nothing_eligibleapi_key_cannot_start_human_sessionapi_key_expiry_in_pastapi_key_not_foundapi_key_not_reassignableapix_not_configuredapix_rejectedappointee_not_employedapproval_already_respondedapproval_link_expiredapproval_not_foundapproval_period_changedapproval_period_emptyapproval_request_not_foundapproval_subject_goneapproved_absence_before_startarchive_export_too_largearrangement_form_invalidarrangement_range_invalidassigned_ruleset_has_no_active_versionassignee_can_only_completeassignee_cannot_work_on_dayassignee_not_foundassignment_not_foundassignment_overlaps_existingassignment_validity_invertedat_least_one_shiftattachment_already_linkedattachment_forbiddenattachment_limit_reachedattachment_lockedattachment_not_foundattachment_not_readyattachment_not_uploadedattachment_object_missingattachment_owner_not_publicattachment_scan_failedattachment_too_largeattachment_wrong_statusattribute_not_foundattribute_range_overlapattribute_validity_invertedattribute_value_mismatchattribution_emptyattribution_precision_unmetaudience_invalidautonomous_scheduling_disabledaveraged_worktime_requires_standard_regimebackdated_punch_disabledbackdated_punch_too_oldbackdated_punch_undeclaredbad-requestbalance_account_not_foundbalance_cut_rule_not_foundbalance_import_account_not_foundbalance_import_already_importedbalance_import_ambiguous_hoursbalance_import_ambiguous_memberbalance_import_batch_not_foundbalance_import_before_employmentbalance_import_duplicate_openingbalance_import_duplicate_rowbalance_import_invalid_datebalance_import_invalid_leave_yearbalance_import_invalid_valuebalance_import_leave_days_out_of_rangebalance_import_leave_year_before_employmentbalance_import_not_committedbalance_import_revertedbalance_import_supersededbalance_import_unknown_accountbalance_import_unknown_memberbalance_transaction_amount_out_of_rangebalance_transaction_day_invoicedbalance_transaction_onboarding_conflictbalance_transaction_period_lockedbalancing_period_weeks_invalidband_not_foundbank_account_not_foundbank_account_requiredbank_cap_exceededbank_import_in_progressbank_leave_balance_exceededbank_leave_no_consuming_daysbank_overdrawnbank_yearly_cap_exceededbase_plan_not_foundbatch_already_canceledbatch_canceledbatch_deliveredbatch_has_no_calculation_runbatch_has_no_targetbatch_snapshot_invalidbatch_snapshot_missingbatch_target_requiredbatch_too_largebatch_write_offbefore_tracking_startbilling_base_disabledbilling_batch_not_foundbilling_customer_ambiguousbilling_customer_code_missingbilling_granularity_target_mismatchbilling_managed_externallybilling_multiplier_requiredbilling_product_code_missingbilling_profile_in_usebilling_profile_incompletebilling_profile_not_foundbilling_target_not_foundbilling_target_vat_code_rate_mismatchbilling_target_vat_code_unknownbilling_unmapped_bucketsblackout_not_foundbody_decompression_failedbody_too_largebooking_cell_conflictbreak_exceeds_elapsed_spanbreak_outside_day_framebreak_outside_shift_framebreak_outside_work_segmentbreak_type_not_foundbreak_type_not_unpaidbreaks_require_entriesbuddy_not_foundbudget_state_value_mismatchbulletin_already_sentbulletin_not_foundbusiness_id_invalidbuyer_address_requiredbuyer_vat_country_mismatchbuyer_vat_id_malformedbuyer_vat_requiredcalendar_connection_not_foundcalendar_feed_disabledcalendar_feed_not_foundcalendar_sync_not_configuredcamt_encoding_unsupportedcamt_parse_failedcandidate_already_hiredcandidate_email_requiredcandidate_hash_requiredcandidate_hire_via_actioncandidate_hired_no_deletecandidate_not_eligiblecandidate_not_foundcandidate_offer_already_sentcandidate_rejection_already_sentcandidates_changedcannot_adjust_own_balancecannot_approve_owncannot_change_own_rolecannot_deactivate_selfcannot_delete_only_versioncannot_delete_selfcannot_demote_selfcannot_disable_selfcannot_edit_own_employmentcannot_end_last_admin_employmentcannot_end_own_employmentcannot_postpone_last_admin_employment_startcannot_postpone_own_employment_startcannot_revoke_own_licensecapability_not_grantablecareers_not_foundcase_note_already_acknowledgedcase_note_already_issuedcase_note_modifiedcase_note_not_foundcase_note_not_issuedcase_note_not_yourscase_note_read_onlycase_note_type_inactivecase_note_type_not_foundcatalog_item_in_usecatalog_item_not_foundcertificate_incompletecertificate_not_requiredcertificate_waive_reason_requiredchange_order_already_approvedchange_order_hourly_not_billablechange_order_invoicedchange_order_modifiedchange_order_not_approvedchange_order_not_billable_for_entrychange_order_not_draftchange_order_not_fixedchange_order_not_foundchange_order_pendingchecklist_run_activecheckout_quantity_mismatchcheckout_session_failedclaim_already_exportedclaim_not_actionableclock_window_end_before_startclock_windows_weekday_capcloses_at_not_after_opens_atcode_already_existscode_in_usecode_in_use_unlinkedcomments_restricted_for_sensitivecompetence_confirmed_readonlycompletion_date_futurecomponent_no_anchor_dayconfirm_interruptedconflictconnection_duplicateconnection_fields_missingconnection_in_useconnection_not_foundconnection_system_mismatchconnection_test_unsupportedconsent_requiredcontract_billedcontract_hours_missingcontract_incompletecontract_min_exceeds_contract_hourscontract_pay_annex_missingcontract_threshold_implausiblecoordinates_requiredcorrection_no_changescorrection_reference_stalecorrection_request_not_opencorrection_request_opencorrection_run_stalecorrection_spans_settled_overtimecost_not_visiblecounterparty_is_selfcounterparty_not_employed_on_datecounterparty_not_foundcounterparty_other_unitcounterparty_shift_not_foundcountry_only_for_foreigncountry_required_for_foreigncovered_shift_not_foundcovered_shift_not_publishedcredential_revokedcredentials_missingcredit_applied_before_credit_notecredit_balance_exceededcredit_entry_requires_absencecredit_exceeds_opencredit_exceeds_originalcredit_loss_exceeds_opencredit_loss_not_receivablecredit_loss_nothing_to_reversecredit_loss_reason_requiredcredit_loss_reversal_before_write_offcredit_note_before_originalcredit_note_draft_opencredit_note_header_frozencredit_note_line_frozencredit_note_vat_exceeds_originalcredit_overlaps_credit_losscredit_source_not_a_credit_notecredit_target_is_the_credit_notecredit_target_other_customercredit_type_cannot_count_as_workcrm_activity_done_in_futurecrm_activity_no_linkcrm_activity_not_foundcrm_activity_stalecrm_automation_invalidcrm_automation_not_foundcrm_contact_anonymizedcrm_contact_email_takencrm_contact_in_usecrm_contact_inactivecrm_contact_stalecrm_custom_field_in_usecrm_custom_field_key_takencrm_custom_field_limit_reachedcrm_custom_field_not_foundcrm_custom_field_value_invalidcrm_custom_field_value_requiredcrm_custom_field_values_too_largecrm_deal_customer_mismatchcrm_deal_not_foundcrm_deal_not_opencrm_deal_not_won_or_lostcrm_deal_participant_existscrm_deal_participant_limitcrm_deal_participant_not_foundcrm_deal_pin_not_a_notecrm_deal_stalecrm_email_date_in_futurecrm_email_deal_lead_mismatchcrm_email_dropbox_disabledcrm_email_not_foundcrm_email_recipient_suppressedcrm_email_subject_requiredcrm_email_thread_not_foundcrm_email_thread_not_ownercrm_forbiddencrm_inbound_mail_not_configuredcrm_lead_anonymizedcrm_lead_convertedcrm_lead_not_foundcrm_lead_not_opencrm_lead_stalecrm_leads_disabledcrm_lost_reason_inactivecrm_lost_reason_not_foundcrm_lost_reason_requiredcrm_new_customer_requiredcrm_pipeline_has_no_stagecrm_pipeline_inactivecrm_pipeline_not_foundcrm_project_customer_mismatchcrm_project_has_no_customercrm_project_not_foundcrm_retention_too_shortcrm_saved_view_limitcrm_saved_view_not_foundcrm_saved_view_stalecrm_stage_not_emptycrm_stage_not_foundcrm_tag_existscrm_tag_not_foundcrm_tag_not_linkedcrm_template_inactivecrm_template_not_foundcrm_win_project_choicecsrf_rejectedcsrf_requiredcustomer_inactivecustomer_parent_cycledaily_brief_time_in_quiet_hoursdaily_regular_fixed_minutes_requireddaily_rest_gate_blockeddangling_reference_founddates_per_memberday_already_approvedday_already_confirmedday_already_editableday_already_exportedday_changedday_confirmed_lockedday_confirmed_use_reclassifyday_end_not_after_startday_has_deviationsday_has_duration_entriesday_has_manual_entriesday_in_futureday_invoicedday_is_draftday_no_punchesday_not_approvedday_not_confirmedday_not_correctableday_not_elapsedday_not_overday_on_approved_leaveday_punch_auto_closedday_surplusday_target_out_of_rangeday_type_bank_requires_credits_targetday_type_counts_as_work_timeday_type_inactiveday_type_not_foundday_type_owned_by_absence_typeday_type_replaces_entriesday_type_requireddecision_basis_changeddelegate_equals_delegatordelegate_inactivedelegate_unlicenseddelegation_not_founddelegation_overlapsdelegation_requires_admindelegation_requires_manager_roledelivery_changed_reloaddelivery_in_progressdelivery_interrupteddelivery_not_founddelivery_not_retryabledemand_forecast_not_founddemand_observation_not_founddemo_reset_runningdemo_session_not_availabledemo_session_read_onlydevice_not_founddevice_only_memberdevice_pairing_invaliddimension_in_usedimension_inactivedimension_must_be_askeddimension_not_founddimension_value_inactivedimension_value_not_founddirect_swap_requires_counterparty_daydiscount_days_and_percent_togetherdiscount_window_after_due_datediscovery_endpoint_blockeddiscovery_faileddiscovery_incompletediscovery_issuer_mismatchdiscovery_unreachablediscussion_held_in_futurediscussion_not_founddiscussion_party_onlydiscussion_template_existsdiscussion_template_not_founddispatch_abandoneddispatch_conflictdispatch_email_not_sentdispatch_not_founddispatch_recipient_missingdispatch_route_manualdispatch_transport_rejecteddns_emptydns_faileddocument_category_inactivedocument_category_not_founddocument_not_founddue_date_before_invoice_dateduplicate_bucket_mappingduplicate_cellduplicate_dimension_defaultduplicate_dimension_on_entryduplicate_group_module_in_batchduplicate_memberduplicate_membership_in_batchduplicate_moduleduplicate_parameter_tableduplicate_shiftduplicate_skillduplicate_skill_combinationduplicate_status_mappingduplicate_value_on_dimensionduplicate_weekday_roweinvoice_address_missingeinvoice_not_supported_for_documenteinvoice_operator_disconnect_in_flighteinvoice_operator_not_configuredeinvoice_operator_not_connectedeinvoice_operator_not_verifiedeinvoice_operator_unsupportedeinvoice_print_service_disabledeinvoice_sender_address_missingemail_already_registeredemail_change_cancelledemail_change_expiredemail_change_invalidemail_change_not_supportedemail_in_useemail_not_configuredemail_recipient_suppressedemail_rejectedemail_send_failedemail_unchangedemail_verification_code_invalidemail_verification_expiredemail_verification_not_pendingemail_verification_requiredemail_verification_too_many_attemptsemergency_notice_already_filedemergency_notice_already_has_statementemergency_notice_not_filedemergency_notice_not_foundemergency_notice_range_invalidemployee_profile_staleemployer_business_id_invalidemployer_code_takenemployer_default_requiredemployer_in_useemployer_not_foundemployment_end_after_fixed_term_endemployment_field_versionedemployment_not_startedemployment_staleemployment_version_existsemployment_version_later_existsemployment_version_lockedendpoint_blockedendpoint_not_configuredendpoint_not_httpsendpoint_unresolvedendpoint_url_invalidentries_or_day_type_requiredentries_overlapentries_overlap_breakentry_comment_requiredentry_end_not_after_startentry_exported_reopen_to_reattributeentry_form_ambiguousentry_invoicedentry_link_expiredentry_link_not_foundentry_link_target_inactiveentry_link_target_requiredentry_not_on_projectentry_out_of_rangeentry_over_max_durationentry_type_inactiveentry_type_no_version_for_dayentry_type_not_foundentry_type_requiredeu_treatment_missing_buyer_vateu_treatment_requires_foreign_buyerevent_not_in_scopeexactly_one_selector_requiredexactly_one_target_requiredexceeds_saveable_leaveexception_day_date_takenexception_day_from_holiday_calendarexception_day_not_foundexcess_account_requiredexit_interview_not_foundexpected_value_requiredexpense_already_approvedexpense_already_draftexpense_amount_not_positiveexpense_billing_disabledexpense_decision_changedexpense_lockedexpense_not_draftexpense_not_foundexpense_not_reviewedexpense_not_submittedexpense_policy_not_foundexpense_policy_violationexpense_rate_in_use_end_date_insteadexpense_rate_mileage_use_travel_rateexpense_rate_period_closedexpense_rate_statutory_use_travel_rateexpense_rate_valid_to_in_pastexpense_submission_changedexpense_type_code_takenexpense_type_invalidexpense_type_not_foundexpense_type_staleexpense_vat_exceeds_amountexpense_vat_rate_implausibleexpense_wrong_statusexport_absences_unsupportedexport_batch_canceledexport_batch_deliveredexport_batch_has_no_calculation_runexport_batch_not_foundexport_cancel_conflictexport_conflictexport_correction_unchangedexport_corrections_unsupportedexport_delivery_queue_not_backedexport_duplicate_identifiersexport_empty_renderexport_identifier_not_numericexport_missing_identifiersexport_nothing_to_deliverexport_out_of_band_onlyexport_requires_non_eu_buyerexport_retro_deltas_unsupportedexport_rows_not_representableexport_target_name_takenexport_target_requiredexport_unit_mismatchexport_unknown_bucketexport_unmapped_absence_typesexport_unmapped_componentsexternal_ref_conflictexternal_ref_in_useexternal_ref_incompletefeature_not_in_planfield_requires_actionfield_service_agreements_disabledfield_service_inventory_disabledfield_service_messaging_disabledfixed_reference_in_usefixed_term_basis_exceeds_one_yearfixed_term_basis_renewal_limitfixed_term_basis_requires_end_datefixed_term_basis_requires_fixed_termfixed_term_end_before_startfixed_term_end_before_version_startfixed_term_end_mismatchfixed_term_end_requires_fixed_termfixed_term_no_reason_not_first_contractfixed_term_no_reason_not_in_forcefixed_term_renewal_aheadfixed_term_requires_groundsflex_default_not_in_modelflex_leave_not_in_modelflex_limits_invertedflex_limits_on_modelflex_not_in_modelflex_override_accrues_nothingflex_window_excludes_zeroflexwork_period_settlement_account_requiredflexwork_period_version_existsflexwork_period_version_lockedflexwork_settlement_account_not_foundforbiddenforce_reason_requiredforce_requires_reasonforeign_travel_disabledframe_incompleteframe_must_match_segmentsgeneration_failedgoal_discussion_member_mismatchgoal_field_not_editablegoal_not_foundgrant_not_foundgrant_units_requiredgranularity_not_supportedgroup_only_for_team_reporthas_active_dependentshire_request_start_date_requiredhire_request_worktime_model_requiredholiday_compensation_requires_bank_accountholiday_custom_day_invalid_dateholiday_policy_duplicate_codehr_area_disabledid_token_invalidid_token_missingid_token_no_subjectidempotency_key_too_longidempotency_replay_unsupportedidentifier_already_boundidentifier_not_supportedidentifier_takenidentifier_unknownidentity_already_linkedidp_cancelledidp_consent_requiredimage_too_largeimport_batch_not_draftimport_file_lines_mismatchimport_too_many_rowsinbound_mail_not_configuredincident_not_foundincident_update_not_foundinstallment_billedinstallment_not_foundinstallments_fixed_price_onlyinsufficient_platform_roleinsufficient_restintake_customer_requiredintake_not_foundintake_not_openinterview_time_requiredinvalid_amountinvalid_as_of_dateinvalid_backfill_daysinvalid_band_windowinvalid_bicinvalid_boolean_flaginvalid_calendar_dateinvalid_charactersinvalid_credentialsinvalid_date_formatinvalid_date_rangeinvalid_encrypted_value_formatinvalid_grant_scopeinvalid_handoffinvalid_healthinvalid_ibaninvalid_identifierinvalid_jsoninvalid_ledger_kindinvalid_milestoneinvalid_national_idinvalid_oauth_stateinvalid_occurred_atinvalid_owner_idinvalid_passwordinvalid_pathinvalid_periodinvalid_phaseinvalid_policy_payloadinvalid_providerinvalid_qr_tokeninvalid_refresh_tokeninvalid_scope_keyinvalid_section_indexinvalid_signatureinvalid_situationinvalid_statusinvalid_target_valueinvalid_tax_numberinvalid_time_zoneinvalid_timestampinvalid_utf8_bodyinvalid_yearinventory_count_emptyinventory_count_line_not_foundinventory_count_not_foundinventory_count_not_openinventory_count_too_many_linesinventory_count_variance_too_largeinventory_field_issue_not_allowedinventory_insufficient_stockinventory_item_not_foundinventory_item_not_trackedinventory_keeper_not_foundinventory_location_code_takeninventory_location_inactiveinventory_location_kind_mismatchinventory_location_not_emptyinventory_location_not_foundinventory_location_not_keeperinventory_location_staleinventory_movement_sign_invalidinventory_quantity_zeroinventory_rebuild_too_largeinventory_replenishment_emptyinventory_site_not_foundinventory_transfer_emptyinventory_transfer_line_duplicateinventory_transfer_line_not_foundinventory_transfer_not_cancelableinventory_transfer_not_draftinventory_transfer_not_foundinventory_transfer_not_in_transitinventory_transfer_received_too_manyinventory_transfer_same_locationinventory_transfer_staleinventory_vehicle_not_foundinvitation_acceptedinvitation_address_changedinvitation_expiredinvitation_not_foundinvite_start_date_requiredinvoice_already_dispatchedinvoice_already_issuedinvoice_lines_other_customer_projectinvoice_not_advanceinvoice_not_creditableinvoice_not_draftinvoice_not_foundinvoice_not_issuedinvoice_number_cannot_decreaseinvoice_number_claim_failedinvoice_number_takeninvoice_period_overlapinvoice_review_changedinvoice_review_setting_requires_admininvoice_series_number_overlapinvoice_series_prefix_requiredinvoice_series_prefix_takeninvoice_series_rename_after_useinvoice_specification_emptyinvoice_staleinvoice_total_negativeinvoicing_period_lockedissuer_must_be_httpsjob_category_assignment_overlapjob_category_code_takenjob_category_not_foundjwks_endpoint_blockedkey_already_in_usekey_scope_exceeds_creatorkey_scope_exceeds_ownerlast_adminlast_end_of_day_reasonlast_sign_in_methodleave_balance_exceededleave_balance_would_exceedleave_before_earliest_dateleave_before_tracking_startleave_before_worktime_modelleave_beyond_planning_horizonleave_blackout_kind_retiredleave_concurrency_exceededleave_concurrency_exceeded_orgleave_correction_below_zeroleave_entitlement_version_staleleave_grid_row_staleleave_group_day_type_not_leaveleave_group_has_membersleave_group_inactiveleave_group_not_foundleave_group_unchangedleave_in_blackoutleave_no_consuming_daysleave_no_entitlementleave_notice_shortleave_opening_differsleave_outside_employmentleave_proposal_not_pendingleave_proposal_pendingleave_proposal_same_spanleave_save_proposal_already_pendingleave_save_proposal_modifiedleave_save_proposal_not_foundleave_save_proposal_not_pendingleave_season_confirmedleave_season_existsleave_season_has_accrual_runleave_season_in_useleave_season_lockedleave_season_not_foundleave_season_period_not_foundledger_reason_reservedlemonsoft_absence_zero_dayslemonsoft_access_deniedlemonsoft_auth_failedlemonsoft_correction_unmatchedlemonsoft_host_blockedlemonsoft_host_unresolvedlemonsoft_invalid_datalemonsoft_no_datalemonsoft_not_configuredlemonsoft_not_foundlemonsoft_not_httpslemonsoft_not_implementedlemonsoft_pay_code_not_allowedlemonsoft_person_ambiguouslemonsoft_person_missinglemonsoft_person_not_employeelemonsoft_person_outside_payroll_periodlemonsoft_person_register_invalidlemonsoft_phase_missinglemonsoft_phase_without_projectlemonsoft_preflight_failedlemonsoft_timeoutlemonsoft_unreachablelicense_requiredlicense_required_for_modulelicense_requires_emailline_belongs_to_tripline_not_adjustableline_not_foundline_quantity_exceeds_sourcesline_quantity_requires_dispositionline_quantity_too_preciselink_replacedlink_requiredlocation_not_enabledlocation_requiredlock_already_liftedlock_group_requiredlock_group_scope_mismatchlock_not_foundlocked_type_protectedlodging_night_allowance_paidlogo_image_not_supportedmailbox_connection_not_foundmailbox_needs_reauthmailbox_not_connectedmailbox_sync_not_configuredmanager_assignment_overlapsmanager_cannot_be_selfmanager_cyclemanager_has_reportsmanager_not_employed_on_datemanager_not_foundmanager_recruiting_disabledmanager_role_requiredmanager_skill_recording_disabledmanager_terms_read_disabledmanager_valid_from_in_pastmanual_entry_reason_requiredmass_correction_catalog_not_foundmass_correction_day_not_correctablemass_correction_reason_requiredmass_correction_run_not_foundmass_correction_run_not_retryablemass_correction_version_requiredmaterialized_credit_row_lockedmaventa_company_details_missingmaventa_company_mismatchmaventa_connection_invalidmaventa_not_configuredmaventa_rejectedmaventa_vendor_not_configuredmeal_allowance_day_takenmember_absent_on_datemember_already_scheduledmember_anonymizedmember_cannot_pair_with_selfmember_day_has_private_notemember_has_no_unitmember_ids_requiredmember_module_not_licensedmember_not_assignablemember_not_device_onlymember_not_foundmember_not_in_scopemember_not_in_unitmembership_deactivatedmembership_endedmembership_in_usemembership_inactivemembership_not_endedmembership_not_foundmembership_or_members_requiredmembership_pending_acceptancemembership_pending_member_acceptancemembership_stalemessage_delivery_partial_failuremfa_already_enabledmfa_invalidmfa_not_enabledmfa_not_enrolledmfa_requiredmileage_disabledmilestone_not_foundmissing_breakmissing_clock_timesmissing_day_type_versionmissing_external_refmissing_match_keymissing_model_version_for_daymissing_signaturemissing_tokenmissing_worktime_modelmixed_entry_formsmobile_session_not_for_supportmobile_session_not_foundmobile_session_requires_bearermodule_not_activemodule_not_foundmodule_not_purchasablemoney_judgement_human_onlymust_be_nonnegativemust_be_positivenetvisor_access_deniednetvisor_auth_failednetvisor_day_lockednetvisor_duplicatenetvisor_employee_ambiguousnetvisor_employee_missingnetvisor_empty_responsenetvisor_failednetvisor_host_blockednetvisor_host_unresolvednetvisor_invalid_datanetvisor_maintenancenetvisor_no_datanetvisor_not_configurednetvisor_not_httpsnetvisor_partner_not_configurednetvisor_period_locknetvisor_preflight_failednetvisor_record_type_ambiguousnetvisor_record_type_missingnetvisor_record_unit_mismatchnetvisor_register_invalidnetvisor_rejectednetvisor_request_not_uniquenetvisor_resource_management_offnetvisor_timeoutnetvisor_unreachableno_active_invoice_number_sequenceno_change_specifiedno_changes_givenno_default_punch_entry_typeno_exportable_daysno_membership_in_tenantno_membershipsno_model_for_dayno_open_sessionno_planning_unitno_proposal_for_dayno_worktime_model_for_tenantnonce_mismatchnot-foundnot_a_published_person_shiftnot_allowed_to_flagnot_allowed_to_reattributenot_employed_on_datenot_in_runnot_on_breaknot_project_ownernot_your_reportnothing_to_correctnothing_to_exportnothing_to_invoicenothing_to_patchnothing_to_unpublishnotice_recipient_not_in_unitnotice_shift_not_foundoauth_audience_mismatchoauth_client_disabledoauth_disabled_for_organisationoauth_grant_not_foundoauth_grant_owner_inactiveoauth_grant_revokedoauth_redirect_uri_mismatchoauth_request_expiredoauth_request_not_foundoauth_request_usedoauth_unknown_clientobligation_not_foundocr_failedodometer_reading_backwardsoffboarding_not_activeoffboarding_not_foundoffboarding_purge_startedon_behalf_disabledopen_shift_already_filledopen_shift_claim_cancel_deadline_passedopen_shift_existsopen_shift_expiry_after_endopen_shift_expiry_in_pastopen_shift_not_foundopen_shift_not_openopening_has_candidatesopening_hours_overlapopening_not_foundoperator_disabledoperator_email_takenoperator_not_foundoperator_session_not_foundoperator_session_revokedoptimization_run_not_foundoptimize_nothing_acceptedoption_not_configurableorder_changedorganization_staleoutside_geofenceoutside_membership_windowoverflow_chain_cycleoverflow_target_selfoverlapping_shiftsoverlay_requiredovertime_to_time_off_forbiddenowner_lacks_seatowner_not_foundpair_rule_existspair_rule_not_foundparent_change_unsupportedparent_in_other_dimensionparent_not_foundpart_time_double_scalingpart_time_percent_missingpartial_not_allowed_for_policypartial_policy_conflictpartial_release_not_divisiblepartial_spec_shape_invalidpartial_step_not_allowedpartial_window_already_workedpartial_window_end_not_after_startpartial_window_outside_framepassword_change_requiredpassword_not_setpassword_or_current_passwordpassword_repeats_identitypassword_reset_expiredpassword_reset_not_foundpassword_reset_revokedpassword_reset_usedpassword_too_commonpassword_unchangedpay_code_requiredpayload_too_largepayment_allocation_exceeds_allocatedpayment_allocation_exceeds_openpayment_allocation_exceeds_paymentpayment_already_importedpayment_not_foundpayment_term_in_usepayroll_number_in_usepayroll_period_anchor_requiredpayroll_period_not_endedpayroll_period_rhythm_parameter_mismatchpayroll_run_blockedpayroll_run_break_findingspayroll_target_not_foundpending_identifier_expiredpending_identifier_not_foundpending_identifier_type_invalidpending_limit_reachedper_diem_disabledper_diem_not_recordableper_diem_rate_missingperiod_already_generatedperiod_draft_has_historyperiod_ends_before_startperiod_generate_range_too_longperiod_has_batchesperiod_has_restored_daysperiod_length_and_anchor_requiredperiod_lockedperiod_not_cancellableperiod_not_certifiableperiod_not_draftperiod_not_endedperiod_not_extendableperiod_not_foundperiod_not_pendingperiod_not_postponableperiod_not_withdrawableperiod_overlaps_existing_lockperiod_overlaps_existing_periodperiod_range_mismatchperiod_window_conflictperiod_work_required_for_period_regimeperiod_work_requires_period_regimephase_dates_invertedphase_lockedphase_not_foundphase_not_in_projectphone_invalidpin_invalidpin_requiredplan_changedplan_not_foundplan_not_purchasableplan_range_too_longplanned_hours_missingplanned_shift_not_foundplanning_day_note_crew_requiredplanning_day_note_members_requiredplanning_day_note_not_foundplanning_unit_inactiveplanning_unit_not_foundplanning_unit_requiredpolicy_ledger_and_account_conflictpolicy_not_employer_assignablepolicy_not_foundpolicy_not_self_serviceablepolicy_override_not_datedpolicy_override_not_foundpolicy_override_valid_from_requiredpolicy_workflow_incoherentposition_inactiveposition_mismatchposition_not_foundpostpone_covers_whole_periodpostpone_from_after_periodprerequisite_cycleprerequisite_existsprerequisite_not_foundpresence_board_disabledprobation_end_before_startprobation_exceeds_statutory_maxproject_already_invoicedproject_billing_customer_requires_customerproject_billing_disabledproject_closedproject_dates_invertedproject_dimension_missingproject_economy_disabledproject_has_invoice_draftproject_intake_disabledproject_is_draftproject_log_not_foundproject_log_not_riskproject_not_emptyproject_not_foundproject_quotes_disabledproject_report_not_allowedproject_staleproject_template_dependency_datesproject_template_existsproject_template_invalidproject_template_not_foundproject_timeline_disabledproject_values_managed_in_projectsproject_workload_disabledproposed_start_in_pastpublish_event_not_foundpulse_already_answeredpulse_disabledpulse_round_dates_invalidpulse_round_not_openpunch_allocations_requiredpunch_before_session_startpunch_billable_requiredpunch_client_id_reusedpunch_clock_disabledpunch_close_before_last_punchpunch_close_outside_windowpunch_day_not_punchedpunch_day_rebuild_incompletepunch_device_not_foundpunch_device_revokedpunch_devices_disabledpunch_entry_type_requiredpunch_identifier_not_foundpunch_in_futurepunch_intent_not_foundpunch_intent_not_openpunch_intent_return_before_outpunch_intent_return_too_far_aheadpunch_note_requiredpunch_reason_absence_requires_day_typepunch_reason_break_requires_paidpunch_reason_break_type_only_for_breakpunch_reason_clock_in_only_for_absencepunch_reason_day_type_only_for_absencepunch_reason_entry_type_only_for_worktypepunch_reason_inactivepunch_reason_not_foundpunch_reason_not_usable_on_clock_inpunch_reason_paid_only_for_breakpunch_reason_requiredpunch_reason_span_mode_only_for_absencepunch_reason_worktype_requires_entry_typepunch_return_gap_invalidpunch_session_openpunch_site_not_foundpunch_target_change_requires_repunchpunch_too_oldpurchase_approvedpurchase_billedpurchase_inbox_item_not_foundpurchase_inbox_item_not_pendingpurchase_not_foundquantity_and_amount_are_exclusivequantity_not_whole_piecesquantity_out_of_rangequantity_requiredquote_already_convertedquote_already_has_service_orderquote_already_respondedquote_code_requiredquote_emptyquote_is_templatequote_link_expiredquote_link_not_foundquote_not_acceptedquote_not_editablequote_not_foundquote_not_reopenablequote_not_sendablequote_not_sentquote_not_templatequote_recurring_needs_retainerquote_send_in_progressquote_stalerange_incompleterange_too_widerate_bulk_raise_effective_in_pastrate_bulk_raise_negative_resultrate_duplicate_scoperate_in_use_end_date_insteadrate_key_missingrate_limitedrate_missingrate_not_foundrate_period_closedrate_scope_conflictrate_valid_to_in_pastrate_validity_invertedreason_is_breakreason_not_breakreason_requiredreauth_requiredrecipients_not_allowedrecord_in_userecruiting_stage_inactiverecruiting_stage_not_foundrecurring_fee_already_billedrecurring_period_already_generatedrecurring_publish_not_foundrecurring_schedule_not_foundrecurring_schedule_stalereference_not_foundrefund_document_mismatchrefund_document_requiredrefund_exceeds_surplusrefund_not_negativerefund_requires_receiptregular_exceeds_period_maximumrehire_not_supportedreissue_requires_released_sourcesreminder_already_created_for_dayreminder_charges_already_invoicedreminder_date_in_futurereminder_document_typereminder_no_chargesreminder_not_overduereminder_original_settledreopen_interruptedrepeat_horizon_too_longrepeat_target_before_sourcereport_feature_not_enabledreport_job_failedreport_job_not_foundreport_job_not_readyreport_no_peoplereport_not_allowedreport_range_too_longreport_timeoutreport_too_largerequest_type_not_requestablerequiredrequired_attribution_missingrequirement_existsrequirement_not_foundrequirement_target_invalidresend_reason_requiredreview_not_requestedreview_requiredreview_return_reason_requiredreview_returnedrollover_run_conflictroster_competence_gate_blockedroster_compliance_gate_blockedroster_template_not_foundroster_template_week_emptyrotation_assignment_overlapsrotation_crew_not_foundrotation_crew_requiredrotation_horizon_too_longrotation_offset_out_of_rangerotation_pattern_not_foundrotation_slot_out_of_rangerotation_unit_mismatchround_already_resolvedround_cancelledround_not_cancellableround_not_editableround_not_foundround_window_invalidroute_not_foundrun_at_not_futurerun_not_foundsafety_corrective_action_not_foundsafety_incident_not_foundsafety_incident_type_inactivesafety_incident_type_not_foundsafety_incident_voidedsaved_route_not_foundsaved_view_not_foundsaved_view_path_not_allowedscheduled_publish_conflictscheduled_publish_failedscheduled_publish_not_foundscheduled_publish_runningscheduled_report_audience_not_allowedscheduled_report_audience_scopescheduled_report_audience_typescheduled_report_external_recipientscheduled_report_not_foundscheduled_report_recipient_out_of_scopescheduled_report_recipient_without_rightself_assessment_disabledself_enroll_not_allowedself_review_forbiddenself_service_edit_disabledseller_business_id_invalidseller_identity_from_employerseller_identity_requiredseller_vat_id_invalidsequence_in_usesequence_is_defaultsequence_not_foundservice_agreement_anchor_date_invalidservice_agreement_customer_mismatchservice_agreement_date_range_invalidservice_agreement_end_date_invalidservice_agreement_item_limitservice_agreement_item_not_foundservice_agreement_item_staleservice_agreement_not_foundservice_agreement_recurring_fee_requiredservice_agreement_recurring_schedule_existsservice_agreement_staleservice_agreement_start_date_invalidservice_asset_code_takenservice_asset_cycleservice_asset_inactiveservice_asset_not_foundservice_asset_parent_not_foundservice_asset_parent_site_mismatchservice_asset_site_mismatchservice_asset_staleservice_asset_type_code_takenservice_asset_type_not_foundservice_asset_type_staleservice_catalog_item_not_foundservice_catalog_limitservice_checklist_item_key_duplicateservice_checklist_template_code_takenservice_checklist_template_not_foundservice_checklist_template_staleservice_custom_field_requiredservice_dispatch_target_requiredservice_field_definition_not_foundservice_field_definition_staleservice_field_key_takenservice_field_link_duplicateservice_field_link_target_invalidservice_field_link_target_not_foundservice_field_links_not_supportedservice_history_too_largeservice_hours_invalidservice_key_requires_capabilitiesservice_line_already_invoicedservice_line_description_requiredservice_line_not_on_visitservice_line_quantity_invalidservice_line_report_signedservice_line_staleservice_line_stock_requires_catalog_itemservice_occurrence_date_invalidservice_occurrence_not_foundservice_occurrence_not_pendingservice_order_already_invoicedservice_order_closedservice_order_fixed_price_missingservice_order_has_invoiced_moneyservice_order_has_reportservice_order_has_signed_reportservice_order_has_work_timeservice_order_line_limitservice_order_line_not_foundservice_order_lump_already_invoicedservice_order_not_fixed_priceservice_order_not_foundservice_order_not_startedservice_order_site_lockedservice_order_staleservice_order_status_invalidservice_order_type_code_takenservice_order_type_inactiveservice_order_type_not_foundservice_order_type_staleservice_order_visit_in_progressservice_order_wait_reason_requiredservice_register_not_assignedservice_report_asset_mismatchservice_report_checklist_incompleteservice_report_not_foundservice_report_photo_missingservice_report_required_field_missingservice_report_snapshot_leakservice_report_unknown_fieldservice_report_value_not_allowedservice_report_value_type_invalidservice_request_assignee_invalidservice_request_category_forbiddenservice_request_form_not_foundservice_request_internal_onlyservice_request_not_foundservice_request_resolved_reopen_window_passedservice_retention_too_shortservice_route_anchor_not_foundservice_site_code_takenservice_site_coordinates_requiredservice_site_customer_mismatchservice_site_inactiveservice_site_not_foundservice_site_requiredservice_site_staleservice_skill_not_foundservice_value_conflictservice_visit_checklist_incompleteservice_visit_checklist_item_not_foundservice_visit_closedservice_visit_has_work_timeservice_visit_minutes_exceed_entryservice_visit_minutes_invalidservice_visit_not_assignedservice_visit_not_foundservice_visit_order_mismatchservice_visit_overlapservice_visit_photo_requiredservice_visit_staleservice_visit_status_invalidservice_visit_timestamp_out_of_rangeservice_visit_window_invalidservice_visit_window_pair_invalidservice_visit_work_entry_not_foundsession_expired_absolutesession_revokedsession_time_invertedsettled_days_outside_windowseverity_requires_accidentsftp_auth_failedsftp_connect_failedsftp_host_blockedsftp_host_key_changedsftp_host_unresolvedsftp_no_credentialssftp_not_configuredsftp_timeoutsftp_unreachablesftp_write_failedshift_cell_requires_shift_typeshift_changed_reloadshift_end_not_after_startshift_frame_invalidshift_has_no_unitshift_in_another_unitshift_message_emptyshift_message_too_longshift_messages_disabledshift_modified_concurrentlyshift_not_foundshift_not_found_or_unpublishedshift_not_uncoveredshift_on_absenceshift_or_target_member_requiredshift_report_not_allowedshift_supplement_not_countshift_thread_closedshift_thread_not_foundshift_type_inactiveshift_type_no_versionshift_type_not_foundshift_type_only_on_shift_cellshift_type_override_not_allowedshift_type_short_code_takenshift_type_target_not_lockedshift_type_version_changedshift_type_version_not_in_forceshutting_downsick_waiting_days_keptsick_within_waiting_dayssign_in_method_not_allowedsign_in_policy_emptysign_in_provider_disabledsigning_already_pendingsigning_already_signedsigning_config_not_foundsigning_credentials_invalidsigning_document_not_signablesigning_document_voidedsigning_mode_conflictsigning_not_configuredsigning_not_pendingsigning_open_processessigning_partner_business_id_missingsigning_partner_not_linkedsigning_partner_org_mismatchsigning_partner_org_not_foundsigning_provider_failedsigning_reminder_too_soonsigning_secret_requiredsigning_webhook_invalidsite_or_qr_token_requiredskill_confirmed_remove_forbiddenskill_group_existsskill_group_not_foundskill_inactiveskill_minimum_exceeds_headcountskill_not_foundskill_sighted_readonlysms_adjustment_would_go_negativesms_bundle_not_foundsms_credits_insufficientsms_send_transientsource_already_invoicedsplit_not_allowed_for_dimensionsplit_shift_needs_gapsso_client_secret_requiredsso_domain_conflictsso_domain_not_allowedsso_domain_not_configuredsso_domain_public_mailsso_domain_unverifiedsso_domain_verification_not_startedsso_email_unverifiedsso_failedsso_invalid_code_challengesso_membership_deactivatedsso_no_accountsso_no_domainssso_no_emailsso_no_membershipsso_not_availablesso_not_configuredsso_provider_not_foundsso_requiredsso_start_failedstaff_group_code_takenstaff_group_criteria_matches_everyonestaff_group_not_foundstaff_group_outside_scopestaff_group_report_admin_onlystaff_group_requiredstaff_group_role_in_payroll_groupstaffing_requirement_duplicatestaffing_requirement_duplicate_skill_groupstaffing_requirement_not_foundstandard_attachments_too_largestandard_attachments_too_manystandby_activation_already_linkedstandby_activation_not_foundstandby_cell_requires_type_and_rangestandby_changedstandby_end_not_after_startstandby_no_anchor_daystandby_period_not_foundstandby_period_overlapsstandby_type_inactivestandby_type_not_foundstandby_type_only_on_standby_cellstatement_incompletestatement_issuance_not_foundstatus_mapping_missingstatutory_double_paystorage_not_configuredstripe_event_in_flightstripe_not_configuredstripe_request_rejectedstripe_subscription_activestripe_tax_rate_not_configuredstripe_webhook_not_configuredsubscription_already_activesubscription_not_activesubscription_not_foundsubscription_restrictedsupplement_channel_not_allowedsupplement_comment_requiredsupplement_hours_over_daysupplement_hours_over_day_worksupplement_quantity_requiredsupplement_type_inactivesupplement_type_no_version_for_datesupplement_type_not_foundsupplement_variant_duplicatesupplement_variant_not_allowedsupplement_variant_not_supportedsupplement_window_not_supportedsupport_request_not_foundsupport_request_rate_limitedsupport_session_read_onlyswap_already_pendingswap_not_actionableswap_not_foundswap_shift_changedtarget_exceeds_shift_frametarget_exceeds_work_segmenttarget_role_forbiddentask_archivedtask_closedtask_contract_billedtask_dates_invertedtask_dependency_cycletask_dependency_not_foundtask_field_existstask_field_in_usetask_field_not_foundtask_field_value_invalidtask_has_historytask_hours_invoicedtask_not_foundtask_not_in_projecttask_project_change_unsupportedtask_recurrence_not_foundtask_staletask_status_in_usetask_status_not_foundtask_status_wrong_boardtask_tag_existstask_tag_not_foundtask_template_existstask_template_not_foundtask_time_tracking_offtask_title_ambiguoustask_view_preset_not_foundtasks_disabledtax_exempt_missing_reasontemplate_key_already_in_usetemplate_not_foundtemplate_process_mismatchtenant_already_purgedtenant_export_in_progresstenant_has_no_admintenant_not_demotenant_not_foundtenant_offboarding_scheduledtermination_end_before_starttermination_end_requiredtermination_not_foundtermination_notice_after_endtermination_notice_before_startterms_not_acceptedtes_accrual_requires_bank_accounttes_assignment_mid_periodtes_assignment_not_foundtes_assignment_overlaptes_assignment_target_exclusivetes_golden_case_not_foundtes_ruleset_assignedtes_ruleset_has_no_versiontes_ruleset_in_calculation_runtes_ruleset_invalidtes_ruleset_not_foundtes_ruleset_version_not_foundtes_template_not_foundtes_version_changedtes_version_locked_by_runtes_version_not_activetes_version_not_drafttes_version_not_foundtest_email_recipient_not_membertoken_endpoint_unreachabletoken_exchange_failedtoo_many_decimalstoo_many_idstoo_many_scope_keystracking_start_not_earliertracking_start_not_settraining_inactivetraining_not_attendedtraining_not_foundtraining_participation_not_foundtraining_request_not_foundtraining_request_not_pendingtraining_session_fulltraining_session_not_foundtransport_adapter_mismatchtransport_failedtransport_not_pushtransport_not_pushabletransport_request_failedtransport_timeouttransport_unreachabletransport_url_blockedtransport_url_unresolvedtravel_export_batch_deliveredtravel_export_batch_not_foundtravel_export_disabledtravel_export_target_not_foundtravel_rate_in_usetravel_rate_not_foundtravel_rate_release_effective_before_currenttravel_rate_release_in_pasttravel_rate_release_incompletetravel_rate_release_not_drafttravel_rate_release_not_foundtravel_rate_release_partial_over_fulltravel_rate_release_year_existstravel_time_exceeds_work_timetrip_already_drafttrip_country_requiredtrip_day_not_foundtrip_day_staletrip_decision_changedtrip_end_before_starttrip_leg_outside_triptrip_legs_outside_new_datestrip_lines_outside_new_datestrip_locked_for_billingtrip_locked_for_exporttrip_not_drafttrip_not_foundtrip_not_reviewedtrip_not_submittedtrip_project_requiredtrip_purpose_requiredtrip_staletrip_submission_changedtrip_too_longtrip_wrong_statusunconfirmed_absence_dayunit_assignment_overlapsunit_parent_cycleunit_parent_is_selfunknown_adapterunknown_customerunknown_export_formatunknown_featureunknown_moduleunpriced_tes_supplementunprocessableunpublish_worked_days_needs_ackunsupported_charsetunsupported_content_encodingunsupported_content_typeunsupported_image_typeunsupported_owner_typeurl_invalidurl_must_be_httpsurl_not_httpsurl_userinfo_not_alloweduse_change_passworduser_in_multiple_tenantsuser_not_foundvalidity_ends_before_startvat_not_allowed_seller_not_registeredvat_rate_not_in_forcevat_rate_period_gapvat_rate_period_in_pastvat_rate_period_not_foundvat_rate_period_not_removablevat_rate_period_overlapvat_treatment_required_for_eu_customervat_treatment_unsupportedvehicle_invalidvehicle_not_foundversion_correction_emptyversion_correction_field_not_allowedversion_ends_before_startversion_in_useversion_locked_needs_ackversion_move_overlapsversion_not_foundversion_not_in_force_on_dateversion_overlaps_existingversion_window_exportedvies_check_failedview_preferences_too_largevisit_lockedvisma_sign_auth_failedvisma_sign_failedvisma_sign_not_configuredvisma_sign_partner_auth_failedvisma_sign_unreachablewebhook_delivery_not_foundwebhook_delivery_queue_not_backedwebhook_delivery_runner_missingwebhook_not_foundwebhook_secret_not_applicablewebhook_url_maskedweek_start_minutes_unsupportedweekday_not_applicableweekday_requiredweekdays_or_date_requiredweekly_target_out_of_rangewhistleblowing_assignee_invalidwhistleblowing_disabledwhistleblowing_handler_invalidwhistleblowing_report_closedwhistleblowing_report_not_foundwhistleblowing_retention_admin_onlywhistleblowing_thread_closedwindow_end_not_after_startwindow_exceeds_24_hourswindow_start_equals_endwish_limit_exceededwish_template_requires_shift_typewish_window_closedwish_window_not_foundwork_date_invalidwork_day_not_foundwork_day_not_recordedwork_entry_not_foundwork_line_unit_invalidwork_permit_basis_requiredwork_permit_checked_in_futurework_permit_valid_to_not_applicablework_permit_valid_to_requiredwork_segment_end_not_after_startwork_segments_overlapwork_week_changedworktime_arrangement_already_endedworktime_arrangement_end_outside_rangeworktime_arrangement_form_invalidworktime_arrangement_not_foundworktime_arrangement_overlapsworktime_arrangement_range_invalidworktime_arrangement_startedworktime_import_absence_granularity_refusedworktime_import_absence_row_has_workworktime_import_absence_window_invalidworktime_import_ambiguous_hoursworktime_import_ambiguous_memberworktime_import_batch_not_foundworktime_import_cancelledworktime_import_day_confirmedworktime_import_duplicate_rowworktime_import_entry_type_not_valid_on_dateworktime_import_invalid_dateworktime_import_invalid_durationworktime_import_invalid_timeworktime_import_not_committedworktime_import_note_too_longworktime_import_overnight_too_longworktime_import_period_lockedworktime_import_revertedworktime_import_row_changedworktime_import_rows_overlapworktime_import_run_failedworktime_import_run_in_progressworktime_import_time_or_duration_requiredworktime_import_too_many_entriesworktime_import_unknown_absence_policyworktime_import_unknown_entry_typeworktime_import_unknown_memberworktime_model_archivedworktime_model_not_foundworktime_model_unchangedworktime_model_version_existsworktime_model_version_lockedworktime_model_version_not_foundworktime_percent_out_of_rangeworktime_percent_version_existsworktime_percent_version_lockedwrite_off_reason_requiredyoung_worker_hoursyoung_worker_limitytj_company_not_foundytj_lookup_rate_limited