APIClaw Policy Resolve API
The policy_resolve API from APIClaw — 2 operation(s) for policy_resolve.
The policy_resolve API from APIClaw — 2 operation(s) for policy_resolve.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/apiclaw:apiclaw-policy-resolve-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: LiteLLM Policy Resolve API
description: 'Proxy Server to call 100+ LLMs in the OpenAI format. **Customize Swagger Docs**
👉 ```LiteLLM Admin Panel on /ui```. Create, Edit Keys with SSO. Having issues? Try ```Fallback Login```
💸 ```LiteLLM Model Cost Map```.
🔎 ```LiteLLM Model Hub```. See available models on the proxy. **Docs**'
version: 1.102.1
tags:
- name: policy_resolve
paths:
/policies/attachments/estimate-impact:
post:
description: 'Estimate how many keys and teams would be affected by a policy attachment.
Use this before creating an attachment to preview the blast radius.
Example Request:
```bash
curl -X POST "http://localhost:4000/policies/attachments/estimate-impact" \
-H "Authorization: Bearer " \
-H "Content-Type: application/json" \
-d ''{
"policy_name": "hipaa-compliance",
"tags": ["healthcare", "health-*"]
}''
```'
operationId: estimate_attachment_impact_policies_attachments_estimate_impact_post_2
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyAttachmentCreateRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/AttachmentImpactResponse'
description: Successful Response
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
description: Validation Error
security:
- APIKeyHeader: []
summary: Estimate Attachment Impact
tags:
- policy_resolve
/policies/resolve:
post:
description: 'Resolve which policies and guardrails apply for a given context.
Use this endpoint to debug "what guardrails would apply to a request
with this team/key/model/tags combination?"
Example Request:
```bash
curl -X POST "http://localhost:4000/policies/resolve" \
-H "Authorization: Bearer " \
-H "Content-Type: application/json" \
-d ''{
"tags": ["healthcare"],
"model": "gpt-4"
}''
```'
operationId: resolve_policies_for_context_policies_resolve_post_2
parameters:
- description: Force a DB sync before resolving. Default uses in-memory cache.
in: query
name: force_sync
required: false
schema:
default: false
description: Force a DB sync before resolving. Default uses in-memory cache.
title: Force Sync
type: boolean
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyResolveRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyResolveResponse'
description: Successful Response
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
description: Validation Error
security:
- APIKeyHeader: []
summary: Resolve Policies For Context
tags:
- policy_resolve
components:
schemas:
PolicyResolveResponse:
description: Response for resolving effective policies/guardrails for a context.
properties:
effective_guardrails:
description: Final list of guardrails that would be applied.
items:
type: string
title: Effective Guardrails
type: array
matched_policies:
description: Details about each matched policy and why it matched.
items:
$ref: '#/components/schemas/PolicyMatchDetail'
title: Matched Policies
type: array
title: PolicyResolveResponse
type: object
AttachmentImpactResponse:
description: Response for estimating the impact of a policy attachment.
properties:
affected_keys_count:
default: 0
description: Number of keys that would be affected (named + unnamed).
title: Affected Keys Count
type: integer
affected_teams_count:
default: 0
description: Number of teams that would be affected (named + unnamed).
title: Affected Teams Count
type: integer
sample_keys:
description: Sample of affected key aliases (up to 10).
items:
type: string
title: Sample Keys
type: array
sample_teams:
description: Sample of affected team aliases (up to 10).
items:
type: string
title: Sample Teams
type: array
unnamed_keys_count:
default: 0
description: Number of affected keys without an alias.
title: Unnamed Keys Count
type: integer
unnamed_teams_count:
default: 0
description: Number of affected teams without an alias.
title: Unnamed Teams Count
type: integer
title: AttachmentImpactResponse
type: object
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
PolicyAttachmentCreateRequest:
properties:
policy_name:
type: string
title: Policy Name
description: Name of the policy to attach.
scope:
anyOf:
- type: string
- type: 'null'
title: Scope
description: Use '*' for global scope (applies to all requests).
teams:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Teams
description: Team aliases or patterns this attachment applies to.
keys:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Keys
description: Key aliases or patterns this attachment applies to.
models:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Models
description: Model names or patterns this attachment applies to.
tags:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Tags
description: Tag patterns this attachment applies to. Supports wildcards (e.g., health-*).
type: object
required:
- policy_name
title: PolicyAttachmentCreateRequest
description: Request body for creating a policy attachment.
PolicyMatchDetail:
description: Details about why a specific policy matched.
properties:
guardrails_added:
description: Guardrails this policy contributes.
items:
type: string
title: Guardrails Added
type: array
matched_via:
description: How the policy was matched (e.g., 'tag:healthcare', 'team:health-team', 'scope:*').
title: Matched Via
type: string
policy_name:
description: Name of the matched policy.
title: Policy Name
type: string
required:
- policy_name
- matched_via
title: PolicyMatchDetail
type: object
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
PolicyResolveRequest:
description: Request body for resolving effective policies/guardrails for a context.
properties:
key_alias:
anyOf:
- type: string
- type: 'null'
description: Key alias to resolve for.
title: Key Alias
model:
anyOf:
- type: string
- type: 'null'
description: Model name to resolve for.
title: Model
tags:
anyOf:
- items:
type: string
type: array
- type: 'null'
description: Tags to resolve for.
title: Tags
team_alias:
anyOf:
- type: string
- type: 'null'
description: Team alias to resolve for.
title: Team Alias
title: PolicyResolveRequest
type: object
securitySchemes:
APIKeyHeader:
type: apiKey
description: Bearer token
in: header
name: x-litellm-api-key