---
title: "Update an existing org"
method: PATCH
path: "/v1/org/{orgId}"
tags: ["org"]
---

# Update an existing org

`PATCH /v1/org/{orgId}`

## Path parameters

- `orgId` string, required

## Request body

- UpdateOrg
  - `customerId` string — customer for billing processing
  - `name` string — name of organization
  - `slug` string — unique slug of organization
  - `type` 'PRIVATE' | 'PUBLIC' | 'EDU' | 'GOV' | 'NONPROFIT' | 'DEMO' | 'TEST' | 'PORTFOLIO' — type of organization
  - `industry` string — industry
  - `estEmployees` integer — approximate number of employees
  - `estRevenue` integer — approximate amount of revenue
  - `foundedYear` string — year of founding
  - `address` Address
    - `street1` string — street address, line 1
    - `street2` string — street address, line 2
    - `street3` string — street address, line 3
    - `city` string — city
    - `state` string — state
    - `country` string, required — country (two-digit ISO code)
    - `postal` string — postal code
    - `geo` Geopoint
      - `type` string, required — Type of point
      - `coordinates` number[], required — The longitude and latitude of the point
    - `approxGeo` Geopoint
      - `type` string, required — Type of point
      - `coordinates` number[], required — The longitude and latitude of the point
  - `phone` string — company phone number in E.164 format
  - `email` string — primary contact email
  - `url` string, uri — website URL
  - `domains` OrgDomain[] — domains used by this org
    - `domain` string, required
    - `aliases` string[], required
  - `status` 'ACTIVE' | 'INACTIVE' | 'DISABLED' — current status of organization
  - `imagePath` string — path to full-sized profile image in storage
  - `currencies` string[] — types of currencies in use, with the first currency the primary currency
  - `locales` string[] — locales supported within the org based on user selection, with the first locale the primary locale (e.g., en_US, en_GB, fr_FR, fr_CA)
  - `dataResidency` 'GLOBAL' | 'US' | 'EU' — data residency of the org - the db cluster where this org's data resides
  - `stock` string — stock symbol
  - `timezone` string — timezone in use
  - `appTimes` string[] — approximate times of day in the org timezone for daily app syncs to run (if unset, syncs will run 2am-8am US Eastern Time)
  - `fiscalStart` integer — number of months into the calendar year that the fiscal year starts (1 = February, 2 = March)
  - `portfolioParentOrgId` string — portfolio parent org ID
  - `startDate` string, date — start date of history
  - `options` OrgOptions
    - `costMultiplier` number — Blanket multiplier to apply to all headcount costs, to account for blanket costs such as taxes and benefits
    - `orgEngineIncrementalBackDays` integer — Org engine incremental back day option
    - `stockPriceRollingAverage` integer
    - `bannerMessageExpireDays` integer
    - `dashboardChangeDaysAhead` integer — How many days ahead to look for changes on home screen
    - `dashboardChangeDaysBack` integer — How many days back to look for changes on home screen
    - `dashboardChangeDaysAheadMembers` integer — How many days ahead to look for changes, for members only — i.e. set this to 0 to disallow regular people seeing in the future
    - `dashboardAnniversariesDaysBack` integer
    - `dashboardAnniversariesDaysAhead` integer
    - `maxDateYears` integer — The max number of years ahead shown in date inputs, defaults to 20 years
    - `dashboardGlobal` boolean — If you want employees to see all jobs regardless of location set this to true
    - `dashboardHidePeopleMoves` boolean
    - `dashboardHideOpenJobs` boolean
    - `dashboardRestrictOpenJobs` boolean
    - `dashboardHideAnniversaries` boolean
    - `dashboardHideWeeklyCalendar` boolean — Hides the weekly calendar widget on the home screen
    - `dashboardWeeklyCalendarIncludeWeekends` boolean — Includes weekends in the weekly calendar widget
    - `placesDecimal` integer
    - `placesMoney` integer
    - `placesPercent` integer
    - `placesPayYearly` integer
    - `placesPayHourly` integer
    - `placesVariableAmount` integer
    - `placesVariablePercent` integer
    - `disableCompReviewV2Emails` boolean
    - `disableDataAggregation` boolean
    - `disableDataImportTypes` boolean
    - `disableLiveQuery` boolean
    - `disableWelcomeEmail` boolean
    - `disableOrgExportLimit` boolean — Allows powerpoint exports of over 1000 jobs
    - `disableApproverScenarioEdits` boolean — Disables ability of approvers to modify scenario data
    - `enableActions` boolean
    - `enableAdp` boolean
    - `enableAzure` boolean
    - `enableBackwardsCompatibleCompBandRead` boolean — Backwards compatibility flags for bands UAC
    - `enableColumnCacheLogging` boolean
    - `enableColumnCacheInRedis` boolean
    - `enableTimeOffCacheInRedis` boolean
    - `enableStockGrantCacheInRedis` boolean
    - `enableMapForScenarios` boolean
    - `enablePositionEligibilityFilter` boolean — Enables the CQL eligibility filter input on Group Type position rows
    - `enableCompChangeCacheInRedis` boolean
    - `enableCompReviewV2LaunchFlag` boolean
    - `enableCompImpactDashboard` boolean — Enables the Impact Dashboard tab and settings in Comp Reviews
    - `enableExperimentalScreenshotLayoutChanges` boolean
    - `enableGoogle` boolean
    - `enableMicrosoft` boolean
    - `enableOkta` boolean
    - `enableOneLogin` boolean
    - `enablePassword` boolean
    - `enableStartingSalary` boolean — Enable starting salary configuration for comp bands
    - `enableDynamicFields` boolean — Enable dynamic fields configuration for job codes
    - `enableDynamicJobDialog` boolean — Enable dynamic fields configuration in the job modal
    - `enableDynamicOrgChartCardHeight` boolean — Enables dynamic card height on the org chart to optimize layout based on card content
    - `linkedJobUpdateExcludedCategories` string[] — Field categories excluded from linked field updates on filled jobs. Defaults to compensation categories if null.
    - `jobDialogFilterJobCodeFieldId` string — Determines which field to filter job codes by in the job dialog, defaults to department
    - `enablePerOrgAuth` boolean
    - `enableRickrollLogin` boolean
    - `enableSaml` boolean
    - `disableSamlLoginToken` boolean
    - `enableTemplatesRichTextEditorV2` boolean
    - `enableOrgEngineRequiredFields` boolean — Configures Org Engine to respect required fields
    - `enableLongLivedCache` boolean — Enables a managed service that, on API startup, primes those orgs' caches, for both column cache, as well as the primary org cache. These keys should also last for 24+ hours and therefore be always kept warm.
    - `grantValueDefault` boolean — If enabled, then by default grants are in value, not shares
    - `orgEnginePromoteCustomIdsAsTrueIds` boolean — This field promotes the alternate id to the true id and allows HRIS to be updated
    - `preventAtsEmailNotifications` boolean — Sync History V2 Option to prevent ATS notifications
    - `scenarioCols` string — The default set of comma separated columns to show in the scenario changes screen
    - `enablePowerpointScreenshot` boolean — Enables the powerpoint screenshot export feature, on by default
    - `enableOrgChartIndicators` boolean — Shows the +XX job sibling indicators on the org chart
    - `enableHideEquityCalculator` boolean — Hides the value calculator on the equity section of the profile
    - `enableTransformFieldMapper` boolean — Enables the ability to configure the One to One field mapper with a Charthop Default Value
    - `enableFullNamesTitlesLegacy` boolean — Shows full names in powerpoint exports
    - `disableSiblingIndicators` boolean — Disables the sibling indicators on the org chart
    - `enableGrantCustomization` boolean — Enables grant aliases in the financial settings
    - `enableScenarioChangesV2` boolean — Enables new scenario changes screen
    - `enableScenarioAuditLog` boolean — Enables the audit log tab for scenarios
    - `showErrorRows` boolean
    - `hideEquityValuation` boolean — Hides the company valuation component of the calculation in the Equity profile tab (stock price will still be shown)
    - `hideProfileCompensationVesting` boolean — Hides the vesting section of the compensation profile tab
    - `hideScenarioTotalRows` boolean — Hide total rows in scenario change summary tables
    - `generateApprovalRequestsForTimeOffImport` boolean
    - `recalculateDaysForTimeOffImport` boolean
    - `positionIdField` string — Name of the job field that holds the org's Position ID for display in pickers
    - `enableCompBandPrefetchByJobCode` boolean
    - `legacyManagerFieldVisibility` boolean
    - `restrictReports` boolean
    - `restrictScenarios` boolean
    - `restrictSensitiveFilters` boolean
    - `restrictVariableView` boolean
    - `restrictVestingView` boolean
    - `restrictPersonHistory` boolean
    - `restrictSelfEdit` boolean
    - `skipSyncNotify` boolean
    - `hideCompensationTab` boolean
    - `hideEquityTab` boolean
    - `hideTasksTab` boolean
    - `hideTimeOffTab` boolean
    - `hideProfileCurrencyConversion` boolean — Hides profile currency conversion on compensation tab
    - `enableCalendarExport` boolean
    - `enableChangeExport` boolean
    - `deidentifiedMinSampleSize` integer
    - `deidentifiedFieldIds` string[]
    - `enableAi` boolean — Enable AI features like chart analysis and review calibrations
    - `enableAiSummaries` boolean — Enable AI form response summaries
    - `enableAiChatButtons` boolean — Enables the AI Ask ChartHop chatbot feature via interaction buttons
    - `enableMobileAiVoice` boolean — Enables the AI Voice feature in ChartHop mobile
    - `limitAiChatButtonsUserIds` string[] — Limits the usage of the buttons to a set of User IDs
    - `enableAiChatAsk` boolean — Enables the open-ended AI Ask ChartHop chatbot feature
    - `enableAiHomePage` boolean — Enables the AI-centric home page
    - `limitAiChatbotUserIds` string[] — Limits the usage of the AI chatbot feature to a set of User IDs
    - `enableAiScenarioPlanning` boolean — Enables the AI scenario planning feature
    - `limitAiScenarioPlanningUserIds` string[] — Limits the usage of the AI chatbot scenario planning feature to a set of User IDs
    - `aiChatDisableStreaming` boolean — Disable streaming for ai chat messages
    - `enableAiTerminationGuardrail` boolean — Disable ability for AI to recommend terminations in scenarios
    - `aiChatAgentUserId` string — Which agent is used by default in chat, instead of the ChartHop AI
    - `enableAiAgents` boolean — Enable the use of AI agents
    - `enableAiForms` boolean — Enable the use of AI form completions
    - `enableAiActions` boolean — Enable the use of AI agentic actions
    - `enableAiChatWrite` boolean — Enable AI chat write tools (create, update, delete entities)
    - `enableDataExplorer` boolean — Enables the Data Explorer feature
    - `enableFinanceImpactDashboard` boolean — Enables the finance-oriented impact dashboard
    - `limitDataExplorerUserIds` string[] — Limits the usage of the Data Explorer to a set of User IDs
    - `limitInfiniteDataSheetGroupingUserIds` string[] — Limits the usage of the new Infinite Data Sheet with grouping to a set of User IDs
    - `enableUserSettingsV2` boolean
    - `enableCalendarScreen` boolean
    - `enableCompensationBands` boolean — Enables Comp bands V2 (on by default for Premium customers)
    - `enableCompBandsSetupSpreadsheet` boolean — Enables the new comp bands setup spreadsheet UI (AG Grid). Absent/false = legacy path.
    - `easyAppInstallConfigManageEnabled` boolean — Enables easy app install (on by default for self-serve & standard orgs)
    - `enableGeoip` boolean
    - `enableGreenhouseUpgrade` boolean — Lets org admins, not just ChartHop staff, move the Greenhouse install onto the new Greenhouse API
    - `enableNewHireManagement` boolean
    - `enableOutboundPayroll` boolean
    - `enableRefreshedReportsV2` boolean
    - `enableLanguageSwitching` boolean
    - `hideNextYearTabPolicyTimeOffDisplay` boolean
    - `enableInfiniteDataSheet` boolean — Enables infinite scrolling with server-side sorting and pagination in Data Sheet
    - `infiniteDataSheetPageSize` integer — Number of rows to load per page in infinite scrolling Data Sheet (default: 100)
    - `enableDataSheetGrouping` boolean — Enables grouping functionality in Data Sheet
    - `userTablePaginated` boolean — Enables server-side paginated user table with search, filter, and sort via findUsers
    - `enableTables` boolean
    - `enableTeamOrgChart` boolean — Enables groups with positions feature
    - `enableDepartedPersonAccessDirection` boolean
    - `enableForceChangeGroupingOrgCacheReload` boolean
    - `enableGroupTypes` boolean
    - `enablePreboarding` boolean — Enables preboarding features
    - `allowedIpsPasswordLogin` string[] — IP Allow-list for Password based logins
    - `jobDetailPanelFields` string[] — Customize which fields are displayed in the job details panel in the Org Chart and their order.
    - `notifyUserIds` string[] — Sends notification to org users when new Users are assigned
    - `orgEngineCustomIdCustomFieldNameList` string[] — This is an array of fields that an org can use to indicate that one or more fields should be used as alternate id
    - `highlightMenuPreferredFields` string[]
    - `impactGroupByExcludedFieldIds` string[] — Field IDs excluded from the Impact Dashboard Group By picker
    - `profileGroupTypeTagIds` string[] — The types of groups that should be shown as tags in the profile header, defaults to department and location
    - `pptThemes` object[]
    - `editJobFieldOrder` object — Allows ordering of fields within tabs of the edit job dialog
    - `profileCompensationChartFields` string[] — Controls comp fields show in profile tab
    - `orgMinDate` string — min Date for all DateInput across Org except Groups in format YYYY-MM-DD
    - `aboutEquityMessage` string — Message to show in place of the default About equity compensation... message on profile tab
    - `atsReqField` string — If an org has an ATS integration, use their atsReqField instead of greenhouseId
    - `bannerMessage` string
    - `bannerHeader` string
    - `brandColor` string — The org's primary brand color
    - `brandSecondaryColor` string — The org's secondary brand color
    - `brandLogo` string — Show brand logo in header of home page
    - `customSsoImage` string — Customizes the SSO button image on the login screen
    - `customSsoLabel` string — Customizes the SSO button label on the login screen
    - `dashboardAnnouncementMessage` string
    - `dashboardCalendarTypes` object — Comma-separated types of calendar events to show in milestones panel
    - `dashboardChangeTypes` object — Which change types to show on home screen and calendar, uses ChangeDao.ChangeType as enum
    - `dateFormat` string
    - `defaultNoTimeOffMessage` string — Message to show if no time off policies apply to the org member
    - `greenhouseDomain` string — Allows customization of greenhouse subdomain for XHOP app
    - `country` string
    - `language` string
    - `limitTeamOrgChartUserIds` string[] — A list of users ids that are allowed to see the team org chart when enableTeamOrgChart is true
    - `orgDefaultData` string — Controls what data field will be shown in the Visualize option on the Org Chart by default (default is department)
    - `loginRedirectUrl` string
    - `newHireOpenJobMatchingFieldName` string — Custom field for fallback open job matching in org engine
    - `restrictExportOrgChart` string — Prevent non-sensitive users to export company org chart
    - `restrictExportCsv` string — Prevent non-sensitive users to export company data in CSV files
    - `teamOrgChartTypes` string[] — A filter that can show/hide what toggle options are available on the team org chart, when null everything is shown
    - `timeOffDaysAhead` integer — The number of days ahead which PTO becomes org public. Anything outside of this range will be treated as effectively manager shared
    - `userSessionDuration` string
    - `userSessionInactiveDuration` string
    - `userInviteDuration` string
    - `turnoverFormula` string — Turnover rate calculation formula - 'monthlyEnd' for end-of-month sampling
    - `welcomeEmailButtonLabel` string
    - `welcomeEmailSubject` string
    - `customWelcomeMessage` string
    - `preboardingWelcomeEmailButtonLabel` string
    - `preboardingWelcomeEmailSubject` string
    - `preboardingCustomWelcomeHeader` string
    - `preboardingCustomWelcomeMessage` string
    - `orgDefaultFilter` string
    - `sheetDefaultFilter` string
    - `preboardingFilter` string
    - `onboardingFilter` string
    - `offboardingFilter` string
    - `preboardingColNames` string
    - `onboardingColNames` string
    - `offboardingColNames` string
    - `defaultMessageChannel` MessageChannelConfig
      - `channels` string[], required
      - `alwaysEmail` boolean, required
    - `allowCharthopMobileApp` boolean
    - `timeOffPolicyTypeOrder` string[] — The order in which time off policies should be sorted by type (types not included here are sorted at the end)
    - `enableFormRejections` boolean — Enables form rejections instead of request changes, for backwards compatiblity
    - `enableCalibration` boolean — Enables the calibration feature for performance reviews
    - `useStandardizedTitle` string — Whether to suggest or enforce standardized titles
    - `enableProfilePageV2` boolean — Enables the redesigned profile page
    - `enableHomeCustomLayout` boolean — Enables using a custom layout for the home page
    - `homeCustomLayout` Layout
      - `rows` LayoutRow[], required
        - `columns` LayoutColumn[], required
          - `blocks` Block[], required
            - `type` 'CONTENT' | 'TASK' | 'CALENDAR' — the type of this block, or null if legacy
            - `label` string — human readable label for this block
            - `height` object — fixed height in px, or expand if “stretch”, or fit to contents if null
            - `targetFilter` string — filter condition expression applied to this block, used to determine whether the content appears on the target or not
            - `readFilter` string — filter condition expression applied to this block, relative to the viewer
            - `formIds` string[] — form ids to surface responses in this block
            - `fields` string[] — fields retrieved in this block
            - `title` string — title to show in block header
            - `content` string — template content returned in this block
            - `contentTr` Translations
              - …
            - `primaryButton` LayoutButton
              - …
            - `secondaryButton` LayoutButton
              - …
        - `format` string, required
    - `enableSkipSignatureConfirmationEmail` boolean — Temporary option to turn on skipping emails for signatures, until we have a better solution for miller-cooper
    - `disableSignatureTitles` boolean — When set to true, do not include job titles in signatures
    - `enableHiddenRolesAndPolicies` boolean
    - `enableAlphaApps` boolean — Allows this org to access applications in alpha
    - `csvImportMaxNumRows` integer — The maximum number of rows for CSV imports
    - `enableGoals` boolean — Enable goal-setting features in the org
    - `disableAiMemory` boolean — Disable AI agent persistent memory in the org
    - `enableLegacyBands` boolean — Enable bands V1 feature in the org
    - `enableApprovalDelegates` boolean — Enable Approval Delegates feature in the org
    - `useImporterV3` boolean — Whether to use the v3 job importer
    - `useImporterV3ScenarioOnly` boolean — Whether to use the v3 job importer for scenario imports only
    - `logImportErrorsUsingJavaLogger` boolean — Whether the v3 job importer should log errors to the java logger in addition to the log file
    - `enableIdentitySyncLogging` boolean — Emit verbose identity sync deactivation diagnostics to the process log
    - `scenarioCostExpr` string — Cost calculation used for scenarios by default, if not set defaults to annualized cost with multiplier
    - `defaultCostBasis` 'ANNUALIZED' | 'PERIOD_TOTAL' — Default cost measurement basis for budgets when a budget does not set its own; if not set defaults to PERIOD_TOTAL
    - `scenarioCostLabel` string — Label to show for cost in scenarios, if not set defaults to 'Annual Cost'
    - `scenarioCostDescription` string — Description to show for cost in scenarios,
    - `disableAiKnowledgeBase` boolean — Global option to disable AI knowledge base usage (typically for AWS outages)
    - `qesFilter` string — filter expression evaluated on each signer for whether to use qualified electronic signature (if it evaluates to true for any signer, QES will be used)
    - `disableQes` boolean — disable QES usage while still using external vendor, purely for testing
    - `enableBudgets` boolean — enable budgets feature
    - `enableEndOfYearTimeOffBalanceDisplay` boolean — display end-of-year balance (roughly) on the time off profile page even for accrued policies
    - `timeOffCustomBalanceDescription` string — custom time off balance description (if blank, shows default message)
    - `csvImportReassignDirectReportsOnMove` boolean — Set the reassignDirectReportsOnMove import option (reassign a moved manager's reports to the target job)
    - `csvImportEnableRelaxedMode` boolean — Set the enableRelaxedMode import option (loosen create-date / missing-manager / depart-date-delete validations)
    - `defaultBackfillJobSensitivity` 'GLOBAL' | 'ORG' | 'SENSITIVE' | 'PERSONAL' | 'MANAGER' | 'HIGH' | 'PRIVATE' — Default sensitivity for backfill jobs (defaults to HIGH if not set)
    - `jobCodeMatchMaxCatalogSize` integer — Maximum number of job codes allowed for AI job-code matching (default: 1000)
  - `internalOptions` InternalOrgOptions
    - `adpOrganizationOID` string
    - `assessmentCount` integer
    - `dashboardGettingStartedHidden` boolean
    - `dashboardNeedHelpHidden` boolean
    - `enableUniversalSso` boolean
    - `sequoiaOrgId` string
    - `tosAgreement` boolean
    - `fileUploadLimit` integer
    - `maxFileUploadSize` integer
    - `lowPriorityReports` boolean
    - `isInitialDataSynced` boolean
    - `maxReportDatapoints` integer
    - `disableImportEvents` boolean — Whether to disable event notifications on imports -- should only be used temporarily in performance-critical initial imports
    - `useAlphaSlackApp` boolean — Use the alpha Slack app (a second real Slack app sharing the global 'slack' install) instead of the default for inbound hooks and outbound messages — ChartHop-staff only, for Slack-team app-review testing
    - `extraFields` object
  - `onboarding` boolean — current onboarding status of an organization, allowing clearing of org
  - `selfServeImporting` boolean — completion status of initial import for orgs signed up via self serve
  - `headCount` integer — number of total headcount currently in the org

## Response `204`

org updated

## Other responses

- `400` — invalid data
- `401` — not authorized
- `403` — permission denied
- `404` — not found

---

[API](https://skmtc.net/charthop/apis/charthop-api.md) · [All operations](https://skmtc.net/charthop/apis/charthop-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/charthop/charthop-api/versions/50a1edd6b27e/schema)
