Skip to content

Actions

An Action is the fundamental unit of work in myna. It represents a single operation against an AWS service.

All actions share a common structure defined by the BaseAction type.

version = "1.0"
kind = "<service>.<operation>"
description = "Description of what this action does"
# Optional Authentication Overrides
profile = "my-profile"
region = "us-east-1"
role_arn = "arn:aws:iam::..."
# Action-Specific Configuration
[<service>]
# Service specific fields...
# Pre-execution Variables
[pre]
user_id = "123"
# Request Payload (if applicable)
[payload]
data = """
{ ... }
"""
FieldTypeDescription
versionstringFormat version (e.g., “1.0”)
kindstringThe type of action (e.g., lambda.invoke, sqs.send_message)
descriptionstringHuman-readable description
regionstring(Optional) AWS Region override
profilestring(Optional) AWS Named Profile override
role_arnstring(Optional) IAM Role to assume
timeout_msint(Optional) Client timeout in milliseconds

Defines variables local to this action. These have the highest precedence and override Collection and Environment variables.

Defines the data to be sent with the request.

FieldDescription
dataInline string data (often JSON). Supports variable interpolation {{VAR}}.
filePath to a file containing the payload (relative to the action file).

Note: If both data and file are provided, file takes precedence (or behavior depends on implementation, check specific action docs).

  • lambda.invoke: Invoke a Lambda function.
  • sqs.send_message: Send a message to an SQS queue.
  • sqs.receive_message: Receive messages from an SQS queue.
  • sqs.delete_message: Delete a message from an SQS queue.
  • sqs.purge_queue: Purge an SQS queue.
  • sqs.start_message_move_task: Start an SQS DLQ redrive task.
  • sns.publish: Publish a message to an SNS topic.
  • eventbridge.put_events: Put events to an EventBridge bus.