---
title: "Update Policy"
method: PATCH
path: "/api/mesh/policies/{team_key}/{policy_key}"
tags: ["mesh"]
---

# Update Policy

`PATCH /api/mesh/policies/{team_key}/{policy_key}`

## Request

- Base URL: `https://api.superit.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.superit.ai/api/mesh/policies/{team_key}/{policy_key}`
- Auth: HTTP bearer

## Path parameters

- `team_key` string, required
- `policy_key` string, required

## Request body

- PolicyUpdateBody: Partial update for a team policy.
  - `group` 'powershell_helpers_formatting' | 'networking_connectivity' | 'security_device_trust' | 'locale_time_power' | 'system_hardware' | 'processes_services_event_logs' | 'files_registry' | 'identity_sessions_policy' | 'printing' | 'storage' | 'software_updates' | 'scheduled_tasks', nullable
  - `decision` 'allow' | 'deny' | 'needs_approval', nullable
  - `description` string, nullable
  - `notes` string, nullable
  - `priority` integer, nullable
  - `isActive` boolean, nullable

## Response `200`

Successful Response

- PolicyDetail: Unified policy item — represents the effective policy for a given key.
  - `group` 'powershell_helpers_formatting' | 'networking_connectivity' | 'security_device_trust' | 'locale_time_power' | 'system_hardware' | 'processes_services_event_logs' | 'files_registry' | 'identity_sessions_policy' | 'printing' | 'storage' | 'software_updates' | 'scheduled_tasks', nullable
  - `key` string, required
  - `policyType` 'cmdlet' | 'pattern', required
  - `source` 'global' | 'team', required
  - `decision` 'allow' | 'deny' | 'needs_approval', required
  - `isActive` boolean, required
  - `createdAt` string, nullable
  - `updatedAt` string, nullable
  - `cmdletName` string, nullable
  - `module` string, nullable
  - `verb` string, nullable
  - `noun` string, nullable
  - `operatingSystem` string, nullable
  - `pattern` string, nullable
  - `priority` integer, nullable
  - `description` string, nullable
  - `notes` string, nullable
  - `securityNotes` string, nullable
  - `isSystemLocked` boolean, nullable
  - `override` PolicyOverrideRef: Reference to the global rule a team rule shadows.
    - `source` 'global'
    - `decision` 'allow' | 'deny' | 'needs_approval', required
    - `isSystemLocked` boolean, required
  - `loosens` string, nullable
  - `loosenedBy` integer, nullable

## Other responses

- `400`: Invalid input
- `401`: Not authenticated
- `403`: Forbidden
- `404`: Not found
- `405`: Method not allowed
- `409`: Conflict
- `422`: Validation Error

---

[API](https://skmtc.dev/superit/apis/super-it-api.md) - [All operations](https://skmtc.dev/superit/apis/super-it-api/llms.txt) - [OpenAPI document](https://skmtc.dev/superit/apis/super-it-api/revisions/4944d556c2bb?raw)
