Every API here is available over the APIs.io API and to AI agents over MCP.
openapi: 3.2.0
info:
title: LiteLLM Policies API
description: "Enterprise Edition \n\nProxy Server to call 100+ LLMs in the OpenAI format. [**Customize Swagger Docs**](https://docs.litellm.ai/docs/proxy/enterprise#swagger-docs---custom-routes--branding)\n\n\U0001F449 [```LiteLLM Admin Panel on /ui```](/ui). Create, Edit Keys with SSO. Having issues? Try [```Fallback Login```](/fallback/login)\n\n\U0001F4B8 [```LiteLLM Model Cost Map```](https://models.litellm.ai/).\n\n\U0001F50E [```LiteLLM Model Hub```](/ui/model_hub_table). See available models on the proxy. [**Docs**](https://docs.litellm.ai/docs/proxy/ai_hub)"
version: 1.95.0
x-operator: institution
x-provenance:
method: probed
source: https://llmproxy.uva.nl/openapi.json
retrieved: '2026-08-19'
note: Document is generated by the LiteLLM proxy software the University of Amsterdam self-hosts; the deployment, the key issuance and the host (llmproxy.uva.nl, UvA Azure) are the institution's. servers[] added by API Evangelist because the served document omits it; nothing else altered.
servers:
- url: https://llmproxy.uva.nl
description: University of Amsterdam / Amsterdam University of Applied Sciences shared AI gateway
tags:
- name: Policies
paths:
/policies/list:
get:
tags:
- Policies
summary: List Policies
description: "List all policies from the database. Optionally filter by version_status.\n\nQuery params:\n- version_status: Optional. One of \"draft\", \"published\", \"production\".\n If omitted, all versions are returned.\n\nExample Request:\n```bash\ncurl -X GET \"http://localhost:4000/policies/list\" \\\n -H \"Authorization: Bearer <your_api_key>\"\ncurl -X GET \"http://localhost:4000/policies/list?version_status=production\" \\\n -H \"Authorization: Bearer <your_api_key>\"\n```\n\nExample Response:\n```json\n{\n \"policies\": [\n {\n \"policy_id\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"policy_name\": \"global-baseline\",\n \"version_number\": 1,\n \"version_status\": \"production\",\n \"inherit\": null,\n \"description\": \"Base guardrails for all requests\",\n \"guardrails_add\": [\"pii_masking\"],\n \"guardrails_remove\": [],\n \"condition\": null,\n \"created_at\": \"2024-01-01T00:00:00Z\",\n \"updated_at\": \"2024-01-01T00:00:00Z\"\n }\n ],\n \"total_count\": 1\n}\n```"
operationId: list_policies_policies_list_get
security:
- APIKeyHeader: []
parameters:
- name: version_status
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Version Status
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyListDBResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/policies:
post:
tags:
- Policies
summary: Create Policy
description: "Create a new policy.\n\nExample Request:\n```bash\ncurl -X POST \"http://localhost:4000/policies\" \\\n -H \"Authorization: Bearer <your_api_key>\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\n \"policy_name\": \"global-baseline\",\n \"description\": \"Base guardrails for all requests\",\n \"guardrails_add\": [\"pii_masking\", \"prompt_injection\"],\n \"guardrails_remove\": []\n }'\n```\n\nExample Response:\n```json\n{\n \"policy_id\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"policy_name\": \"global-baseline\",\n \"inherit\": null,\n \"description\": \"Base guardrails for all requests\",\n \"guardrails_add\": [\"pii_masking\", \"prompt_injection\"],\n \"guardrails_remove\": [],\n \"condition\": null,\n \"created_at\": \"2024-01-01T00:00:00Z\",\n \"updated_at\": \"2024-01-01T00:00:00Z\"\n}\n```"
operationId: create_policy_policies_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyCreateRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyDBResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
/policies/name/{policy_name}/versions:
get:
tags:
- Policies
summary: List Policy Versions
description: List all versions of a policy by name, ordered by version_number descending.
operationId: list_policy_versions_policies_name__policy_name__versions_get
security:
- APIKeyHeader: []
parameters:
- name: policy_name
in: path
required: true
schema:
type: string
title: Policy Name
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyVersionListResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
post:
tags:
- Policies
summary: Create Policy Version
description: 'Create a new draft version of a policy. Copies all fields from the source.
Source is current production if source_policy_id is not provided.'
operationId: create_policy_version_policies_name__policy_name__versions_post
security:
- APIKeyHeader: []
parameters:
- name: policy_name
in: path
required: true
schema:
type: string
title: Policy Name
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyVersionCreateRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyDBResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/policies/{policy_id}/status:
put:
tags:
- Policies
summary: Update Policy Version Status
description: 'Update a policy version''s status. Valid transitions:
- draft -> published
- published -> production (demotes current production to published)
- production -> published (demotes, policy becomes inactive)'
operationId: update_policy_version_status_policies__policy_id__status_put
security:
- APIKeyHeader: []
parameters:
- name: policy_id
in: path
required: true
schema:
type: string
title: Policy Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyVersionStatusUpdateRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyDBResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/policies/compare:
get:
tags:
- Policies
summary: Compare Policy Versions
description: 'Compare two policy versions. Query params: version_a, version_b (policy version IDs).'
operationId: compare_policy_versions_policies_compare_get
security:
- APIKeyHeader: []
parameters:
- name: version_a
in: query
required: true
schema:
type: string
title: Version A
- name: version_b
in: query
required: true
schema:
type: string
title: Version B
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyVersionCompareResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/policies/name/{policy_name}/all-versions:
delete:
tags:
- Policies
summary: Delete All Policy Versions
description: Delete all versions of a policy. Also removes from in-memory registry.
operationId: delete_all_policy_versions_policies_name__policy_name__all_versions_delete
security:
- APIKeyHeader: []
parameters:
- name: policy_name
in: path
required: true
schema:
type: string
title: Policy Name
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/policies/{policy_id}:
get:
tags:
- Policies
summary: Get Policy
description: "Get a policy by ID.\n\nExample Request:\n```bash\ncurl -X GET \"http://localhost:4000/policies/123e4567-e89b-12d3-a456-426614174000\" \\\n -H \"Authorization: Bearer <your_api_key>\"\n```"
operationId: get_policy_policies__policy_id__get
security:
- APIKeyHeader: []
parameters:
- name: policy_id
in: path
required: true
schema:
type: string
title: Policy Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyDBResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
put:
tags:
- Policies
summary: Update Policy
description: "Update an existing policy.\n\nExample Request:\n```bash\ncurl -X PUT \"http://localhost:4000/policies/123e4567-e89b-12d3-a456-426614174000\" \\\n -H \"Authorization: Bearer <your_api_key>\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\n \"description\": \"Updated description\",\n \"guardrails_add\": [\"pii_masking\", \"toxicity_filter\"]\n }'\n```"
operationId: update_policy_policies__policy_id__put
security:
- APIKeyHeader: []
parameters:
- name: policy_id
in: path
required: true
schema:
type: string
title: Policy Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyUpdateRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyDBResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
delete:
tags:
- Policies
summary: Delete Policy
description: "Delete a policy.\n\nExample Request:\n```bash\ncurl -X DELETE \"http://localhost:4000/policies/123e4567-e89b-12d3-a456-426614174000\" \\\n -H \"Authorization: Bearer <your_api_key>\"\n```\n\nExample Response:\n```json\n{\n \"message\": \"Policy 123e4567-e89b-12d3-a456-426614174000 deleted successfully\"\n}\n```"
operationId: delete_policy_policies__policy_id__delete
security:
- APIKeyHeader: []
parameters:
- name: policy_id
in: path
required: true
schema:
type: string
title: Policy Id
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/policies/{policy_id}/resolved-guardrails:
get:
tags:
- Policies
summary: Get Resolved Guardrails
description: "Get the resolved guardrails for a policy (including inherited guardrails).\n\nThis endpoint resolves the full inheritance chain and returns the final\nset of guardrails that would be applied for this policy.\n\nExample Request:\n```bash\ncurl -X GET \"http://localhost:4000/policies/123e4567-e89b-12d3-a456-426614174000/resolved-guardrails\" \\\n -H \"Authorization: Bearer <your_api_key>\"\n```\n\nExample Response:\n```json\n{\n \"policy_id\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"policy_name\": \"healthcare-compliance\",\n \"resolved_guardrails\": [\"pii_masking\", \"prompt_injection\", \"toxicity_filter\"]\n}\n```"
operationId: get_resolved_guardrails_policies__policy_id__resolved_guardrails_get
security:
- APIKeyHeader: []
parameters:
- name: policy_id
in: path
required: true
schema:
type: string
title: Policy Id
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/policies/test-pipeline:
post:
tags:
- Policies
summary: Test Pipeline
description: "Test a guardrail pipeline with sample messages.\n\nExecutes the pipeline steps against the provided test messages and returns\nstep-by-step results showing which guardrails passed/failed, actions taken,\nand timing information.\n\nExample Request:\n```bash\ncurl -X POST \"http://localhost:4000/policies/test-pipeline\" \\\n -H \"Authorization: Bearer <your_api_key>\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\n \"pipeline\": {\n \"mode\": \"pre_call\",\n \"steps\": [\n {\"guardrail\": \"pii-guard\", \"on_pass\": \"next\", \"on_fail\": \"block\"}\n ]\n },\n \"test_messages\": [{\"role\": \"user\", \"content\": \"My SSN is 123-45-6789\"}]\n }'\n```"
operationId: test_pipeline_policies_test_pipeline_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PipelineTestRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
/policies/attachments/list:
get:
tags:
- Policies
summary: List Policy Attachments
description: "List all policy attachments from the database.\n\nExample Request:\n```bash\ncurl -X GET \"http://localhost:4000/policies/attachments/list\" \\\n -H \"Authorization: Bearer <your_api_key>\"\n```\n\nExample Response:\n```json\n{\n \"attachments\": [\n {\n \"attachment_id\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"policy_name\": \"global-baseline\",\n \"scope\": \"*\",\n \"teams\": [],\n \"keys\": [],\n \"models\": [],\n \"created_at\": \"2024-01-01T00:00:00Z\",\n \"updated_at\": \"2024-01-01T00:00:00Z\"\n }\n ],\n \"total_count\": 1\n}\n```"
operationId: list_policy_attachments_policies_attachments_list_get
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyAttachmentListResponse'
security:
- APIKeyHeader: []
/policies/attachments:
post:
tags:
- Policies
summary: Create Policy Attachment
description: "Create a new policy attachment.\n\nExample Request:\n```bash\ncurl -X POST \"http://localhost:4000/policies/attachments\" \\\n -H \"Authorization: Bearer <your_api_key>\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\n \"policy_name\": \"global-baseline\",\n \"scope\": \"*\"\n }'\n```\n\nExample with team-specific attachment:\n```bash\ncurl -X POST \"http://localhost:4000/policies/attachments\" \\\n -H \"Authorization: Bearer <your_api_key>\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\n \"policy_name\": \"healthcare-compliance\",\n \"teams\": [\"healthcare-team\", \"medical-research\"]\n }'\n```\n\nExample Response:\n```json\n{\n \"attachment_id\": \"123e4567-e89b-12d3-a456-426614174000\",\n \"policy_name\": \"global-baseline\",\n \"scope\": \"*\",\n \"teams\": [],\n \"keys\": [],\n \"models\": [],\n \"created_at\": \"2024-01-01T00:00:00Z\",\n \"updated_at\": \"2024-01-01T00:00:00Z\"\n}\n```"
operationId: create_policy_attachment_policies_attachments_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyAttachmentCreateRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyAttachmentDBResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
/policies/attachments/{attachment_id}:
get:
tags:
- Policies
summary: Get Policy Attachment
description: "Get a policy attachment by ID.\n\nExample Request:\n```bash\ncurl -X GET \"http://localhost:4000/policies/attachments/123e4567-e89b-12d3-a456-426614174000\" \\\n -H \"Authorization: Bearer <your_api_key>\"\n```"
operationId: get_policy_attachment_policies_attachments__attachment_id__get
security:
- APIKeyHeader: []
parameters:
- name: attachment_id
in: path
required: true
schema:
type: string
title: Attachment Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyAttachmentDBResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
delete:
tags:
- Policies
summary: Delete Policy Attachment
description: "Delete a policy attachment.\n\nExample Request:\n```bash\ncurl -X DELETE \"http://localhost:4000/policies/attachments/123e4567-e89b-12d3-a456-426614174000\" \\\n -H \"Authorization: Bearer <your_api_key>\"\n```\n\nExample Response:\n```json\n{\n \"message\": \"Attachment 123e4567-e89b-12d3-a456-426614174000 deleted successfully\"\n}\n```"
operationId: delete_policy_attachment_policies_attachments__attachment_id__delete
security:
- APIKeyHeader: []
parameters:
- name: attachment_id
in: path
required: true
schema:
type: string
title: Attachment Id
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/policies/usage/overview:
get:
tags:
- Policies
summary: Policies Usage Overview
description: Return policy performance overview for the dashboard.
operationId: policies_usage_overview_policies_usage_overview_get
security:
- APIKeyHeader: []
parameters:
- name: start_date
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: YYYY-MM-DD
title: Start Date
description: YYYY-MM-DD
- name: end_date
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: YYYY-MM-DD
title: End Date
description: YYYY-MM-DD
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/UsageOverviewResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/policy/info/{policy_name}:
get:
description: 'Get detailed information about a specific policy.
Returns:
- Policy configuration
- Resolved guardrails (after inheritance)
- Inheritance chain'
operationId: get_policy_info_policy_info__policy_name__get
parameters:
- in: path
name: policy_name
required: true
schema:
title: Policy Name
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyInfoResponse'
description: Successful Response
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
description: Validation Error
security:
- APIKeyHeader: []
summary: Get Policy Info
tags:
- Policies
/policy/list:
get:
description: 'List all loaded policies with their resolved guardrails.
Returns information about each policy including:
- Inheritance configuration
- Scope (teams, keys, models)
- Guardrails to add/remove
- Resolved guardrails (after inheritance)
- Inheritance chain'
operationId: list_policies_policy_list_get
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyListResponse'
description: Successful Response
security:
- APIKeyHeader: []
summary: List Policies
tags:
- Policies
/policy/templates:
get:
description: 'Get policy templates for the UI (pre-configured guardrail combinations).
Fetches from GitHub with automatic fallback to local backup on failure.
Set LITELLM_LOCAL_POLICY_TEMPLATES=true to skip GitHub and use local backup only.'
operationId: get_policy_templates_policy_templates_get
responses:
'200':
content:
application/json:
schema:
items: {}
title: Response Get Policy Templates Policy Templates Get
type: array
description: Successful Response
security:
- APIKeyHeader: []
summary: Get Policy Templates
tags:
- Policies
/policy/templates/enrich:
post:
description: 'Enrich a policy template with LLM-discovered data (e.g. competitor names).
Calls an onboarded LLM to discover competitors for the given brand name,
then returns enriched guardrailDefinitions with the discovered data populated.'
operationId: enrich_policy_template_policy_templates_enrich_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/EnrichTemplateRequest'
required: true
responses:
'200':
content:
application/json:
schema:
additionalProperties: true
title: Response Enrich Policy Template Policy Templates Enrich Post
type: object
description: Successful Response
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
description: Validation Error
security:
- APIKeyHeader: []
summary: Enrich Policy Template
tags:
- Policies
/policy/templates/enrich/stream:
post:
description: 'Stream competitor names as SSE events as the LLM generates them.
Events:
- data: {"type": "competitor", "name": "..."} — each competitor as discovered
- data: {"type": "done", "competitors": [...], "competitor_variations": {...}, "guardrailDefinitions": [...]}'
operationId: enrich_policy_template_stream_policy_templates_enrich_stream_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/EnrichTemplateRequest'
required: true
responses:
'200':
content:
application/json:
schema: {}
description: Successful Response
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
description: Validation Error
security:
- APIKeyHeader: []
summary: Enrich Policy Template Stream
tags:
- Policies
/policy/templates/suggest:
post:
description: 'Use AI to suggest policy templates based on attack examples and descriptions.
Calls an LLM with tool calling to match user requirements to available templates.'
operationId: suggest_policy_templates_policy_templates_suggest_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SuggestTemplatesRequest'
required: true
responses:
'200':
content:
application/json:
schema:
additionalProperties: true
title: Response Suggest Policy Templates Policy Templates Suggest Post
type: object
description: Successful Response
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
description: Validation Error
security:
- APIKeyHeader: []
summary: Suggest Policy Templates
tags:
- Policies
/policy/templates/test:
post:
description: 'Test a policy template''s guardrails against a text input without creating them.
Instantiates temporary guardrails from the template definitions, runs them
against the provided text, and returns per-guardrail results so users can
verify the template solves their problem before creating it.'
operationId: test_policy_template_policy_templates_test_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/TestPolicyTemplateRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/TestPolicyTemplateResponse'
description: Successful Response
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
description: Validation Error
security:
- APIKeyHeader: []
summary: Test Policy Template
tags:
- Policies
/policy/test:
post:
description: "Test which policies would match a given request context.\n\nThis is useful for debugging and understanding policy behavior.\n\nRequest body:\n```json\n{\n \"team_alias\": \"healthcare-team\",\n \"key_alias\": \"my-api-key\",\n \"model\": \"gpt-4\"\n}\n```\n\nReturns:\n- matching_policies: List of policy names that match\n- resolved_guardrails: Final list of guardrails that would be applied"
operationId: test_policy_matching_policy_test_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyMatchContext'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyTestResponse'
description: Successful Response
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
description: Validation Error
security:
- APIKeyHeader: []
summary: Test Policy Matching
tags:
- Policies
/policy/validate:
post:
description: "Validate a policy configuration before applying it.\n\nChecks:\n- All referenced guardrails exist in the guardrail registry\n- All non-wildcard team aliases exist in the database\n- All non-wildcard key aliases exist in the database\n- Inheritance chains are valid (no cycles, parents exist)\n- Scope patterns are syntactically valid\n\nReturns:\n- valid: True if the policy configuration is valid (no blocking errors)\n- errors: List of blocking validation errors\n- warnings: List of non-blocking validation warnings\n\nExample request:\n```json\n{\n \"policies\": {\n \"global-baseline\": {\n \"guardrails\": {\n \"add\": [\"pii_blocker\", \"phi_blocker\"]\n },\n \"scope\": {\n \"teams\": [\"*\"],\n \"keys\": [\"*\"],\n \"models\": [\"*\"]\n }\n },\n \"healthcare-compliance\": {\n \"inherit\": \"global-baseline\",\n \"guardrails\": {\n \"add\": [\"hipaa_audit\"]\n },\n \"scope\": {\n \"teams\": [\"healthcare-team\"]\n }\n }\n }\n}\n```"
operationId: validate_policy_policy_validate_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyValidateRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyValidationResponse'
description: Successful Response
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
description: Validation Error
security:
- APIKeyHeader: []
summary: Validate Policy
tags:
- Policies
/utils/test_policies_and_guardrails:
post:
description: 'Apply policies and/or guardrails to inputs (for compliance UI testing).
Use inputs_list for batch testing: each input is processed as a separate call so
per-input block/allow and errors are returned.
Use inputs for a single call (legacy).'
operationId: test_policies_and_guardrails_utils_test_policies_and_guardrails_post
requestBody:
content:
application/json:
schema:
# --- truncated at 32 KB (76 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/university-of-amsterdam/refs/heads/main/openapi/university-of-amsterdam-policies-api-openapi.yml