> ## Documentation Index
> Fetch the complete documentation index at: https://docs.korve.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Update

> Update an alert policy's condition, scope, channels, severity, cooldown, or enabled state.



## OpenAPI

````yaml /openapi.json patch /v1/orgs/{orgId}/projects/{projectId}/alert-policies/{policyId}
openapi: 3.1.0
info:
  title: Korve API
  version: 0.1.0
  description: >-
    Typed control plane for deploying applications and explicitly provisioning
    their managed infrastructure.
servers:
  - url: https://api.korve.dev
security: []
paths:
  /v1/orgs/{orgId}/projects/{projectId}/alert-policies/{policyId}:
    patch:
      tags:
        - alertPolicies
      summary: Update
      description: >-
        Update an alert policy's condition, scope, channels, severity, cooldown,
        or enabled state.
      operationId: alertPolicies.update
      parameters:
        - name: orgId
          in: path
          required: true
          schema:
            type: string
          description: The organization's id (UUID) or slug — either form is accepted.
        - name: projectId
          in: path
          required: true
          schema:
            type: string
          description: The project's id (UUID) or slug — either form is accepted.
        - name: policyId
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: true
        x-korve-max-bytes: 1048576
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  pattern: ^[a-z][a-z0-9-]{1,61}$
                enabled:
                  type: boolean
                severity:
                  type: string
                  enum:
                    - info
                    - warning
                    - critical
                scope:
                  type: object
                  properties:
                    environment:
                      type: string
                    databaseId:
                      type:
                        - string
                        - 'null'
                    queueId:
                      type:
                        - string
                        - 'null'
                    cronId:
                      type:
                        - string
                        - 'null'
                  required:
                    - environment
                    - databaseId
                    - queueId
                    - cronId
                  additionalProperties: false
                condition:
                  type: object
                  properties:
                    signal:
                      type: string
                      enum:
                        - database.unavailable
                        - backup.archive_failed
                        - storage.capacity
                        - cpu.pressure
                        - memory.pressure
                        - database.pool_saturation
                        - queue.backlog
                        - cpu.percent
                        - memory.used_bytes
                        - memory.limit_bytes
                        - disk.used_bytes
                        - disk.limit_bytes
                        - disk.read_iops
                        - disk.write_iops
                        - network.receive_bytes
                        - network.transmit_bytes
                        - runtime.restarts
                        - runtime.uptime_seconds
                        - http.requests
                        - http.errors
                        - database.connections
                        - database.pool_waiting
                        - database.queries_per_second
                        - database.query_latency_avg_ms
                        - database.query_latency_p50_ms
                        - database.query_latency_p90_ms
                        - database.query_latency_p95_ms
                        - database.query_latency_p99_ms
                        - queue.backlog_messages
                        - queue.oldest_message_age_seconds
                        - cron.failures
                    operator:
                      type: string
                      enum:
                        - gt
                        - gte
                        - lt
                        - lte
                        - eq
                    threshold:
                      type:
                        - number
                        - 'null'
                    durationSeconds:
                      type: integer
                  required:
                    - signal
                    - operator
                    - threshold
                    - durationSeconds
                  additionalProperties: false
                channelIds:
                  type: array
                  items:
                    type: string
                cooldownSeconds:
                  type: integer
              required: []
              additionalProperties: false
      responses:
        '200':
          description: Updated alert policy.
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                  name:
                    type: string
                    pattern: ^[a-z][a-z0-9-]{1,61}$
                  enabled:
                    type: boolean
                  severity:
                    type: string
                    enum:
                      - info
                      - warning
                      - critical
                  scope:
                    type: object
                    properties:
                      environment:
                        type: string
                      databaseId:
                        type:
                          - string
                          - 'null'
                      queueId:
                        type:
                          - string
                          - 'null'
                      cronId:
                        type:
                          - string
                          - 'null'
                    required:
                      - environment
                      - databaseId
                      - queueId
                      - cronId
                    additionalProperties: false
                  condition:
                    type: object
                    properties:
                      signal:
                        type: string
                        enum:
                          - database.unavailable
                          - backup.archive_failed
                          - storage.capacity
                          - cpu.pressure
                          - memory.pressure
                          - database.pool_saturation
                          - queue.backlog
                          - cpu.percent
                          - memory.used_bytes
                          - memory.limit_bytes
                          - disk.used_bytes
                          - disk.limit_bytes
                          - disk.read_iops
                          - disk.write_iops
                          - network.receive_bytes
                          - network.transmit_bytes
                          - runtime.restarts
                          - runtime.uptime_seconds
                          - http.requests
                          - http.errors
                          - database.connections
                          - database.pool_waiting
                          - database.queries_per_second
                          - database.query_latency_avg_ms
                          - database.query_latency_p50_ms
                          - database.query_latency_p90_ms
                          - database.query_latency_p95_ms
                          - database.query_latency_p99_ms
                          - queue.backlog_messages
                          - queue.oldest_message_age_seconds
                          - cron.failures
                      operator:
                        type: string
                        enum:
                          - gt
                          - gte
                          - lt
                          - lte
                          - eq
                      threshold:
                        type:
                          - number
                          - 'null'
                      durationSeconds:
                        type: integer
                    required:
                      - signal
                      - operator
                      - threshold
                      - durationSeconds
                    additionalProperties: false
                  channelIds:
                    type: array
                    items:
                      type: string
                    description: >-
                      Organization alert channel ids. Dashboard visibility is
                      always included.
                  cooldownSeconds:
                    type: integer
                  createdAt:
                    type: string
                    format: date-time
                  updatedAt:
                    type: string
                    format: date-time
                required:
                  - id
                  - name
                  - enabled
                  - severity
                  - scope
                  - condition
                  - channelIds
                  - cooldownSeconds
                  - createdAt
                  - updatedAt
                additionalProperties: false
        '404':
          description: No such alert policy or scoped resource.
        '422':
          description: Invalid alert policy configuration.
      security:
        - apiKey: []
        - session: []
components:
  securitySchemes:
    apiKey:
      type: http
      scheme: bearer
      bearerFormat: korve_api_key
    session:
      type: apiKey
      in: cookie
      name: korve.session_token

````