---
title: "Evaluate"
method: POST
path: "/utils/script/evaluate/{address}"
tags: ["utils"]
---

# Evaluate

`POST /utils/script/evaluate/{address}`

Evaluates the provided expression, taking into account the deployed dApp contract

## Path parameters

- `address` string, required

## Query parameters

- `trace` boolean

## Request body

- object
  - `expr` string
  - `id` string, nullable
  - `fee` number, nullable
  - `feeAssetId` string, nullable
  - `sender` string, nullable
  - `senderPublicKey` string, nullable
  - `payment` object[]
    - `amount` integer
    - `assetId` string

## Response `200`

successful operation

- object
  - `address` string
  - `expr` string
  - `result` object
    - `type` string
    - `value` unknown
  - `complexity` integer
  - `stateChanges` StateChanges
    - `data` DataAction[], required
      - union
        - union
          - BinaryEntry
            - `key` string, required
            - `type` 'binary', required
            - `value` string, byte, required
          - BooleanEntry
            - `key` string, required
            - `type` 'boolean', required
            - `value` boolean, required
          - IntegerEntry
            - `key` string, required
            - `type` 'integer', required
            - `value` integer, required
          - StringEntry
            - `key` string, required
            - `type` 'string', required
            - `value` string, required
        - DeleteEntry
          - `key` string, required
          - `value` unknown, required
    - `transfers` TransferAction[], required
      - `address` string, required
      - `asset` string, required
      - `amount` integer, required
    - `issues` IssueAction[], required
      - `assetId` string, required
      - `name` string, required
      - `description` string, required
      - `quantity` integer, required — Total supply of the asset
      - `decimals` integer, required
      - `isReissuable` boolean, required
      - `compiledScript` string, required
    - `reissues` ReissueAction[], required
      - `assetId` string, required
      - `isReissuable` boolean, required
      - `quantity` integer, required
    - `burns` BurnAction[], required
      - `assetId` string, required
      - `quantity` integer, required
    - `sponsorFees` SponsorFeeAction[], required
      - `assetId` string, required
      - `minSponsoredAssetFee` integer, required
    - `leases` LeaseAction[], required
      - `id` string, required
      - `originTransactionId` string, required
      - `sender` string, required
      - `recipient` string, required
      - `amount` integer, required
      - `height` integer, required
      - `status` 'active' | 'canceled', required — * `active`: lease is active; * `canceled`: lease has been canceled
      - `cancelHeight` integer
      - `cancelTransactionId` string
    - `leaseCancel` LeaseCancelAction[], required
    - `invokes` InvokeAction[], required
      - `error` object
      - `stateChanges` StateChanges — recursive
  - `vars` object[]
    - `name` string
    - `type` string
    - `value` unknown
    - `error` string

## Other responses

- `400` — Conflicting request structure

## Changes

- **2023-03-23** `26c5120a809c` — 6 info
  - added the new optional `query` request parameter `trace`
  - added the required property `stateChanges/burns/items/assetId` to the response with the `200` status
  - added the required property `stateChanges/burns/items/quantity` to the response with the `200` status
  - added the required property `stateChanges/issues/items/allOf[#/components/schemas/AssetDetailsBase]/quantity` to the response with the `200` status
  - …2 more
- **2023-01-24** `0d9f62cd3e57` — 3 info
  - added the optional property `complexity` to the response with the `200` status
  - added the optional property `stateChanges` to the response with the `200` status
  - added the optional property `vars` to the response with the `200` status
- **2022-10-26** `514552c83e95` — 7 info
  - added the new optional request property `fee`
  - added the new optional request property `feeAssetId`
  - added the new optional request property `id`
  - added the new optional request property `payment`
  - …3 more
- **2021-05-27** `c901f97e3a8d` — 2 breaking, 4 warning, 2 info
  - removed `#/components/schemas/RideExprRequest, #/components/schemas/RideInvocationRequest` from the request body `oneOf` list
  - the request's body type/format changed from ``/`` to `object`/``
  - deleted the `query` request parameter `trace`
  - removed the optional property `complexity` from the response with the `200` status
  - …4 more

[Change history](https://skmtc.dev/wavesplatform/apis/waves-full-node-chainid/changes/utils/script/evaluate/:address/post.md)

---

[API](https://skmtc.dev/wavesplatform/apis/waves-full-node-chainid.md) · [All operations](https://skmtc.dev/wavesplatform/apis/waves-full-node-chainid/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/wavesplatform/waves-full-node-chainid/revisions/26c5120a809c/schema)
