---
title: "Update an Organization"
method: PUT
path: "/organizations/{id}"
tags: ["Organizations"]
---

# Update an Organization

`PUT /organizations/{id}`

## Request

- Base URL: `https://console.jumpcloud.com/api`
- URL: `https://console.jumpcloud.com/api/organizations/{id}`
- Auth: API key in header `x-api-key`
- TypeScript: <https://skmtc.dev/jumpcloud/apis/jumpcloud-api/docs/organizations/:id/put.ts> (a function with typed inputs; its response is checked against the schema)

This endpoint allows you to update an Organization.

Note: `passwordPolicy` settings are only used when `passwordCompliance` is set to "custom". We discourage the use of non-custom passwordCompliance values.

`emailDisclaimer` can only be modified by paying customers.

`hasStripeCustomerId` is deprecated and will be removed.

#### Sample Request

```
curl -X PUT https://console.jumpcloud.com/api/organizations/{OrganizationID} \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: {API_KEY}' \
  -d '{
  "settings": {
    "contactName": "Admin Name",
    "contactEmail": "admin@company.com",
    "systemUsersCanEdit":true,
    "passwordPolicy": {
      "enableMaxHistory": true,
      "maxHistory": 3
    }
  }
}'
```

## Request body

- object
  - `settings` Organizationsettingsput
    - `contactEmail` string, email
    - `contactName` string
    - `disableLdap` boolean
    - `disableUM` boolean
    - `duplicateLDAPGroups` boolean
    - `emailDisclaimer` string
    - `enableManagedUID` boolean
    - `features` object
      - `directoryInsightsPremium` object
        - `enabled` boolean
        - `createdAt` string
        - `updatedAt` string
      - `systemInsights` object
        - `enableNewDarwin` boolean
        - `enableNewLinux` boolean
        - `enableNewWindows` boolean
        - `enabled` boolean
        - `createdAt` string
        - `updatedAt` string
      - `directoryInsights` object
        - `enabled` boolean
    - `growthData` object: Object containing Optimizely experimentIds and states corresponding to them
    - `logo` string
    - `name` string
    - `newSystemUserStateDefaults` object
      - `applicationImport` 'ACTIVATED' | 'STAGED'
      - `csvImport` 'ACTIVATED' | 'STAGED'
      - `manualEntry` 'ACTIVATED' | 'STAGED'
    - `passwordCompliance` 'custom' | 'pci3' | 'windows'
    - `passwordPolicy` object
      - `allowUnenrolledMFAPasswordReset` boolean
      - `allowUsernameSubstring` boolean
      - `daysAfterExpirationToSelfRecover` integer: Deprecated field used for the legacy grace period feature.
      - `daysBeforeExpirationToForceReset` integer
      - `disallowCommonlyUsedPasswords` boolean
      - `disallowCustomBannedPasswords` boolean
      - `disallowNameSubstring` boolean
      - `disallowSequentialOrRepetitiveChars` boolean
      - `displayComplexityOnResetScreen` boolean
      - `effectiveDate` string
      - `enableDaysAfterExpirationToSelfRecover` boolean
      - `enableDaysBeforeExpirationToForceReset` boolean
      - `enableLockoutTimeInSeconds` boolean
      - `enableMaxHistory` boolean
      - `enableMaxLoginAttempts` boolean
      - `enableMinChangePeriodInDays` boolean
      - `enableMinLength` boolean
      - `enableNameConsecutiveChars` boolean
      - `enablePasswordExpirationInDays` boolean
      - `gracePeriodDate` string
      - `lockoutTimeInSeconds` integer
      - `maxHistory` integer
      - `maxLoginAttempts` integer
      - `minChangePeriodInDays` integer
      - `minLength` integer
      - `nameConsecutiveChars` integer
      - `needsLowercase` boolean
      - `needsNumeric` boolean
      - `needsSymbolic` boolean
      - `needsUppercase` boolean
      - `passwordExpirationInDays` integer
    - `showIntro` boolean
    - `systemUserDefaults` object
      - `restrictedFields` RestrictedField[]
        - `field` 'addresses' | 'company' | 'costCenter' | 'department' | 'description' | 'displayname' | 'email' | 'employeeIdentifier' | 'employeeType' | 'firstname' | 'jobTitle' | 'lastname' | 'location' | 'middlename' | 'password' | 'phoneNumbers' | 'sudo' | 'username'
        - `type` 'active_directory' | 'federated_identity_provider' | 'scim'
        - `id` string
    - `systemUserPasswordExpirationInDays` integer
    - `systemUsersCanEdit` boolean
    - `disableGoogleLogin` boolean
    - `userPortal` object
      - `idleSessionDurationMinutes` integer
      - `cookieExpirationType` 'session' | 'date'
    - `deviceIdentificationEnabled` boolean
    - `trustedAppConfig` TrustedappConfigPut: Object containing information about the list of trusted applications for the organization
      - `trustedApps` object[], required: List of authorized apps for the organization
        - `name` string, required: Name of the trusted application
        - `path` string: Absolute path for the app's location in user's device
        - `teamid` string: App's Team ID
    - `maxSystemUsers` integer

## Response `200`

OK

- Organization
  - `_id` string
  - `created` string
  - `customEmailSettings` CustomEmailSettings: Custom email settings for an organization
    - `enabled` boolean: Used to enable or disable custom emails for an organization.
  - `displayName` string
  - `entitlement` Organizationentitlement
    - `billingModel` string
    - `capUserQuantity` boolean
    - `maxUserQuantity` integer
    - `purchaseChannel` string
    - `entitlementProducts` object[]
      - `committedUsers` integer
      - `contractType` string
      - `maxUserCount` integer
      - `name` string
      - `pricePerUser` integer
      - `productCategory` string
      - `productCode` string
      - `uncommittedUsers` integer
    - `isManuallyBilled` boolean
    - `pricePerUserSum` integer
  - `hasStripeCustomerId` boolean
  - `hasCreditCard` boolean
  - `lastEstimateCalculationTimeStamp` string
  - `lastSfdcSyncStatus` object
  - `accountsReceivable` string
  - `accessRestriction` string
  - `accountType` 'Alliance' | 'Distributor' | 'MSP' | 'VAR' | 'Direct' | 'Indirect' | 'Tenant' | 'Deleted Organization' | 'Partner' | 'Customer' | 'Prospective Customer' | 'Prospective Partner': Salesforce Account Type (`Account_Type__c`) written back to the org via BSS sync. Returned only when requested via the `fields` query parameter.
  - `logoUrl` string, nullable
  - `provider` string, nullable
  - `settings` Organizationsettings
    - `agentVersion` string
    - `betaFeatures` object
    - `chromeDTCEnabled` boolean
    - `contactEmail` string, email
    - `contactName` string
    - `disableCommandRunner` boolean
    - `disableLdap` boolean
    - `disableUM` boolean
    - `duplicateLDAPGroups` boolean
    - `emailDisclaimer` string
    - `enableGoogleApps` boolean
    - `enableManagedUID` boolean
    - `enableO365` boolean
    - `enableUserPortalAgentInstall` boolean
    - `features` object
      - `directoryInsightsPremium` object
        - `enabled` boolean
        - `createdAt` string
        - `updatedAt` string
      - `systemInsights` object
        - `enableNewDarwin` boolean
        - `enableNewLinux` boolean
        - `enableNewWindows` boolean
        - `enabled` boolean
        - `createdAt` string
        - `updatedAt` string
      - `directoryInsights` object
        - `enabled` boolean
    - `growthData` object: Object containing Optimizely experimentIds and states corresponding to them
    - `logo` string
    - `name` string
    - `newSystemUserStateDefaults` object
      - `applicationImport` 'ACTIVATED' | 'STAGED': The default user state for a user created using the [Bulk Users Create](https://docs.jumpcloud.com/api/2.0/index.html#operation/bulk_usersCreate) endpoint. See endpoint documentation for more details.
      - `csvImport` 'ACTIVATED' | 'STAGED': The default user state for a user created using the [Bulk Users Create](https://docs.jumpcloud.com/api/2.0/index.html#operation/bulk_usersCreate) endpoint. See endpoint documentation for more details.
      - `manualEntry` 'ACTIVATED' | 'STAGED': The default state for a user that is created using the [Create a system user](https://docs.jumpcloud.com/api/1.0/index.html#operation/systemusers_post) endpoint. See endpoint documentation for more details.
    - `passwordCompliance` 'custom' | 'pci3' | 'windows'
    - `passwordPolicy` object
      - `allowUnenrolledMFAPasswordReset` boolean
      - `allowUsernameSubstring` boolean
      - `daysAfterExpirationToSelfRecover` integer: Deprecated field used for the legacy grace period feature.
      - `daysBeforeExpirationToForceReset` integer
      - `disallowCommonlyUsedPasswords` boolean
      - `disallowCustomBannedPasswords` boolean
      - `disallowNameSubstring` boolean
      - `disallowSequentialOrRepetitiveChars` boolean
      - `displayComplexityOnResetScreen` boolean
      - `effectiveDate` string
      - `enableDaysAfterExpirationToSelfRecover` boolean
      - `enableDaysBeforeExpirationToForceReset` boolean
      - `enableLockoutTimeInSeconds` boolean
      - `enableMaxHistory` boolean
      - `enableMaxLoginAttempts` boolean
      - `enableMinChangePeriodInDays` boolean
      - `enableMinLength` boolean
      - `enableNameConsecutiveChars` boolean
      - `enablePasswordExpirationInDays` boolean
      - `gracePeriodDate` string
      - `lockoutTimeInSeconds` integer
      - `maxHistory` integer
      - `maxLoginAttempts` integer
      - `minChangePeriodInDays` integer
      - `minLength` integer
      - `nameConsecutiveChars` integer
      - `needsLowercase` boolean
      - `needsNumeric` boolean
      - `needsSymbolic` boolean
      - `needsUppercase` boolean
      - `passwordExpirationInDays` integer
      - `enableResetLockoutCounter` boolean
      - `resetLockoutCounterMinutes` integer
      - `enableRecoveryEmail` boolean
    - `pendingDelete` boolean
    - `requireAdminMFA` boolean
    - `showIntro` boolean
    - `systemUserDefaults` object
      - `restrictedFields` RestrictedField[]
        - `field` 'addresses' | 'company' | 'costCenter' | 'department' | 'description' | 'displayname' | 'email' | 'employeeIdentifier' | 'employeeType' | 'firstname' | 'jobTitle' | 'lastname' | 'location' | 'middlename' | 'password' | 'phoneNumbers' | 'sudo' | 'username'
        - `type` 'active_directory' | 'federated_identity_provider' | 'scim'
        - `id` string
    - `systemUserPasswordExpirationInDays` integer
    - `systemUsersCanEdit` boolean
    - `disableGoogleLogin` boolean
    - `userPortal` object
      - `idleSessionDurationMinutes` integer
      - `cookieExpirationType` 'session' | 'date'
    - `deviceIdentificationEnabled` boolean
    - `trustedAppConfig` TrustedappConfigGet: Object containing information about the list of trusted applications for the organization
      - `checksum` string, required: Checksum to validate the trustedApp configuration for the organization
      - `trustedApps` object[], required: List of authorized apps for the organization
        - `name` string, required: Name of the trusted application
        - `path` string: Absolute path for the app's location in user's device
        - `teamid` string: App's Team ID
    - `maxSystemUsers` integer
    - `windowsMDM` object
      - `enabled` boolean: Indicates if the Windows MDM is active.
      - `autoEnroll` boolean: Indicates if MDM Auto Enroll is active.
  - `totalBillingEstimate` integer

## Other responses

- `400`: Bad Request
- `401`: Unauthorized

---

[API](https://skmtc.dev/jumpcloud/apis/jumpcloud-api.md) - [All operations](https://skmtc.dev/jumpcloud/apis/jumpcloud-api/llms.txt) - [OpenAPI document](https://skmtc.dev/jumpcloud/apis/jumpcloud-api/revisions/0762c7d17a26?raw)
