---
title: "Replace a rule set"
method: PUT
path: "/api/v1/rule_sets/{id}"
tags: ["Rule Sets"]
---

# Replace a rule set

`PUT /api/v1/rule_sets/{id}`

## Request

- Base URL: `https://getscaleforge.com`
- URL: `https://getscaleforge.com/api/v1/rule_sets/{id}`
- Auth: HTTP bearer

## Request body

- object
  - `rule_set` object
    - `name` string, required
    - `action` 'pause' | 'activate' | 'bid_up' | 'bid_down', required
    - `bid_step` number
    - `bid_min` number
    - `bid_max` number
    - `schedule_type` string
    - `schedule_value` integer
    - `schedule_start_hour` integer
    - `schedule_end_hour` integer
    - `data_period` string
    - `enabled` boolean
    - `cooldown_minutes` integer
    - `dry_run` boolean
    - `max_daily_actions` integer
    - `target_level` string
  - `rules` object[]
    - `metric` string, required
    - `operator` string, required
    - `value` number, required

## Response `200`

Updated

- object
  - `data` object
    - `id` integer
    - `name` string
    - `action` 'pause' | 'activate' | 'bid_up' | 'bid_down'
    - `bid_step` number, nullable
    - `bid_min` number, nullable
    - `bid_max` number, nullable
    - `schedule_type` 'interval' | 'hourly' | 'daily'
    - `schedule_value` integer, nullable: Minutes for interval type
    - `data_period` string
    - `enabled` boolean
    - `cooldown_minutes` integer
    - `dry_run` boolean
    - `max_daily_actions` integer, nullable
    - `target_level` 'adset' | 'campaign'
    - `next_run_at` string, date-time, nullable
    - `created_at` string, date-time

---

[API](https://skmtc.dev/getscaleforge/apis/scaleforge-api.md) · [All operations](https://skmtc.dev/getscaleforge/apis/scaleforge-api/llms.txt) · [OpenAPI document](https://skmtc.dev/getscaleforge/apis/scaleforge-api/revisions/ca382e62f404?raw)
