Actions in AtroCore are automated operations that can be executed manually through the user interface or automatically via scheduled jobs and workflows. They provide a powerful framework for automating business processes, data transformations, integrations, and AI-powered operations.
Key Features
- Flexible Execution: Actions can be triggered manually, automatically via workflows, or through scheduled jobs
- Entity-Specific: Actions can be configured to work with specific entities (Products, Files, etc.)
- User Context: Actions can execute as the system user or maintain the same user context
- Conditional Logic: Actions support both basic and script-based condition types
- Data Integration: Seamless integration with import feeds and export feeds
Creating and Configuring Actions
Accessing Actions
Navigate to Administration > Actions
to manage all configured actions in your system.
Basic Configuration
All actions share these common configuration fields:
- Name: Descriptive name for the action
- Type: The specific action type (see Action Types section below)
- Usage: Defines the action scope:
- Entity level: Applies to entire entity types
- Record level: Applies to individual records
- Field level: Applies to specific entity fields
- Conditions Type: How conditions are evaluated:
- Basic: Simple condition builder
- Script: Custom script conditions following Twig syntax
- Active: Whether the action is enabled
- Execute As: User context for execution:
- System: Runs with system privileges
- Same User: Maintains the triggering user's context
When Usage is selected (any non-empty option), an additional Source Entity field appears to specify which entity the action targets.
Entity Level Configuration:
- Display (Single, Dropdown): Defines how the action button appears on the list view header.
Single shows a direct button on the list view header.
Dropdown groups the action in a dropdown menu.
Record Level Configuration:
- Display (Single, Dropdown): Defines action button on detail view (also available as single record action in list view)
Single shows a direct button on the detail view.
Dropdown groups the action in a dropdown menu on the detail view.
Actions are also available as single record actions in list views.
- Mass actions: Checkbox to determine if the action will be available as mass action
When enabled, actions appear in the mass actions menu for selected records. Read Mass actions for more information.
Field Level Configuration:
- Field: Defines which field the action button will be shown near on detail view
Field-level actions appear as buttons next to specific fields on detail pages and are shown when you hover over the field.
Executing Actions
Manual Execution
Actions can be executed manually through the user interface:
- Direct execution: Use the Execute button available on the action's detail page
- Entity-level actions: Available on list view headers based on Display configuration
- Record-level actions: Available on detail pages and as single record actions in list views
- Field-level actions: Available as buttons next to specific fields on detail pages
- Mass actions: Available for multiple selected records when Mass Action is enabled
Automatic Execution
Actions can be triggered automatically through:
- Workflows: Event-driven execution based on entity changes
- Scheduled Jobs: Time-based execution at regular intervals
Monitoring Actions
Use Job Manager and Action History in Administration to monitor action execution and track their results. For some Action Types, such as Import Feed, Export Feed you should be able to view executions from the related Feed record as well.
Action Types
AtroCore supports various action types, each designed for specific automation scenarios. Below are all available action types and their configurations:
Some action types are available only with additional modules purchase.
Data Operations
Create
Creates new records in the system based on defined templates.
Configuration:
- Target Entity: Entity type for new records
- Update Type: Method for record creation (Basic or Script)
Basic Mode: When using "Basic" update type, an Update panel becomes available after saving the action, allowing you to configure the field values for new records.
- Use Select Field to add new fields to the creation template
- Set specific values for each field that will be applied to all created records
- Required fields are marked with an asterisk (*)
Script Mode: When using "Script" update type, field values are defined through JSON code:
- Define field values using JSON syntax with key-value pairs
- Support for Twig templating syntax using
{{ entity.fieldName }}
expressions - All configuration is done in the Script field
- Provides flexibility for complex field mapping and dynamic values
Update
Modifies existing records based on specified criteria and field values.
Configuration:
- Target Entity: Entity type for records to update
- Update Type: Method for record updating (Basic or Script)
- Apply to pre-selected records: Defines the action scope:
- Checked: Action operates only on the specific record it was triggered from. Source Entity becomes locked to match Target Entity, and Filter Result panel is not available.
- Unchecked: Action can target different entities and use filtering criteria. For example, Source Entity can be "Brand" while the action updates all "Products" associated with that brand.
- Filter Result: Available only when "Apply to pre-selected records" is unchecked. Define which records should be updated based on specific criteria and query conditions - see Search and Filtering for details
Basic Mode: When using "Basic" update type, an Update panel becomes available after saving the action, allowing you to configure the field values for new records.
- Use Select Field to add new fields to the creation template
- Set specific values for each field that will be applied to all created records
- Required fields are marked with an asterisk (*)
Script Mode: When using "Script" update type, field values are defined through JSON code:
- Define field values using JSON syntax with key-value pairs
- Support for Twig templating syntax using
{{ entity.fieldName }}
expressions - All configuration is done in the Script field
- Provides flexibility for complex field mapping and dynamic values
Upsert
Creates new records or updates existing ones based on matching criteria.
Configuration:
- Script: JSON configuration defining entity mappings and field values
- Uses array syntax with entity/payload structure
- Support for Twig templating in payload values
Example JSON Configuration:
[{"entity":"Product","payload":{"name":"{{ entity.name }}"}}]
Delete
Removes records from the system based on specified criteria.
Configuration:
- Target Entity: Entity type for records to delete
- Apply to pre-selected records: Defines the action scope:
- Checked: Action deletes only the specific record it was triggered from. Source Entity becomes locked to match Target Entity, and Filter Result panel is not available.
- Unchecked: Action can target different entities and use filtering criteria. For example, Source Entity can be "Category" while the action deletes all "Products" filtered by that category.
- Filter Result: Available only when "Apply to pre-selected records" is unchecked. Define which records should be deleted using query conditions - see Search and Filtering for details
Copy
Duplicates existing records to create new copies.
Configuration:
- Target Entity: Entity type to copy
Data Exchange
Webhook
Sends HTTP requests (GET) to external systems for integration purposes.
Configuration:
- URL: Target endpoint for the webhook request
Import Feed
Imports data from external sources using configured import feeds.
Configuration:
- Execute in Background: Option to run import as background process
- Import Feed: Selection of configured import feed
- Payload: Custom data payload for the import with Twig templating syntax
Export Feed
Exports data to external destinations using configured export feeds.
Configuration:
- Execute in Background: Option to run export as background process
- Export Feed: Links to a specific Export Feed entity that defines the export format, destination, and data mapping
- Payload: Custom data payload for the export with Twig templating syntax
Synchronization
Available with Synchronization module
Synchronizes data between AtroCore and external systems.
Configuration:
- Execute in Background: Option to run sync as background process
- Synchronization: Selection of configured synchronization
- Payload: Custom data payload for the synchronization with Twig templating syntax
Communication
Send E-mail
Sends emails to specified recipients using configured email templates and connections. Can be used to notify users about events related to the selected entity in response to some trigger actions (modification, creation or deletion of a new record, change of a certain field, etc.)
Configuration:
- Target Entity: Entity type that contains recipient information
- Preview before sending: Option to review email content before sending
- Mode: Email composition method (Basic or Script)
- Connection: Email server connection configuration (required) - links to configured SMTP connections
Basic Mode:
- Email Template: Email template for content and formatting (required) - links to Email Templates, you can choose existing template or create your own
- Email To: Primary email recipients (supports multiple addresses)
- Email CC: Carbon copy recipients (optional)
Script Mode:
Script mode provides advanced email configuration using Twig templating syntax.
For example, you can send an email to all users who are related to the particular record or select a template depending on the kind of changes.
- Script: Code editor for dynamic email configuration with Twig variables:
emailTo
: Array of recipient email addresses (e.g.,['email1@domain.com', 'email2@domain.com']
)emailCc
: Array of CC recipient email addresses (can be empty:[]
)emailTemplateId
: ID of the email template to use (e.g.,'some-id'
)
Send Notification
Sends internal system notifications to users within the AtroCore application.
Can be used to send notifications to any users of the system in response to a specific trigger (record modification, changing of the specific field, etc.). You can select a specific user from the list of all system users, as well as select users associated with a specific entity.
Configuration:
- System Template: Notification template (required) - links to Notification Templates. You can choose any of the pre-configured templates or create your own
- System Users: Specific users to receive notifications - links to Users
- Entity Users: Role-based recipients related to the entity record. The list of available fields depends on the entity selected in the Source Entity field. All user-related fields from the selected entity are presented here (Owner, Assigned User, Followers, etc.)
Document Generation
Generate PDF
Available with PDF Generation module.
Creates PDF documents using configured PDF templates.
Configuration:
- PDF Feed: Selection of configured PDF template
AI-Powered Actions
Available with AI Integration module.
Set Value By AI
Uses artificial intelligence to generate or modify field values.
Configuration:
- AI Engine: Selection of AI service provider (ChatGPT, Gemini API, Jasper AI)
- Field: Target field to populate with AI-generated content (e.g., Long Description, Name, etc.)
- Prompt: Instructions for AI content generation with dynamic entity data support using Twig syntax
- Preview / Edit prompt before execution: Option to review and modify the AI prompt before running
Utility Actions
Error Message
Displays custom error messages to users when executed.
Configuration:
- Error Message: Text content for the error message (supports dynamic content with Twig syntax)
This action is typically used within Workflows for conditional error handling. It is usually set up with an empty Display field so it does not appear as an action button, and the error message is shown whenever the action is triggered in the workflow.
Action Set
Groups multiple actions for sequential execution.
Configuration:
- Actions Panel: Displays all included actions with their details (Name, Type, Source Entity, etc.)
- Active in Action Set: Each action has a checkbox to control its participation in action sets
- Sequential Execution: Actions execute in the defined order when triggered
Use Cases:
- Execute multiple related actions as a single operation (e.g., AI content generation, translation, export)
- Temporarily disable specific actions for testing different scenarios
- Integrate complex workflows while maintaining control over individual components