---
title: "Evaluate a typed draft without saving"
method: POST
path: "/api/plugin_settings/{plugin_setting_id}/configuration/evaluation"
tags: ["Plugin Configuration"]
---

# Evaluate a typed draft without saving

`POST /api/plugin_settings/{plugin_setting_id}/configuration/evaluation`

## Request

- Base URL: `https://trmnl.com`
- URL: `https://trmnl.com/api/plugin_settings/{plugin_setting_id}/configuration/evaluation`
- Auth: HTTP bearer

## Path parameters

- `plugin_setting_id` integer, required

## Request body

- object
  - `revision` string, required
  - `draft` ConfigurationChange[], required
    - `op` 'set' | 'unset' | 'clear_secret', required
    - `path` string, required
    - `value` unknown

## Response `200`

Evaluated configuration and safe field errors

- object
  - `data` PluginConfiguration
    - `schema_version` 1, required
    - `revision` string, required
    - `required_capabilities` string[], required
    - `sections` object[], required
      - `id` string, required
      - `title` string, required
      - `fields` ConfigurationField[], required
        - `path` string, required
        - `type` string, required
        - `label` string, required
        - `help` string
        - `required` boolean, required
        - `read_only` boolean, required
        - `nullable` boolean, required
        - `constraints` object, required
        - `choices` union
          - object[]
            - `label` string, required
            - `value` unknown, required
          - object
            - `resolver_id` string, required
            - `depends_on` string[], required
            - `searchable` boolean, required
            - `paginated` boolean, required
    - `values` object, required: Only declared nonsecret values. Secret values are never returned.
    - `secrets` object, required
    - `connections` object[], required
    - `actions` object[], required
    - `readiness` object, required
      - `ready` boolean, required
      - `blocking_paths` string[], required
      - `reason` string, nullable
    - `sync` PluginSync, required
      - `source_kinds` string[], required
      - `upload_allowed` boolean, required
      - `reason` string, nullable
      - `action_id` string, nullable

## Other responses

- `409`: Configuration changed

---

[API](https://skmtc.dev/trmnl/apis/trmnl-api.md) · [All operations](https://skmtc.dev/trmnl/apis/trmnl-api/llms.txt) · [OpenAPI document](https://skmtc.dev/trmnl/apis/trmnl-api/revisions/66179e6d663b?raw)
