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

# Update DDoS protection profile

> Updates various aspects of DDoS protection profile including profile template,
field values, and activation status. The update process includes comprehensive
validation to ensure changes are compatible with the existing configuration
and security requirements.



## OpenAPI

````yaml /api-reference/services_documented/cloud_api.yaml patch /cloud/v1/ddos/profiles/{project_id}/{region_id}/{profile_id}
openapi: 3.1.0
info:
  title: Gcore OpenAPI – Cloud API
  description: >-
    This OpenAPI is an aggregated OpenAPI specification that unifies all Gcore
    products into a single file. It covers Cloud, CDN, DNS, WAAP, DDoS
    Protection, Object Storage, Streaming, and FastEdge services.
  version: '2026-05-15T06:37:28.230198+00:00'
servers:
  - url: https://api.gcore.com
security:
  - APIKey: []
tags:
  - name: Bare Metal
    x-displayName: Bare Metal
  - name: Container as a Service
    x-displayName: Container as a Service
  - name: Cost Reports
    x-displayName: Cost Reports
  - name: DDoS Protection
    x-displayName: DDoS Protection
  - name: Everywhere Inference
    x-displayName: Everywhere Inference
  - name: Everywhere Inference Apps
    x-displayName: Everywhere Inference Apps
  - name: File Shares
    x-displayName: File Shares
  - name: Floating IPs
    x-displayName: Floating IPs
  - name: Function as a Service
    x-displayName: Function as a Service
  - name: GPU Bare Metal
    x-displayName: GPU Bare Metal
  - name: GPU Virtual
    x-displayName: GPU Virtual
  - name: IP Ranges
    x-displayName: IP Ranges
  - name: Images
    x-displayName: Images
  - name: Instances
    x-displayName: Instances
  - name: Load Balancers
    x-displayName: Load Balancers
  - name: Logging
    x-displayName: Logging
  - name: Managed Kubernetes
    x-displayName: Managed Kubernetes
  - name: Managed PostgreSQL
    x-displayName: Managed PostgreSQL
  - name: Networks
    x-displayName: Networks
  - name: Placement Groups
    x-displayName: Placement Groups
  - name: Projects
    x-displayName: Projects
  - name: Quotas
    x-displayName: Quotas
  - name: Regions
    x-displayName: Regions
  - name: Registry
    x-displayName: Registry
  - name: Reservations
    x-displayName: Reservations
  - name: Reserved IPs
    x-displayName: Reserved IPs
  - name: Routers
    x-displayName: Routers
  - name: SSH Keys
    x-displayName: SSH Keys
  - name: Secrets
    x-displayName: Secrets
  - name: Security Groups
    x-displayName: Security Groups
  - name: Snapshot Schedules
    x-displayName: Snapshot Schedules
  - name: Snapshots
    x-displayName: Snapshots
  - name: Tasks
    x-displayName: Tasks
  - name: User Actions
    x-displayName: User Actions
  - name: User Role Assignments
    x-displayName: User Role Assignments
  - name: Volumes
    x-displayName: Volumes
paths:
  /cloud/v1/ddos/profiles/{project_id}/{region_id}/{profile_id}:
    patch:
      tags:
        - DDoS Protection
      summary: Update DDoS protection profile
      description: >-
        Updates various aspects of DDoS protection profile including profile
        template,

        field values, and activation status. The update process includes
        comprehensive

        validation to ensure changes are compatible with the existing
        configuration

        and security requirements.
      operationId: ProfileHandler.patch
      parameters:
        - in: path
          name: project_id
          required: true
          description: >-
            Unique identifier of the cloud project that owns the DDoS protection
            resources
          schema:
            description: >-
              Unique identifier of the cloud project that owns the DDoS
              protection resources
            example: 1
            examples:
              - 1
            title: Project Id
            type: integer
        - in: path
          name: region_id
          required: true
          description: >-
            Unique identifier of the cloud region where DDoS protection
            operations will be performed
          schema:
            description: >-
              Unique identifier of the cloud region where DDoS protection
              operations will be performed
            example: 1
            examples:
              - 1
            title: Region Id
            type: integer
        - in: path
          name: profile_id
          required: true
          description: >-
            Unique identifier of the specific DDoS protection profile to be
            operated on
          schema:
            description: >-
              Unique identifier of the specific DDoS protection profile to be
              operated on
            example: 1
            examples:
              - 1
            title: Profile Id
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MutateClientProfileSerializer'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaskIDsSerializer'
components:
  schemas:
    MutateClientProfileSerializer:
      properties:
        fields:
          description: >-
            List of field configurations that customize the protection
            parameters for this profile
          example:
            - base_field: 10
              field_value:
                - 45046
                - 45047
          examples:
            - - base_field: 10
                field_value:
                  - 45046
                  - 45047
          items:
            $ref: '#/components/schemas/CreateClientProfileFieldSerializer'
          title: Fields
          type: array
        ip_address:
          anyOf:
            - format: ipv4
              type: string
            - format: ipv6
              type: string
          description: IP address that will be protected by the DDoS protection profile
          examples:
            - 11.111.111.1
          title: Ip Address
        profile_template:
          description: >-
            Unique identifier of the DDoS protection template to use for this
            profile
          example: 123
          examples:
            - 123
          title: Profile Template
          type: integer
      required:
        - profile_template
        - ip_address
      title: MutateClientProfileSerializer
      type: object
    TaskIDsSerializer:
      properties:
        tasks:
          description: >-
            List of task IDs representing asynchronous operations. Use these IDs
            to monitor operation progress:

            - `GET /v1/tasks/{task_id}` - Check individual task status and
            details

            Poll task status until completion (`FINISHED`/`ERROR`) before
            proceeding with dependent operations.
          example:
            - d478ae29-dedc-4869-82f0-96104425f565
          examples:
            - - d478ae29-dedc-4869-82f0-96104425f565
          items:
            type: string
          title: Tasks
          type: array
      required:
        - tasks
      title: TaskIDsSerializer
      type: object
    CreateClientProfileFieldSerializer:
      properties:
        base_field:
          description: Unique identifier of the DDoS protection field being configured
          example: 123
          examples:
            - 123
          title: Base Field
          type: integer
        field_value:
          anyOf:
            - items: {}
              type: array
            - type: integer
            - type: string
            - type: 'null'
          description: Complex value for the DDoS profile field
          examples:
            - null
            - - 100001
          title: Field Value
      required:
        - base_field
      title: CreateClientProfileFieldSerializer
      type: object
  securitySchemes:
    APIKey:
      description: >-
        API key for authentication. Make sure to include the word `apikey`,
        followed by a single space and then your token.

        Example: `apikey 1234$abcdef`
      type: apiKey
      in: header
      name: Authorization

````