---
updatedAt: 2025-06-25T13:06:32.000Z
agentTools:
  projectIndex: https://developers.evrythng.com/llms.txt
---

# Action Types (legacy)

An account Operator or Trusted Application can define new custom action types within that account, which can be scoped to individual projects as required. When defining these action types, it's possible to add specific custom fields and tags to aid in filtering. An action type can be regarded as the class of an individual action, much in the same way that a <a href="/ref/products">product</a> is used to model the class of individual serialised <a href="/ref/thngs">Thngs</a>.

Action types that are created in a project scope can later be shared with other projects using the 'Add to another project' button in the Dashboard, or through the REST API. See <a href="/doc/scoping">*Scoping*</a> for more information on sharing resources between projects.

***

**API Status**
General Availability:
`/actions`
`/actions/:type`
----------------

<aside>

## Jump To ↓\n[ActionTypeDocument Data Model](#section-actiontypedocument-data-model)\n[Built-in Action Types](#section-built-in-action-types)\n[Action Type Customization](#section-action-type-customization)\n[Create an Action Type](#section-create-an-action-type)\n[Read all Action Types](#section-read-all-action-types) \n[Update an Action Type](#section-update-an-action-type)\n[Delete an Action Type](#section-delete-an-action-type)

</aside>

## ActionTypeDocument Data Model

See also: <a href="/doc/scoping#section-scopesdocument-data-model">`ScopesDocument`</a>

### Filterable Fields

This resource type can be filtered using the following fields and operators.

***

## Built-in Action Types

In addition to [custom action types](#section-action-type-customization) there are a number of action types that are built-in to the Platform, which available to all accounts when they are created. These are listed below:

* `scans`
* `implicitScans`
* `invalidScans`
* `shares`
* `checkins`
* `commissions`
* `decommissions`
* `encodings`

***

## Action Type Customization

When an action type is viewed in the Dashboard, it is displayed with some additional visual elements if the type's `customFields` includes any of the following optional items:

* `color` - The hexadecimal color value, including `#`, used in the action table margin.
* `displayname` - The friendly name of the action type, which does not require an underscore, unlike `name`.
* `icon` - A [Glyphicon](http://glyphicons.com/) code for an icon representing the meaning of this action type.

***

## Create an Action Type

Submit a valid `ActionTypeDocument` to the `/actions` endpoint to create a custom action type.

***

## Read all Action Types

Action types can be retrieved by a `GET` on the `/actions` endpoint. The action types are returned with the built-in types coming first, followed by the custom types sorted by descending creation date. The result may be <a href="/doc/pagination">paginated</a> if there are more than 30 items.

***

## Update an Action Type

Update an action type by making a `PUT` request.

***

## Delete an Action Type

You can delete an action type in a similar manner to creating one using the `actionType`.

<Callout type="info">
  <strong>Note</strong>

  The default action types cannot be deleted.
</Callout>

<Callout type="danger">
  <strong>Note</strong>

  Deleting an action type will result in the deletion of all actions created _of_ that type as well.
</Callout>