---
title: "POST /api/v1/config/resource-pools"
method: POST
path: "/api/v1/config/resource-pools"
tags: ["ResourcePools"]
---

# POST /api/v1/config/resource-pools

`POST /api/v1/config/resource-pools`

ResourcePools CRUD (subset for singleton objects)

## Request body

- Configv1CreateResourcePoolsRequest
  - `dry_run` boolean — If `true`, validates the specified configuration without creating the ResourcePools. If the specified configuration is valid, the endpoint returns a partial response without the ResourcePools. If the specified configuration is invalid, the endpoint returns an error.
  - `resource_pools` Configv1ResourcePools
    - `created_at` string, date-time — Timestamp of when the ResourcePools was created. Cannot be set by clients.
    - `default_pool` ResourcePoolsDefaultPool, required
      - `allocation` Configv1ResourcePoolsAllocation
        - `fixed_values` AllocationFixedValue[] — Optional. Specifies overrides for the `percent_of_license` allocations for specified licenses. When defining fixed values for a license, all pools must have an explicit fixed value specification for that given license. The default pool receives all remaining quota left within the license, after subtracting the sum of fixed values across pools for that license.
          - `license` 'PERSISTED_WRITES_STANDARD' | 'PERSISTED_WRITES_HISTOGRAM' | 'PERSISTED_CARDINALITY_STANDARD' | 'PERSISTED_CARDINALITY_HISTOGRAM' | 'MATCHED_WRITES_STANDARD' | 'MATCHED_WRITES_HISTOGRAM'
          - `value` string, int64
        - `percent_of_license` number, double — Percent of the license to allocate to this pool. This value must be between `0` and `100`, inclusive. The `percent_of_license` values across all pools, excluding the default pool, must be less than or equal to 100. The `default_pool` receives any remaining allocation, so you don't need to specify a value for it explicitly. If you specify an allocation for the `default_pool`, the sum of `percent_of_license` across all pools (including the default pool) must exactly equal `100`.
        - `priority_thresholds` AllocationThresholds[] — Defines thresholds with strict limits for when to drop new consumption of the persisted cardinality license for a pool. Setting `priority_thresholds` is required to set limits for cardinality licenses. Only `PERSISTED_CARDINALITY_STANDARD` and `PERSISTED_CARDINALITY_HISTOGRAM` are supported.
          - `all_priorities` ResourcePoolsAllocationThreshold
            - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
            - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
          - `default_and_low_priority` ResourcePoolsAllocationThreshold
            - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
            - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
          - `license` 'PERSISTED_WRITES_STANDARD' | 'PERSISTED_WRITES_HISTOGRAM' | 'PERSISTED_CARDINALITY_STANDARD' | 'PERSISTED_CARDINALITY_HISTOGRAM' | 'MATCHED_WRITES_STANDARD' | 'MATCHED_WRITES_HISTOGRAM'
          - `low_priority` ResourcePoolsAllocationThreshold
            - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
            - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
      - `priorities` ResourcePoolsPriorities
        - `high_priority_filters` Configv1LabelFilter[] — Optional. Filters that define which metrics are high priority. Any metric that matches at least one filter is considered high priority. High priority metrics are dropped last when the license limit is exceeded.
          - `name` string — The name of the label to match.
          - `value_glob` string — The glob value of the label to match.
        - `low_priority_filters` Configv1LabelFilter[] — Optional. Filters that define which metrics are low priority. Any metric that matches at least one filter is considered low priority. Low priority metrics are dropped first when the license limit is exceeded.
          - `name` string — The name of the label to match.
          - `value_glob` string — The glob value of the label to match.
      - `priority_thresholds` AllocationThresholds[] — Optional. For supported licenses, defines thresholds with strict limits for when to drop new consumption of the license for a pool. Only `PERSISTED_CARDINALITY_STANDARD` and `PERSISTED_CARDINALITY_HISTOGRAM` are supported. See the [product documentation](https://docs.chronosphere.io/control/shaping/shape-metrics/quotas/define-pools#pool-thresholds) for more information.
        - `all_priorities` ResourcePoolsAllocationThreshold
          - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
          - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
        - `default_and_low_priority` ResourcePoolsAllocationThreshold
          - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
          - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
        - `license` 'PERSISTED_WRITES_STANDARD' | 'PERSISTED_WRITES_HISTOGRAM' | 'PERSISTED_CARDINALITY_STANDARD' | 'PERSISTED_CARDINALITY_HISTOGRAM' | 'MATCHED_WRITES_STANDARD' | 'MATCHED_WRITES_HISTOGRAM'
        - `low_priority` ResourcePoolsAllocationThreshold
          - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
          - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
    - `pools` ResourcePoolsPool[] — Optional. Defines additional pools, which can't exceed 20 pools.
      - `allocation` Configv1ResourcePoolsAllocation, required
        - `fixed_values` AllocationFixedValue[] — Optional. Specifies overrides for the `percent_of_license` allocations for specified licenses. When defining fixed values for a license, all pools must have an explicit fixed value specification for that given license. The default pool receives all remaining quota left within the license, after subtracting the sum of fixed values across pools for that license.
          - `license` 'PERSISTED_WRITES_STANDARD' | 'PERSISTED_WRITES_HISTOGRAM' | 'PERSISTED_CARDINALITY_STANDARD' | 'PERSISTED_CARDINALITY_HISTOGRAM' | 'MATCHED_WRITES_STANDARD' | 'MATCHED_WRITES_HISTOGRAM'
          - `value` string, int64
        - `percent_of_license` number, double — Percent of the license to allocate to this pool. This value must be between `0` and `100`, inclusive. The `percent_of_license` values across all pools, excluding the default pool, must be less than or equal to 100. The `default_pool` receives any remaining allocation, so you don't need to specify a value for it explicitly. If you specify an allocation for the `default_pool`, the sum of `percent_of_license` across all pools (including the default pool) must exactly equal `100`.
        - `priority_thresholds` AllocationThresholds[] — Defines thresholds with strict limits for when to drop new consumption of the persisted cardinality license for a pool. Setting `priority_thresholds` is required to set limits for cardinality licenses. Only `PERSISTED_CARDINALITY_STANDARD` and `PERSISTED_CARDINALITY_HISTOGRAM` are supported.
          - `all_priorities` ResourcePoolsAllocationThreshold
            - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
            - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
          - `default_and_low_priority` ResourcePoolsAllocationThreshold
            - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
            - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
          - `license` 'PERSISTED_WRITES_STANDARD' | 'PERSISTED_WRITES_HISTOGRAM' | 'PERSISTED_CARDINALITY_STANDARD' | 'PERSISTED_CARDINALITY_HISTOGRAM' | 'MATCHED_WRITES_STANDARD' | 'MATCHED_WRITES_HISTOGRAM'
          - `low_priority` ResourcePoolsAllocationThreshold
            - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
            - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
      - `filters` Configv1LabelFilter[], required — Filters that define which metrics map to this pool, where any metric that matches at least one filter will map to the pool.
        - `name` string — The name of the label to match.
        - `value_glob` string — The glob value of the label to match.
      - `name` string, required — Name of the pool, which must be unique.
      - `priorities` ResourcePoolsPriorities
        - `high_priority_filters` Configv1LabelFilter[] — Optional. Filters that define which metrics are high priority. Any metric that matches at least one filter is considered high priority. High priority metrics are dropped last when the license limit is exceeded.
          - `name` string — The name of the label to match.
          - `value_glob` string — The glob value of the label to match.
        - `low_priority_filters` Configv1LabelFilter[] — Optional. Filters that define which metrics are low priority. Any metric that matches at least one filter is considered low priority. Low priority metrics are dropped first when the license limit is exceeded.
          - `name` string — The name of the label to match.
          - `value_glob` string — The glob value of the label to match.
    - `updated_at` string, date-time — Timestamp of when the ResourcePools was last updated. Cannot be set by clients.

## Response `200`

A successful response containing the created ResourcePools.

- Configv1CreateResourcePoolsResponse
  - `resource_pools` Configv1ResourcePools
    - `created_at` string, date-time — Timestamp of when the ResourcePools was created. Cannot be set by clients.
    - `default_pool` ResourcePoolsDefaultPool, required
      - `allocation` Configv1ResourcePoolsAllocation
        - `fixed_values` AllocationFixedValue[] — Optional. Specifies overrides for the `percent_of_license` allocations for specified licenses. When defining fixed values for a license, all pools must have an explicit fixed value specification for that given license. The default pool receives all remaining quota left within the license, after subtracting the sum of fixed values across pools for that license.
          - `license` 'PERSISTED_WRITES_STANDARD' | 'PERSISTED_WRITES_HISTOGRAM' | 'PERSISTED_CARDINALITY_STANDARD' | 'PERSISTED_CARDINALITY_HISTOGRAM' | 'MATCHED_WRITES_STANDARD' | 'MATCHED_WRITES_HISTOGRAM'
          - `value` string, int64
        - `percent_of_license` number, double — Percent of the license to allocate to this pool. This value must be between `0` and `100`, inclusive. The `percent_of_license` values across all pools, excluding the default pool, must be less than or equal to 100. The `default_pool` receives any remaining allocation, so you don't need to specify a value for it explicitly. If you specify an allocation for the `default_pool`, the sum of `percent_of_license` across all pools (including the default pool) must exactly equal `100`.
        - `priority_thresholds` AllocationThresholds[] — Defines thresholds with strict limits for when to drop new consumption of the persisted cardinality license for a pool. Setting `priority_thresholds` is required to set limits for cardinality licenses. Only `PERSISTED_CARDINALITY_STANDARD` and `PERSISTED_CARDINALITY_HISTOGRAM` are supported.
          - `all_priorities` ResourcePoolsAllocationThreshold
            - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
            - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
          - `default_and_low_priority` ResourcePoolsAllocationThreshold
            - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
            - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
          - `license` 'PERSISTED_WRITES_STANDARD' | 'PERSISTED_WRITES_HISTOGRAM' | 'PERSISTED_CARDINALITY_STANDARD' | 'PERSISTED_CARDINALITY_HISTOGRAM' | 'MATCHED_WRITES_STANDARD' | 'MATCHED_WRITES_HISTOGRAM'
          - `low_priority` ResourcePoolsAllocationThreshold
            - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
            - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
      - `priorities` ResourcePoolsPriorities
        - `high_priority_filters` Configv1LabelFilter[] — Optional. Filters that define which metrics are high priority. Any metric that matches at least one filter is considered high priority. High priority metrics are dropped last when the license limit is exceeded.
          - `name` string — The name of the label to match.
          - `value_glob` string — The glob value of the label to match.
        - `low_priority_filters` Configv1LabelFilter[] — Optional. Filters that define which metrics are low priority. Any metric that matches at least one filter is considered low priority. Low priority metrics are dropped first when the license limit is exceeded.
          - `name` string — The name of the label to match.
          - `value_glob` string — The glob value of the label to match.
      - `priority_thresholds` AllocationThresholds[] — Optional. For supported licenses, defines thresholds with strict limits for when to drop new consumption of the license for a pool. Only `PERSISTED_CARDINALITY_STANDARD` and `PERSISTED_CARDINALITY_HISTOGRAM` are supported. See the [product documentation](https://docs.chronosphere.io/control/shaping/shape-metrics/quotas/define-pools#pool-thresholds) for more information.
        - `all_priorities` ResourcePoolsAllocationThreshold
          - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
          - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
        - `default_and_low_priority` ResourcePoolsAllocationThreshold
          - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
          - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
        - `license` 'PERSISTED_WRITES_STANDARD' | 'PERSISTED_WRITES_HISTOGRAM' | 'PERSISTED_CARDINALITY_STANDARD' | 'PERSISTED_CARDINALITY_HISTOGRAM' | 'MATCHED_WRITES_STANDARD' | 'MATCHED_WRITES_HISTOGRAM'
        - `low_priority` ResourcePoolsAllocationThreshold
          - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
          - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
    - `pools` ResourcePoolsPool[] — Optional. Defines additional pools, which can't exceed 20 pools.
      - `allocation` Configv1ResourcePoolsAllocation, required
        - `fixed_values` AllocationFixedValue[] — Optional. Specifies overrides for the `percent_of_license` allocations for specified licenses. When defining fixed values for a license, all pools must have an explicit fixed value specification for that given license. The default pool receives all remaining quota left within the license, after subtracting the sum of fixed values across pools for that license.
          - `license` 'PERSISTED_WRITES_STANDARD' | 'PERSISTED_WRITES_HISTOGRAM' | 'PERSISTED_CARDINALITY_STANDARD' | 'PERSISTED_CARDINALITY_HISTOGRAM' | 'MATCHED_WRITES_STANDARD' | 'MATCHED_WRITES_HISTOGRAM'
          - `value` string, int64
        - `percent_of_license` number, double — Percent of the license to allocate to this pool. This value must be between `0` and `100`, inclusive. The `percent_of_license` values across all pools, excluding the default pool, must be less than or equal to 100. The `default_pool` receives any remaining allocation, so you don't need to specify a value for it explicitly. If you specify an allocation for the `default_pool`, the sum of `percent_of_license` across all pools (including the default pool) must exactly equal `100`.
        - `priority_thresholds` AllocationThresholds[] — Defines thresholds with strict limits for when to drop new consumption of the persisted cardinality license for a pool. Setting `priority_thresholds` is required to set limits for cardinality licenses. Only `PERSISTED_CARDINALITY_STANDARD` and `PERSISTED_CARDINALITY_HISTOGRAM` are supported.
          - `all_priorities` ResourcePoolsAllocationThreshold
            - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
            - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
          - `default_and_low_priority` ResourcePoolsAllocationThreshold
            - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
            - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
          - `license` 'PERSISTED_WRITES_STANDARD' | 'PERSISTED_WRITES_HISTOGRAM' | 'PERSISTED_CARDINALITY_STANDARD' | 'PERSISTED_CARDINALITY_HISTOGRAM' | 'MATCHED_WRITES_STANDARD' | 'MATCHED_WRITES_HISTOGRAM'
          - `low_priority` ResourcePoolsAllocationThreshold
            - `fixed_value` string, int64 — Threshold expressed as a fixed value of the license.
            - `percent_of_pool_allocation` number, double — Threshold expressed as a percent of the license allocated to a pool. A value of `100` represents a threshold that is the pool's full allocation. Values over `100` indicate thresholds that exceed the pool's allocation. For example, a value of `50` represents a threshold that is half the pool's allocation, and a value of `200` represents a threshold that is double the pool's allocation.
      - `filters` Configv1LabelFilter[], required — Filters that define which metrics map to this pool, where any metric that matches at least one filter will map to the pool.
        - `name` string — The name of the label to match.
        - `value_glob` string — The glob value of the label to match.
      - `name` string, required — Name of the pool, which must be unique.
      - `priorities` ResourcePoolsPriorities
        - `high_priority_filters` Configv1LabelFilter[] — Optional. Filters that define which metrics are high priority. Any metric that matches at least one filter is considered high priority. High priority metrics are dropped last when the license limit is exceeded.
          - `name` string — The name of the label to match.
          - `value_glob` string — The glob value of the label to match.
        - `low_priority_filters` Configv1LabelFilter[] — Optional. Filters that define which metrics are low priority. Any metric that matches at least one filter is considered low priority. Low priority metrics are dropped first when the license limit is exceeded.
          - `name` string — The name of the label to match.
          - `value_glob` string — The glob value of the label to match.
    - `updated_at` string, date-time — Timestamp of when the ResourcePools was last updated. Cannot be set by clients.

## Other responses

- `400` — Cannot create the ResourcePools because the request is invalid.
- `409` — Cannot create the ResourcePools because there is a conflict with an existing ResourcePools.
- `500` — An unexpected error response.
- `default` — An undefined error response.

---

[API](https://skmtc.dev/chronosphere/apis/data-v1-api.md) · [All operations](https://skmtc.dev/chronosphere/apis/data-v1-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/chronosphere/data-v1-api/revisions/ee91fd539ced/schema)
