---
title: "Action"
description: "one action of a move, run only through the permission check, with its inverse captured first"
section: concepts
address: /concepts/action
contract: 0476e35e6e275db5
---

# Action

one action of a move, run only through the permission check, with its inverse captured first

[figure: Action is a work at strategy scope. The drawing shows its fields and the objects that they point at.]

| property | value |
|---|---|
| kind | work |
| scope | strategy |
| key | the move and its step |
| store | postgres |
| family | strategy |



## Fields


| field | type | required | note |
|---|---|---|---|
| `move` | `id` | yes |  |
| `step` | `count` | yes |  |
| `kind` | [KindOfAction](/concepts/kindofaction) | yes |  |
| `what` | `text` | yes |  |
| `reach` | `text` | yes |  |
| `arguments` | [ActionArgument](/concepts/actionargument) | yes | each with where its value came from |
| `identity` | `id` | yes |  |
| `inverse` | `text` | yes |  |
| `cost` | [Cost](/concepts/cost) | yes |  |
| `allowed_by` | [PermissionAnswer](/concepts/permissionanswer) | no |  |
| `ran_at` | `time` | no |  |
| `undone_by` | `id` | no |  |



## Routes that use it
- [`/v1/act/run_action`](/reference/act/run_action) returns it
