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

# Apply Firewall Rules

> Reconciles the panel's saved rules and their priority order on every attached or previously deployed node. Use this after a PROXMOX_SYNC_FAILED response instead of creating the rule again. Synchronization verifies configuration, not live packet filtering.

Use this endpoint to retry a failed firewall synchronization. Rule changes remain saved in the panel when Proxmox is unavailable; a `502 PROXMOX_SYNC_FAILED` response does not mean they were rolled back.

A successful response confirms rule configuration and assignments on all target nodes. It does not verify live packet filtering or enable the VM/network-interface firewall.


## OpenAPI

````yaml POST /security-groups/{id}/deploy
openapi: 3.0.3
info:
  title: CloudBlast API
  description: >-
    The CloudBlast V2 API provides a modern RESTful interface for managing your
    cloud infrastructure programmatically. All responses follow a consistent `{
    "data": ... }` or `{ "error": ... }` format.
  version: 2.0.0
servers:
  - url: https://console.cloudblast.io/api/v2
    description: Production
security:
  - bearerAuth: []
paths:
  /security-groups/{id}/deploy:
    post:
      tags:
        - Security Groups
      summary: Apply or retry firewall deployment
      description: >-
        Reconciles the panel's saved rules and their priority order on every
        attached or previously deployed node. Use this after a
        PROXMOX_SYNC_FAILED response instead of creating the rule again.
        Synchronization verifies configuration, not live packet filtering.
      operationId: deploySecurityGroup
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: integer
      responses:
        '200':
          description: Configuration synchronized on all target nodes
        '401':
          $ref: '#/components/responses/Unauthenticated'
        '404':
          $ref: '#/components/responses/NotFound'
        '502':
          description: >-
            Synchronization incomplete. Saved desired state is retained; retry
            deployment.
components:
  responses:
    Unauthenticated:
      description: Authentication failed
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              code: UNAUTHENTICATED
              message: >-
                Missing or invalid Authorization header. Use: Authorization:
                Bearer <token>
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error:
              code: NOT_FOUND
              message: Server not found.
  schemas:
    Error:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              description: Machine-readable error code
            message:
              type: string
              description: Human-readable error message
          required:
            - code
            - message
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        API token from your CloudBlast account settings. Pass as `Authorization:
        Bearer <token>`.

````