---
title: "AuthZEN batch access evaluation"
method: POST
path: "/access/v1/evaluations"
---

# AuthZEN batch access evaluation

`POST /access/v1/evaluations`

## Request

- Base URL: `https://getsanction.com/api`
- URL: `https://getsanction.com/api/access/v1/evaluations`
- Auth: API key in header `x-api-key`

OpenID AuthZEN 1.0 batch endpoint. Top-level subject/action/resource act as defaults each item overrides; options.evaluations_semantic selects execute_all (default), deny_on_first_deny, or permit_on_first_permit. Decision-only, like the single-evaluation endpoint.

## Request body

- AuthZenEvaluationsRequest: OpenID AuthZEN 1.0 batch request. Top-level subject/action/resource are defaults; each item in evaluations overrides them member-wise. Without an evaluations array the defaults are evaluated as a single evaluation. Max 50 items.
  - `subject` AuthZenEntity: An AuthZEN subject or resource: a typed identifier with optional properties.
    - `type` string, required
    - `id` string, required
    - `properties` object
  - `action` AuthZenAction
    - `name` string, required
    - `properties` object
  - `resource` AuthZenEntity: An AuthZEN subject or resource: a typed identifier with optional properties.
    - `type` string, required
    - `id` string, required
    - `properties` object
  - `context` object
  - `evaluations` AuthZenEvaluationItem[]
    - `subject` AuthZenEntity: An AuthZEN subject or resource: a typed identifier with optional properties.
      - `type` string, required
      - `id` string, required
      - `properties` object
    - `action` AuthZenAction
      - `name` string, required
      - `properties` object
    - `resource` AuthZenEntity: An AuthZEN subject or resource: a typed identifier with optional properties.
      - `type` string, required
      - `id` string, required
      - `properties` object
    - `context` object
  - `options` object
    - `evaluations_semantic` 'execute_all' | 'deny_on_first_deny' | 'permit_on_first_permit': execute_all (default) evaluates every item; the others stop at the first deny/permit and return results up to that point.

## Response `200`

Per-item results, in request order (possibly truncated by the chosen semantic)

- AuthZenEvaluationsResponse
  - `evaluations` AuthZenDecision[]
    - `decision` boolean, required
    - `context` object
      - `code` string
      - `reason` string
      - `remediation` string

## Other responses

- `400`: Malformed request or item (the whole batch fails; the error names the item index)
- `401`: Invalid API key

---

[API](https://skmtc.dev/getsanction/apis/sanction-agent-governance-api.md) · [All operations](https://skmtc.dev/getsanction/apis/sanction-agent-governance-api/llms.txt) · [OpenAPI document](https://skmtc.dev/getsanction/apis/sanction-agent-governance-api/revisions/c645a9e4b72d?raw)
