> You are reading the Docusign Developer Documentation. For clean Markdown of any page, append .md to the page URL.
>
> Documentation indexes by section:
> - APIs and SDKs: https://docusign.docs.buildwithfern.com/docs/llms.txt
> - Platform 101: https://docusign.docs.buildwithfern.com/platform/llms.txt
> - Extension Apps: https://docusign.docs.buildwithfern.com/extension-apps/llms.txt
> - Docusign CLI: https://docusign.docs.buildwithfern.com/docusign-cli/llms.txt
>
> Authentication (OAuth, JWT Grant, M2M): https://docusign.docs.buildwithfern.com/platform/auth
> Webhooks and Connect: https://docusign.docs.buildwithfern.com/platform/webhooks
>
> OpenAPI specifications: https://docusign.docs.buildwithfern.com/openapi.json
> MCP server: https://docusign.docs.buildwithfern.com/_mcp/server

# Update password rules

PUT https://demo.docusign.net/restapi/v2.1/accounts/{accountId}/settings/password_rules
Content-Type: application/json

This method updates the password rules for an account.

**Note:** To update the password rules for an account, you must be an account administrator.

Reference: https://developers.docusign.com/docs/esign-rest-api/reference/accounts/accountpasswordrules/update

## Authentication

- `Authorization` header (required) (prefixed with ` Bearer  `) — OAuth 2.0 access token (JWT or auth-code grant). Sent as `Authorization: Bearer <token>` on every request except `GET /v2.1` and `GET /service_information`, which are public discovery endpoints.

## Servers

- `https://demo.docusign.net/restapi` (Demo, default)
- `https://www.docusign.net/restapi` (Production)

## Request

### Path parameters

- `accountId` (string, required) — The external account number (int) or account ID Guid.

### Body (application/json)

This endpoint expects an accountPasswordRules.

- `expirePassword` (string, optional) — When **true,** passwords expire. The default value is `false`.
- `expirePasswordDays` (string, optional) — The number of days before passwords expire. To use this property, the `expirePassword` property must be set to **true.**
- `expirePasswordDaysMetadata` (accountPasswordExpirePasswordDays, optional)
- `lockoutDurationMinutes` (string, optional) — The number of minutes a user is locked out of the system after three failed login attempts. The default value is `2`.
- `lockoutDurationMinutesMetadata` (accountPasswordLockoutDurationMinutes, optional)
- `lockoutDurationType` (string, optional) — The interval associated with the user lockout after a failed login attempt. Possible values are: - `minutes` (default) - `hours` - `days`
- `lockoutDurationTypeMetadata` (accountPasswordLockoutDurationType, optional)
- `minimumPasswordAgeDays` (string, optional) — The minimum number of days after a password is set before it can be changed. This value can be `0` or more days. The default value is `0`.
- `minimumPasswordAgeDaysMetadata` (accountPasswordMinimumPasswordAgeDays, optional)
- `minimumPasswordLength` (string, optional) — The minimum number of characters in the password. This value must be a number between `6` and `15`. The default value is `6`.
- `minimumPasswordLengthMetadata` (accountMinimumPasswordLength, optional)
- `passwordIncludeDigit` (string, optional) — When **true,** passwords must include a digit. The default value is `false`.
- `passwordIncludeDigitOrSpecialCharacter` (string, optional) — When **true,** passwords must include either a digit or a special character. The default value is `false`. **Note:** Passwords cannot include angle brackets (`<` `>`) or spaces.
- `passwordIncludeLowerCase` (string, optional) — When **true,** passwords must include a lowercase letter. The default value is `false`.
- `passwordIncludeSpecialCharacter` (string, optional) — When **true,** passwords must include a special character. The default value is `false`. **Note:** Passwords cannot include angle brackets (`<` `>`) or spaces.
- `passwordIncludeUpperCase` (string, optional) — When **true,** passwords must include an uppercase letter. The default value is `false`.
- `passwordStrengthType` (string, optional) — The type of password strength. Possible values are: - `basic`: The minimum password length is 6 characters with no other password requirements. - `medium`: The minimum password length is 7 characters. Passwords must also have one uppercase letter, one lowercase letter, and one number or special character. - `strong`: The minimum password length is 9 characters. Passwords must also have one uppercase letter, one lowercase letter, one number, and one special character. - `custom`: This option enables you to customize password requirements, including the following properties: - `minimumPasswordLength` - `minimumPasswordAgeDays` - `passwordIncludeDigit` - `passwordIncludeDigitOrSpecialCharacter` - `passwordIncludeLowerCase` - `passwordIncludeSpecialCharacter` - `passwordIncludeUpperCase` - `questionsRequired`
- `passwordStrengthTypeMetadata` (accountPasswordStrengthType, optional)
- `questionsRequired` (string, optional) — The number of security questions required to confirm the user’s identity before the user can reset their password. The default value is `0`.
- `questionsRequiredMetadata` (accountPasswordQuestionsRequired, optional) — Information about the number of password questions required (0 to 4) to confirm a user's identity when a user needs to reset their password.

## Response

### 200

Successful response.

- `expirePassword` (string, optional) — When **true,** passwords expire. The default value is `false`.
- `expirePasswordDays` (string, optional) — The number of days before passwords expire. To use this property, the `expirePassword` property must be set to **true.**
- `expirePasswordDaysMetadata` (accountPasswordExpirePasswordDays, optional)
- `lockoutDurationMinutes` (string, optional) — The number of minutes a user is locked out of the system after three failed login attempts. The default value is `2`.
- `lockoutDurationMinutesMetadata` (accountPasswordLockoutDurationMinutes, optional)
- `lockoutDurationType` (string, optional) — The interval associated with the user lockout after a failed login attempt. Possible values are: - `minutes` (default) - `hours` - `days`
- `lockoutDurationTypeMetadata` (accountPasswordLockoutDurationType, optional)
- `minimumPasswordAgeDays` (string, optional) — The minimum number of days after a password is set before it can be changed. This value can be `0` or more days. The default value is `0`.
- `minimumPasswordAgeDaysMetadata` (accountPasswordMinimumPasswordAgeDays, optional)
- `minimumPasswordLength` (string, optional) — The minimum number of characters in the password. This value must be a number between `6` and `15`. The default value is `6`.
- `minimumPasswordLengthMetadata` (accountMinimumPasswordLength, optional)
- `passwordIncludeDigit` (string, optional) — When **true,** passwords must include a digit. The default value is `false`.
- `passwordIncludeDigitOrSpecialCharacter` (string, optional) — When **true,** passwords must include either a digit or a special character. The default value is `false`. **Note:** Passwords cannot include angle brackets (`<` `>`) or spaces.
- `passwordIncludeLowerCase` (string, optional) — When **true,** passwords must include a lowercase letter. The default value is `false`.
- `passwordIncludeSpecialCharacter` (string, optional) — When **true,** passwords must include a special character. The default value is `false`. **Note:** Passwords cannot include angle brackets (`<` `>`) or spaces.
- `passwordIncludeUpperCase` (string, optional) — When **true,** passwords must include an uppercase letter. The default value is `false`.
- `passwordStrengthType` (string, optional) — The type of password strength. Possible values are: - `basic`: The minimum password length is 6 characters with no other password requirements. - `medium`: The minimum password length is 7 characters. Passwords must also have one uppercase letter, one lowercase letter, and one number or special character. - `strong`: The minimum password length is 9 characters. Passwords must also have one uppercase letter, one lowercase letter, one number, and one special character. - `custom`: This option enables you to customize password requirements, including the following properties: - `minimumPasswordLength` - `minimumPasswordAgeDays` - `passwordIncludeDigit` - `passwordIncludeDigitOrSpecialCharacter` - `passwordIncludeLowerCase` - `passwordIncludeSpecialCharacter` - `passwordIncludeUpperCase` - `questionsRequired`
- `passwordStrengthTypeMetadata` (accountPasswordStrengthType, optional)
- `questionsRequired` (string, optional) — The number of security questions required to confirm the user’s identity before the user can reset their password. The default value is `0`.
- `questionsRequiredMetadata` (accountPasswordQuestionsRequired, optional) — Information about the number of password questions required (0 to 4) to confirm a user's identity when a user needs to reset their password.

## Errors

### 400 Bad Request Error

Error encountered.

- `errorCode` (string, optional) — The code associated with the error condition.
- `message` (string, optional) — A brief message describing the error condition.

## Types

### accountPasswordExpirePasswordDays

- `maximumDays` (string, optional)
- `minimumDays` (string, optional)

### accountPasswordLockoutDurationMinutes

- `maximumMinutes` (string, optional)
- `minimumMinutes` (string, optional)

### accountPasswordLockoutDurationType

- `options` (list of string, optional) — An array of option strings supported by this setting.

### accountPasswordMinimumPasswordAgeDays

- `maximumAge` (string, optional)
- `minimumAge` (string, optional)

### accountMinimumPasswordLength

- `maximumLength` (string, optional) — The maximum number of entry characters supported by the custom tab.
- `minimumLength` (string, optional) — Minimum length of the access code string.

### accountPasswordStrengthType

- `options` (list of accountPasswordStrengthTypeOption, optional) — An array of option strings supported by this setting.

### accountPasswordQuestionsRequired

Information about the number of password questions required (0 to 4) to confirm a user's identity when a user needs to reset their password.

- `maximumQuestions` (string, optional) — The maximum number of password reset questions allowed for the account. This number must be between `0` and `4`, and equal to or greater than `minimumQuestions`.
- `minimumQuestions` (string, optional) — The minimum number of password reset questions allowed for the account. This number must be between `0` and `4`, and equal to or less than `maximumQuestions`.

### accountPasswordStrengthTypeOption

- `minimumLength` (string, optional) — Minimum length of the access code string.
- `name` (string, optional)
- `passwordIncludeDigit` (string, optional) — When **true,** passwords must include a digit. The default value is `false`.
- `passwordIncludeDigitOrSpecialCharacter` (string, optional) — When **true,** passwords must include either a digit or a special character. The default value is `false`. **Note:** Passwords cannot include angle brackets (`<` `>`) or spaces.
- `passwordIncludeLowerCase` (string, optional) — When **true,** passwords must include a lowercase letter. The default value is `false`.
- `passwordIncludeSpecialCharacter` (string, optional) — When **true,** passwords must include a special character. The default value is `false`. **Note:** Passwords cannot include angle brackets (`<` `>`) or spaces.
- `passwordIncludeUpperCase` (string, optional) — When **true,** passwords must include an uppercase letter. The default value is `false`.

## Examples

**Request**

```json
{
  "expirePassword": "sample string 1",
  "expirePasswordDays": "sample string 2",
  "expirePasswordDaysMetadata": {
    "maximumDays": "sample string 1",
    "minimumDays": "sample string 2"
  },
  "lockoutDurationMinutes": "sample string 3",
  "lockoutDurationMinutesMetadata": {
    "maximumMinutes": "sample string 1",
    "minimumMinutes": "sample string 2"
  },
  "lockoutDurationType": "sample string 4",
  "lockoutDurationTypeMetadata": {
    "options": [
      "sample string 1"
    ]
  },
  "minimumPasswordAgeDays": "sample string 5",
  "minimumPasswordAgeDaysMetadata": {
    "maximumAge": "sample string 1",
    "minimumAge": "sample string 2"
  },
  "minimumPasswordLength": "sample string 6",
  "minimumPasswordLengthMetadata": {
    "maximumLength": "sample string 1",
    "minimumLength": "sample string 2"
  },
  "passwordIncludeDigit": "sample string 7",
  "passwordIncludeDigitOrSpecialCharacter": "sample string 8",
  "passwordIncludeLowerCase": "sample string 9",
  "passwordIncludeSpecialCharacter": "sample string 10",
  "passwordIncludeUpperCase": "sample string 11",
  "passwordStrengthType": "sample string 12",
  "passwordStrengthTypeMetadata": {
    "options": [
      {
        "minimumLength": "sample string 1",
        "name": "sample string 2",
        "passwordIncludeDigit": "sample string 3",
        "passwordIncludeDigitOrSpecialCharacter": "sample string 4",
        "passwordIncludeLowerCase": "sample string 5",
        "passwordIncludeSpecialCharacter": "sample string 6",
        "passwordIncludeUpperCase": "sample string 7"
      }
    ]
  },
  "questionsRequired": "sample string 13",
  "questionsRequiredMetadata": {
    "maximumQuestions": "sample string 1",
    "minimumQuestions": "sample string 2"
  }
}
```

**Response**

```json
{
  "expirePassword": "sample string 1",
  "expirePasswordDays": "sample string 2",
  "expirePasswordDaysMetadata": {
    "maximumDays": "sample string 1",
    "minimumDays": "sample string 2"
  },
  "lockoutDurationMinutes": "sample string 3",
  "lockoutDurationMinutesMetadata": {
    "maximumMinutes": "sample string 1",
    "minimumMinutes": "sample string 2"
  },
  "lockoutDurationType": "sample string 4",
  "lockoutDurationTypeMetadata": {
    "options": [
      "sample string 1"
    ]
  },
  "minimumPasswordAgeDays": "sample string 5",
  "minimumPasswordAgeDaysMetadata": {
    "maximumAge": "sample string 1",
    "minimumAge": "sample string 2"
  },
  "minimumPasswordLength": "sample string 6",
  "minimumPasswordLengthMetadata": {
    "maximumLength": "sample string 1",
    "minimumLength": "sample string 2"
  },
  "passwordIncludeDigit": "sample string 7",
  "passwordIncludeDigitOrSpecialCharacter": "sample string 8",
  "passwordIncludeLowerCase": "sample string 9",
  "passwordIncludeSpecialCharacter": "sample string 10",
  "passwordIncludeUpperCase": "sample string 11",
  "passwordStrengthType": "sample string 12",
  "passwordStrengthTypeMetadata": {
    "options": [
      {
        "minimumLength": "sample string 1",
        "name": "sample string 2",
        "passwordIncludeDigit": "sample string 3",
        "passwordIncludeDigitOrSpecialCharacter": "sample string 4",
        "passwordIncludeLowerCase": "sample string 5",
        "passwordIncludeSpecialCharacter": "sample string 6",
        "passwordIncludeUpperCase": "sample string 7"
      }
    ]
  },
  "questionsRequired": "sample string 13",
  "questionsRequiredMetadata": {
    "maximumQuestions": "sample string 1",
    "minimumQuestions": "sample string 2"
  }
}
```