---
title: "Simulate policy evaluation"
method: POST
path: "/policies/simulate"
tags: ["Policy Templates"]
---

# Simulate policy evaluation

`POST /policies/simulate`

## Headers

- `X-Steward-Request-Timestamp` string
- `X-Steward-Request-Expires-At` string
- `X-Steward-Signature` string
- `X-Steward-Signing-Key-Id` string
- `Idempotency-Key` string

## Request body

- object
  - `policyId` string
  - `agentId` string
  - `rules` object[]
  - `request` union
    - object
      - `kind` 'transaction'
      - `to` string, required
      - `value` string, required
      - `data` string
      - `chainId` integer
    - object
      - `kind` 'proxy'
      - `method` 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE', required
      - `url` string, required
      - `body` unknown
      - `data` unknown
      - `value` string
      - `chainId` integer
  - `kind` 'transaction' | 'proxy'
  - `to` string
  - `value` string
  - `data` unknown
  - `chainId` integer
  - `method` 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'
  - `url` string
  - `body` unknown

## Response `200`

JSON response

- object
  - `ok` true, required
  - `data` object, required
    - `approved` boolean, required
    - `requiresManualApproval` boolean, required
    - `results` object[], required
    - `counters` object, required

## Other responses

- `400` — JSON response
- `401` — JSON response
- `403` — JSON response
- `404` — JSON response
- `408` — JSON response
- `409` — JSON response

## Changes

- **2026-08-17** `261a7c8070b2` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/steward-fi/apis/steward-api/changes/policies/simulate/post.md)

---

[API](https://skmtc.dev/steward-fi/apis/steward-api.md) · [All operations](https://skmtc.dev/steward-fi/apis/steward-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/steward-fi/steward-api/revisions/b88b4b97a664/schema)
