---
title: "Delete a WAAS policy rule by ruleId"
method: DELETE
path: "/environments/{environmentId}/waas/policies"
tags: ["Waas"]
---

# Delete a WAAS policy rule by ruleId

`DELETE /environments/{environmentId}/waas/policies`

## Path parameters

- `environmentId` string, required

## Request body

- WaasPolicyDeleteRequest
  - `ruleIdsToDelete` Uuid[], required — Array of rule IDs to delete from the policy

## Response `200`

WAAS policy rules deleted successfully

- WaasPolicyResponse
  - `message` string — Message describing the operation result
  - `policyId` string, required
  - `projectEnvironmentId` string, required
  - `createdAt` string, date-time, required
  - `updatedAt` string, date-time, required
  - `policyContent` WaasPolicyRule[], required
    - `ruleId` string
    - `name` string, required — Human-readable name for the rule
    - `ruleType` 'allow' | 'deny', required — Whether the rule permits or denies the specified action
    - `address` union — Target address EVM or SVM (legacy field)
      - string — Valid blockchain wallet address, must be an alphanumeric string without any special characters
      - string — Valid Solana wallet address, must be a 44-character string using base58 characters
    - `addresses` union[] — Target address(es) EVM or SVM
      - union
        - string — Valid blockchain wallet address, must be an alphanumeric string without any special characters
        - string — Valid Solana wallet address, must be a 44-character string using base58 characters
    - `chain` 'EVM' | 'SVM' | 'SUI' | 'BTC' | 'TON', required
    - `chainId` number — Chain ID for the policy rule (legacy field)
    - `chainIds` number[] — Chain IDs for the policy rule
    - `contractAbi` object[] — Contract ABI interface
    - `functionName` string — Specific function name to permit/deny
    - `argumentConstraints` WaasPolicyArgumentConstraint[] — Validation rules for function arguments
      - `operator` 'equal' | 'greater' | 'less' | 'greaterEqual' | 'lessEqual' | 'notEqual', required — Comparison operator for argument validation
      - `value` unknown, required
      - `index` integer, required — Index of the function argument to validate
    - `valueLimit` object — Value limits for the policy rule
      - `asset` union — Target asset address. If undefined, refers to native token (e.g., ETH)
        - string — Valid blockchain wallet address, must be an alphanumeric string without any special characters
        - string — Valid Solana wallet address, must be a 44-character string using base58 characters
      - `maxPerCall` string — Maximum value per function call (as string to handle bigint)
      - `totalLimit` string — Cumulative value limit (as string to handle bigint)
    - `operationRestrictions` object — Operation-level restrictions for the wallet
      - `blockExport` boolean — Block private key export
      - `blockRevocation` boolean — Block end-user revocation of delegated access
      - `blockClientSigning` boolean — Block all end-user signing (not delegated)

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `422` — Unprocessable Entity
- `500` — Internal Server Error

---

[API](https://skmtc.net/dynamic/apis/dashboard-api.md) · [All operations](https://skmtc.net/dynamic/apis/dashboard-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/dynamic/dashboard-api/versions/aac826315d90/schema)
