Barndoor · Schema

UpdatePolicy

Request body for partial updates to an existing policy.

AI AgentsAI GovernanceAgentic AIMCPModel Context ProtocolPolicy EnforcementOAuthIdentitySecurityAuditControl Plane

Properties

Name Type Description
name object Human-friendly policy name, unique within an organization
description object Longer description of the policy.
support_contact object Primary point of contact associated with the policy.
tags object Tags for categorizing the policy.
status object The current lifecycle status of the policy.
application_ids object List of application (agent) identifiers to which this policy applies.
rules object Full set of rules that govern the policy.
View JSON Schema on GitHub

JSON Schema

barndoor-update-policy-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "UpdatePolicy",
  "properties": {
    "name": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Name",
      "description": "Human-friendly policy name, unique within an organization"
    },
    "description": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Description",
      "description": "Longer description of the policy."
    },
    "support_contact": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Support Contact",
      "description": "Primary point of contact associated with the policy."
    },
    "tags": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "title": "Tags",
      "description": "Tags for categorizing the policy."
    },
    "status": {
      "anyOf": [
        {
          "type": "string",
          "enum": [
            "DRAFT",
            "ACTIVE",
            "INACTIVE",
            "ARCHIVED"
          ],
          "title": "PolicyStatus",
          "description": "Policy lifecycle status."
        },
        {
          "type": "null"
        }
      ],
      "description": "The current lifecycle status of the policy."
    },
    "application_ids": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "title": "Application Ids",
      "description": "List of application (agent) identifiers to which this policy applies."
    },
    "rules": {
      "anyOf": [
        {
          "items": {
            "properties": {
              "name": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "null"
                  }
                ],
                "title": "Name",
                "description": "Optional display name for the rule",
                "default": ""
              },
              "authorized": {
                "anyOf": [
                  {
                    "type": "boolean"
                  },
                  {
                    "type": "null"
                  }
                ],
                "title": "Authorized",
                "description": "Determines if the actions are allowed (True) or denied (False)",
                "default": false
              },
              "actions": {
                "items": {
                  "type": "string"
                },
                "type": "array",
                "title": "Actions",
                "description": "Actions this rule applies to"
              },
              "roles_groups": {
                "items": {
                  "type": "string"
                },
                "type": "array",
                "title": "Roles Groups",
                "description": "Roles or groups this rule applies to"
              },
              "condition": {
                "anyOf": [
                  {
                    "properties": {
                      "match": {
                        "oneOf": [
                          {
                            "type": "object"
                          },
                          {
                            "type": "object"
                          },
                          {
                            "type": "object"
                          },
                          {
                            "type": "object"
                          }
                        ],
                        "title": "Match"
                      }
                    },
                    "type": "object",
                    "required": [
                      "match"
                    ],
                    "title": "PolicyRuleCondition"
                  },
                  {
                    "type": "null"
                  }
                ],
                "description": "Optional condition that must be met for the rule to apply"
              }
            },
            "type": "object",
            "title": "PolicyRule",
            "description": "Represents a single policy rule with compatible conditions."
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "title": "Rules",
      "description": "Full set of rules that govern the policy."
    }
  },
  "type": "object",
  "description": "Request body for partial updates to an existing policy."
}