---
title: "Update Settings included in Change Request"
method: PUT
path: "/v2/change-requests/{changeRequestId}/proposed-changes"
tags: ["Change Requests (Approval flow & Scheduled changes) - Beta"]
---

# Update Settings included in Change Request

`PUT /v2/change-requests/{changeRequestId}/proposed-changes`

Updates the proposed changes to the Settings included in a Change Request.

## Path parameters

- `changeRequestId` integer, required

## Query parameters

- `settingId` integer

## Request body

- UpdateChangeRequestProposedChangesModel
  - `proposedChanges` UpdateEvaluationFormulaWithLatestVersionModel[] — The setting values to update on the Change Request.
    - `defaultValue` UpdateValueModel, required — Represents the value of a Feature Flag or Setting.
      - `boolValue` boolean, nullable — The served value in case of a boolean Feature Flag.
      - `stringValue` string, nullable — The served value in case of a text Setting.
      - `intValue` integer, nullable — The served value in case of a whole number Setting.
      - `doubleValue` number, double, nullable — The served value in case of a decimal number Setting.
      - `predefinedVariationId` string, uuid, nullable — The served Variation's identifier.
    - `targetingRules` UpdateTargetingRuleModel[], nullable — The targeting rules of the Feature Flag or Setting.
      - `conditions` UpdateConditionModel[], nullable — The list of conditions that are combined with logical AND operators. It can be one of the following: - User condition - Segment condition - Prerequisite flag condition
        - `userCondition` UpdateUserConditionModel — Describes a condition that is based on user attributes.
          - `comparisonAttribute` string, required — The User Object attribute that the condition is based on. Can be "User ID", "Email", "Country" or any custom attribute.
          - `comparator` 'isOneOf' | 'isNotOneOf' | 'containsAnyOf' | 'doesNotContainAnyOf' | 'semVerIsOneOf' | 'semVerIsNotOneOf' | 'semVerLess' | 'semVerLessOrEquals' | 'semVerGreater' | 'semVerGreaterOrEquals' | 'numberEquals' | 'numberDoesNotEqual' | 'numberLess' | 'numberLessOrEquals' | 'numberGreater' | 'numberGreaterOrEquals' | 'sensitiveIsOneOf' | 'sensitiveIsNotOneOf' | 'dateTimeBefore' | 'dateTimeAfter' | 'sensitiveTextEquals' | 'sensitiveTextDoesNotEqual' | 'sensitiveTextStartsWithAnyOf' | 'sensitiveTextNotStartsWithAnyOf' | 'sensitiveTextEndsWithAnyOf' | 'sensitiveTextNotEndsWithAnyOf' | 'sensitiveArrayContainsAnyOf' | 'sensitiveArrayDoesNotContainAnyOf' | 'textEquals' | 'textDoesNotEqual' | 'textStartsWithAnyOf' | 'textNotStartsWithAnyOf' | 'textEndsWithAnyOf' | 'textNotEndsWithAnyOf' | 'arrayContainsAnyOf' | 'arrayDoesNotContainAnyOf', required — The comparison operator which defines the relation between the comparison attribute and the comparison value.
          - `comparisonValue` UpdateComparisonValueModel, required — The value that the user object's attribute is compared to.
            - `stringValue` string, nullable — The string representation of the comparison value.
            - `doubleValue` number, double, nullable — The number representation of the comparison value.
            - `listValue` UpdateComparisonValueListModel[], nullable — The list representation of the comparison value.
              - …
        - `segmentCondition` UpdateSegmentConditionModel — Describes a condition that is based on a segment.
          - `segmentId` string, uuid, required — The segment's identifier.
          - `comparator` 'isIn' | 'isNotIn', required — The segment comparison operator used during the evaluation process.
        - `prerequisiteFlagCondition` UpdatePrerequisiteFlagConditionModel — Describes a condition that is based on a prerequisite flag.
          - `prerequisiteSettingId` integer, required — The prerequisite flag's identifier.
          - `comparator` 'equals' | 'doesNotEqual', required — Prerequisite flag comparison operator used during the evaluation process.
          - `prerequisiteComparisonValue` UpdateValueModel, required — Represents the value of a Feature Flag or Setting.
            - `boolValue` boolean, nullable — The served value in case of a boolean Feature Flag.
            - `stringValue` string, nullable — The served value in case of a text Setting.
            - `intValue` integer, nullable — The served value in case of a whole number Setting.
            - `doubleValue` number, double, nullable — The served value in case of a decimal number Setting.
            - `predefinedVariationId` string, uuid, nullable — The served Variation's identifier.
      - `percentageOptions` UpdatePercentageOptionModel[], nullable — The percentage options from where the evaluation process will choose a value based on the flag's percentage evaluation attribute.
        - `percentage` integer, required — A number between 0 and 100 that represents a randomly allocated fraction of the users.
        - `value` UpdateValueModel, required — Represents the value of a Feature Flag or Setting.
          - `boolValue` boolean, nullable — The served value in case of a boolean Feature Flag.
          - `stringValue` string, nullable — The served value in case of a text Setting.
          - `intValue` integer, nullable — The served value in case of a whole number Setting.
          - `doubleValue` number, double, nullable — The served value in case of a decimal number Setting.
          - `predefinedVariationId` string, uuid, nullable — The served Variation's identifier.
      - `value` UpdateValueModel — Represents the value of a Feature Flag or Setting.
        - `boolValue` boolean, nullable — The served value in case of a boolean Feature Flag.
        - `stringValue` string, nullable — The served value in case of a text Setting.
        - `intValue` integer, nullable — The served value in case of a whole number Setting.
        - `doubleValue` number, double, nullable — The served value in case of a decimal number Setting.
        - `predefinedVariationId` string, uuid, nullable — The served Variation's identifier.
    - `percentageEvaluationAttribute` string, nullable — The user attribute used for percentage evaluation. If not set, it defaults to the `Identifier` user object attribute.
    - `settingId` integer — The identifier of the feature flag or setting.
    - `latestVersionId` string, uuid, nullable — The version identifier of the last change made to the Feature Flag or Setting in the Environment. It can be used to make sure concurrent updates are not overwriting each other. If provided and the version identifier does not match the current version, the update will be rejected with a 409 Conflict response. The latest version id can be acquired from the `LastVersionId` property of the response models.
  - `forced` boolean — When true, skips conflict (LatestVersionId) checking.

## Response `200`

When the update was successful.

- ChangeRequestModel — Detailed Change Request model with all information including proposed changes, comments, and approvals.
  - `changeRequestId` integer, required — Identifier of the Change Request.
  - `configId` string, uuid, required — Identifier of the Config.
  - `environmentId` string, uuid, required — Identifier of the Environment.
  - `changeRequestStatus` 'open' | 'applied' | 'closed', required — The lifecycle status of a Change Request.
  - `needsAttention` boolean, required — Indicates whether the Change Request needs attention.
  - `title` string, required — Title of the Change Request.
  - `reason` string, nullable, required — Optional notes describing the purpose of the Change Request.
  - `applyAt` string, date-time, nullable, required — Optional UTC date and time when the Change Request should be applied automatically.
  - `createdAt` string, date-time, required — The UTC date and time when the Change Request was created.
  - `creatorUserEmail` string, required — Email of the user who created the Change Request.
  - `creatorUserFullName` string, required — Full name of the user who created the Change Request.
  - `creatorUserId` string, nullable, required — Identifier of the creator user.
  - `settingValues` ChangeRequestProposedChangeModel[], required — List of proposed setting values in the Change Request.
    - `settingId` integer, required — Identifier of the Setting to change.
    - `settingKey` string, required — Key identifier of the Setting.
    - `settingName` string, required — Display name of the Setting.
    - `settingHint` string, nullable, required — Optional hint or description for the Setting.
    - `settingType` 'boolean' | 'string' | 'int' | 'double', required — The type of the Feature Flag or Setting.
    - `hasConflict` boolean, required — Indicates whether the proposed changes to the Setting are in conflict with concurrently published changes.
    - `originalEvaluationFormula` AuditLogSettingValueV2EvaluationFormula, required — A complete evaluation formula.
      - `defaultValue` ValueModel, required — Represents the value of a Feature Flag or Setting.
        - `boolValue` boolean, nullable, required — The served value in case of a boolean Feature Flag.
        - `stringValue` string, nullable, required — The served value in case of a text Setting.
        - `intValue` integer, nullable, required — The served value in case of a whole number Setting.
        - `doubleValue` number, double, nullable, required — The served value in case of a decimal number Setting.
        - `predefinedVariationId` string, uuid, nullable, required — The served Variation's identifier.
      - `defaultValuePredefinedVariationName` string, nullable, required — Optional name of the predefined variation for the default value.
      - `targetingRules` AuditLogSettingValueV2EvaluationFormulaTargetingRuleModel[], required — List of targeting rules that determine when different values should be returned.
        - `value` ValueModel, required — Represents the value of a Feature Flag or Setting.
          - `boolValue` boolean, nullable, required — The served value in case of a boolean Feature Flag.
          - `stringValue` string, nullable, required — The served value in case of a text Setting.
          - `intValue` integer, nullable, required — The served value in case of a whole number Setting.
          - `doubleValue` number, double, nullable, required — The served value in case of a decimal number Setting.
          - `predefinedVariationId` string, uuid, nullable, required — The served Variation's identifier.
        - `valuePredefinedVariationName` string, nullable, required — Optional name of the predefined variation for the value.
        - `conditions` AuditLogSettingValueV2EvaluationFormulaConditionModel[], required — List of conditions that must be satisfied for this targeting rule to apply.
          - `conditionType` 'userCondition' | 'segmentCondition' | 'prerequisiteFlagCondition', required
          - `comparisonAttribute` string, nullable, required — The name of the user attribute to compare. (For User Conditions.)
          - `userComparator` 'isOneOf' | 'isNotOneOf' | 'containsAnyOf' | 'doesNotContainAnyOf' | 'semVerIsOneOf' | 'semVerIsNotOneOf' | 'semVerLess' | 'semVerLessOrEquals' | 'semVerGreater' | 'semVerGreaterOrEquals' | 'numberEquals' | 'numberDoesNotEqual' | 'numberLess' | 'numberLessOrEquals' | 'numberGreater' | 'numberGreaterOrEquals' | 'sensitiveIsOneOf' | 'sensitiveIsNotOneOf' | 'dateTimeBefore' | 'dateTimeAfter' | 'sensitiveTextEquals' | 'sensitiveTextDoesNotEqual' | 'sensitiveTextStartsWithAnyOf' | 'sensitiveTextNotStartsWithAnyOf' | 'sensitiveTextEndsWithAnyOf' | 'sensitiveTextNotEndsWithAnyOf' | 'sensitiveArrayContainsAnyOf' | 'sensitiveArrayDoesNotContainAnyOf' | 'textEquals' | 'textDoesNotEqual' | 'textStartsWithAnyOf' | 'textNotStartsWithAnyOf' | 'textEndsWithAnyOf' | 'textNotEndsWithAnyOf' | 'arrayContainsAnyOf' | 'arrayDoesNotContainAnyOf', required — The comparison operator which defines the relation between the comparison attribute and the comparison value.
          - `comparisonValue` ComparisonValueModel, required — The value that the user object's attribute is compared to.
            - `stringValue` string, nullable, required — The string representation of the comparison value.
            - `doubleValue` number, double, nullable, required — The number representation of the comparison value.
            - `listValue` ComparisonValueListModel[], nullable, required — The list representation of the comparison value.
              - …
          - `segmentComparator` 'isIn' | 'isNotIn', required — The segment comparison operator used during the evaluation process.
          - `segmentId` string, uuid, nullable, required — The ID of the segment referenced in this condition. (For Segment Conditions.)
          - `segmentName` string, nullable, required — The name of the segment referenced in this condition. (For Segment Conditions.)
          - `prerequisiteComparator` 'equals' | 'doesNotEqual', required — Prerequisite flag comparison operator used during the evaluation process.
          - `prerequisiteSettingId` integer, nullable, required — The ID of the prerequisite setting referenced. (For Flag Conditions.)
          - `prerequisiteSettingKey` string, nullable, required — The key identifier of the prerequisite setting. (For Flag Conditions.)
          - `prerequisiteComparisonValue` ValueModel, required — Represents the value of a Feature Flag or Setting.
            - `boolValue` boolean, nullable, required — The served value in case of a boolean Feature Flag.
            - `stringValue` string, nullable, required — The served value in case of a text Setting.
            - `intValue` integer, nullable, required — The served value in case of a whole number Setting.
            - `doubleValue` number, double, nullable, required — The served value in case of a decimal number Setting.
            - `predefinedVariationId` string, uuid, nullable, required — The served Variation's identifier.
          - `prerequisiteComparisonValuePredefinedVariationName` string, nullable, required — Optional name of the predefined variation for the prerequisite comparison value. (For Flag Conditions.)
        - `percentageOptions` AuditLogSettingValueV2EvaluationFormulaPercentageOptionModel[], required — List of percentage options when percentage-based user bucketing (for A/B testing) is used in the targeting rule.
          - `percentage` integer, required — The percentage of users (0-100) who should receive the value.
          - `value` ValueModel, required — Represents the value of a Feature Flag or Setting.
            - `boolValue` boolean, nullable, required — The served value in case of a boolean Feature Flag.
            - `stringValue` string, nullable, required — The served value in case of a text Setting.
            - `intValue` integer, nullable, required — The served value in case of a whole number Setting.
            - `doubleValue` number, double, nullable, required — The served value in case of a decimal number Setting.
            - `predefinedVariationId` string, uuid, nullable, required — The served Variation's identifier.
          - `valuePredefinedVariationName` string, nullable, required — Optional name of the predefined variation for this percentage option.
      - `percentageEvaluationAttribute` string, nullable, required — Optional name of the user attribute for percentage-based user bucketing (for A/B testing).
    - `proposedEvaluationFormula` AuditLogSettingValueV2EvaluationFormula, required — A complete evaluation formula.
      - `defaultValue` ValueModel, required — Represents the value of a Feature Flag or Setting.
        - `boolValue` boolean, nullable, required — The served value in case of a boolean Feature Flag.
        - `stringValue` string, nullable, required — The served value in case of a text Setting.
        - `intValue` integer, nullable, required — The served value in case of a whole number Setting.
        - `doubleValue` number, double, nullable, required — The served value in case of a decimal number Setting.
        - `predefinedVariationId` string, uuid, nullable, required — The served Variation's identifier.
      - `defaultValuePredefinedVariationName` string, nullable, required — Optional name of the predefined variation for the default value.
      - `targetingRules` AuditLogSettingValueV2EvaluationFormulaTargetingRuleModel[], required — List of targeting rules that determine when different values should be returned.
        - `value` ValueModel, required — Represents the value of a Feature Flag or Setting.
          - `boolValue` boolean, nullable, required — The served value in case of a boolean Feature Flag.
          - `stringValue` string, nullable, required — The served value in case of a text Setting.
          - `intValue` integer, nullable, required — The served value in case of a whole number Setting.
          - `doubleValue` number, double, nullable, required — The served value in case of a decimal number Setting.
          - `predefinedVariationId` string, uuid, nullable, required — The served Variation's identifier.
        - `valuePredefinedVariationName` string, nullable, required — Optional name of the predefined variation for the value.
        - `conditions` AuditLogSettingValueV2EvaluationFormulaConditionModel[], required — List of conditions that must be satisfied for this targeting rule to apply.
          - `conditionType` 'userCondition' | 'segmentCondition' | 'prerequisiteFlagCondition', required
          - `comparisonAttribute` string, nullable, required — The name of the user attribute to compare. (For User Conditions.)
          - `userComparator` 'isOneOf' | 'isNotOneOf' | 'containsAnyOf' | 'doesNotContainAnyOf' | 'semVerIsOneOf' | 'semVerIsNotOneOf' | 'semVerLess' | 'semVerLessOrEquals' | 'semVerGreater' | 'semVerGreaterOrEquals' | 'numberEquals' | 'numberDoesNotEqual' | 'numberLess' | 'numberLessOrEquals' | 'numberGreater' | 'numberGreaterOrEquals' | 'sensitiveIsOneOf' | 'sensitiveIsNotOneOf' | 'dateTimeBefore' | 'dateTimeAfter' | 'sensitiveTextEquals' | 'sensitiveTextDoesNotEqual' | 'sensitiveTextStartsWithAnyOf' | 'sensitiveTextNotStartsWithAnyOf' | 'sensitiveTextEndsWithAnyOf' | 'sensitiveTextNotEndsWithAnyOf' | 'sensitiveArrayContainsAnyOf' | 'sensitiveArrayDoesNotContainAnyOf' | 'textEquals' | 'textDoesNotEqual' | 'textStartsWithAnyOf' | 'textNotStartsWithAnyOf' | 'textEndsWithAnyOf' | 'textNotEndsWithAnyOf' | 'arrayContainsAnyOf' | 'arrayDoesNotContainAnyOf', required — The comparison operator which defines the relation between the comparison attribute and the comparison value.
          - `comparisonValue` ComparisonValueModel, required — The value that the user object's attribute is compared to.
            - `stringValue` string, nullable, required — The string representation of the comparison value.
            - `doubleValue` number, double, nullable, required — The number representation of the comparison value.
            - `listValue` ComparisonValueListModel[], nullable, required — The list representation of the comparison value.
              - …
          - `segmentComparator` 'isIn' | 'isNotIn', required — The segment comparison operator used during the evaluation process.
          - `segmentId` string, uuid, nullable, required — The ID of the segment referenced in this condition. (For Segment Conditions.)
          - `segmentName` string, nullable, required — The name of the segment referenced in this condition. (For Segment Conditions.)
          - `prerequisiteComparator` 'equals' | 'doesNotEqual', required — Prerequisite flag comparison operator used during the evaluation process.
          - `prerequisiteSettingId` integer, nullable, required — The ID of the prerequisite setting referenced. (For Flag Conditions.)
          - `prerequisiteSettingKey` string, nullable, required — The key identifier of the prerequisite setting. (For Flag Conditions.)
          - `prerequisiteComparisonValue` ValueModel, required — Represents the value of a Feature Flag or Setting.
            - `boolValue` boolean, nullable, required — The served value in case of a boolean Feature Flag.
            - `stringValue` string, nullable, required — The served value in case of a text Setting.
            - `intValue` integer, nullable, required — The served value in case of a whole number Setting.
            - `doubleValue` number, double, nullable, required — The served value in case of a decimal number Setting.
            - `predefinedVariationId` string, uuid, nullable, required — The served Variation's identifier.
          - `prerequisiteComparisonValuePredefinedVariationName` string, nullable, required — Optional name of the predefined variation for the prerequisite comparison value. (For Flag Conditions.)
        - `percentageOptions` AuditLogSettingValueV2EvaluationFormulaPercentageOptionModel[], required — List of percentage options when percentage-based user bucketing (for A/B testing) is used in the targeting rule.
          - `percentage` integer, required — The percentage of users (0-100) who should receive the value.
          - `value` ValueModel, required — Represents the value of a Feature Flag or Setting.
            - `boolValue` boolean, nullable, required — The served value in case of a boolean Feature Flag.
            - `stringValue` string, nullable, required — The served value in case of a text Setting.
            - `intValue` integer, nullable, required — The served value in case of a whole number Setting.
            - `doubleValue` number, double, nullable, required — The served value in case of a decimal number Setting.
            - `predefinedVariationId` string, uuid, nullable, required — The served Variation's identifier.
          - `valuePredefinedVariationName` string, nullable, required — Optional name of the predefined variation for this percentage option.
      - `percentageEvaluationAttribute` string, nullable, required — Optional name of the user attribute for percentage-based user bucketing (for A/B testing).
  - `comments` ChangeRequestCommentModel[], required — List of comments on the Change Request.
    - `changeRequestCommentId` integer, required — Identifier of the Change Request comment.
    - `body` string, required — Body content of the comment.
    - `createdAt` string, date-time, required — The UTC date and time when the comment was created.
    - `userEmail` string, required — Email of the user who created the comment.
    - `userFullName` string, required — Full name of the user who created the comment.
    - `editedAt` string, date-time, nullable, required — Optional UTC date and time when the comment was last edited.
  - `approved` boolean, required — Indicates whether the Change Request has been approved.
  - `approvals` ChangeRequestApprovalModel[], required — List of approvals for the Change Request.
    - `changeRequestApprovalId` integer, required — Identifier of the Change Request approval.
    - `userEmail` string, required — Email of the user who approved the Change Request.
    - `userFullName` string, required — Full name of the user who approved the Change Request.
    - `approvedAt` string, date-time, required — The UTC date and time when the Change Request was approved.
    - `dismissedAt` string, date-time, nullable, required — Optional UTC date and time when the approval was dismissed.
  - `activities` ChangeRequestActivityModel[], required — List of activities (history) on the Change Request.
    - `changeRequestActivityId` integer, required — Identifier of the Change Request activity.
    - `changeRequestActivityType` 'applyFailed' | 'scheduledApplyFailed' | 'proposedChangesUpdated' | 'conflictsResolved' | 'reasonChanged' | 'applyAtChanged' | 'bypassApprovalEnabled' | 'bypassApprovalDisabled' | 'created' | 'ownershipClaimed' | 'settingDeletedFromChangeRequest', required — The type of activity recorded on a Change Request.
    - `date` string, date-time, required — The UTC date and time when the activity occurred.
    - `userId` string, nullable, required — Identifier of the user who triggered the activity.
    - `userFullName` string, required — Full name of the user who triggered the activity.
    - `userEmail` string, nullable, required — Email of the user who triggered the activity.
    - `details` string, required — Detailed description of the activity.
    - `error` string, nullable, required — Optional error message if the activity failed.
  - `changeRequestIssues` ChangeRequestIssueModel[], required — List of issues encountered with the Change Request.
    - `changeRequestIssueId` integer, required — Identifier of the Change Request issue.
    - `issueType` 'noOwner' | 'ownerPermissionIssue' | 'reasonRequired' | 'settingConflict' | 'circularDependency', required — The type of issue encountered with a Change Request.
    - `issueDetails` string, required — Description of the issue.
    - `issueDetectedAt` string, date-time, required — The UTC date and time when the issue was detected.
    - `issueFixedAt` string, date-time, nullable, required — Optional UTC date and time when the issue was fixed.
  - `appliedAt` string, date-time, nullable, required — Optional UTC date and time when the Change Request was applied.
  - `appliedByUserId` string, nullable, required — Identifier of the user who applied the Change Request.
  - `appliedByUserEmail` string, nullable, required — Email of the user who applied the Change Request.
  - `appliedByUserFullName` string, nullable, required — Full name of the user who applied the Change Request.
  - `closedAt` string, date-time, nullable, required — Optional UTC date and time when the Change Request was closed.
  - `closedByUserId` string, nullable, required — Identifier of the user who closed the Change Request.
  - `closedByUserEmail` string, nullable, required — Email of the user who closed the Change Request.
  - `closedByUserFullName` string, nullable, required — Full name of the user who closed the Change Request.
  - `bypassApproval` boolean, required — Indicates whether approval flow is bypassed.

## Other responses

- `400` — Bad request.
- `404` — Not found.
- `429` — Too many requests. In case of the request rate exceeds the rate limits.

---

[API](https://skmtc.net/configcat/apis/configcat-public-management-api.md) · [All operations](https://skmtc.net/configcat/apis/configcat-public-management-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/configcat/configcat-public-management-api/revisions/6b4d53bc1455/schema)
