> For the complete documentation index, see [llms.txt](https://docs.rierino.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rierino.com/devops/microservices/building-blocks/additional-elements/actions.md).

# Actions

Actions are optional, yet useful elements to add to a runner. Each action is a specialized function call on an event handler, with predefined set of parameters such as event metadata.

The use of action elements allows creation of reusable functions, which can simply be requested by name, rather than sending a full set of parameter values. This has the following benefits:

* Decreased data size in transit and store, as the same parameter values do not need to be sent with each request.
* Central management of frequently used action specifications, which simplifies change management.
* Ability to enforce standard values for specific parameters across all saga flows for functional governance.

Since actions are simply mappings of predefined parameters, they can be added with "mapping" element type to runners, and simply updated using the remap commands on runners.

A number of settings are shared across all actions:

| Setting                | Definition                                                                        | Example        | Default |
| ---------------------- | --------------------------------------------------------------------------------- | -------------- | ------- |
| handler                | Name of the handler to use for this action                                        | kafka\_default | -       |
| meta.\[field].default  | Default event metadata field values for requests received for this action element | action=Get     | -       |
| meta.\[field].override | Final event metadata field values for requests received for this action element   | domain=product | -       |

{% file src="/files/7rW4J5wlZhyvJNoR66bT" %}
Example Action Definition (Can be Imported on Element Screen)
{% endfile %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.rierino.com/devops/microservices/building-blocks/additional-elements/actions.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
