====== Actions ======

All the actions available in EasyMorph:

==== Import / File ====
  * [[transformations:importdataset|Import dataset]] - import dataset from a file in the native EasyMorph data format (.dset).
  * [[transformations:importtext|Import delimited text file]] - import data from a delimited text files (e.g. .csv).
  * [[transformations:importexcel|Import Excel spreadsheet]] - import data from Excel spreadsheets (.xls,.xlsx).
  * [[transformations:importfixedwidthtext|Import fixed width text]] - import tabular data with fixed width columns from text file.
  * [[transformations:importapacheparquet|Import from Apache Parquet]] - import columns or metadata from an Apache Parquet file.
  * [[transformations:importjson|Import JSON from file]] - import JSON from a text file.
  * [[transformations:importplaintext|Import plain text]] - import a text file as is without parsing.
  * [[transformations:importqlikview|Import Qlik QVD file]] - import data or metadata from a QVD file.
  * [[transformations:importsas|Import SAS file]] - import data from a SAS file (.sas7bdat).
  * [[transformations:importspss|Import SPSS file]] - import data from a SPSS/PSPP file (.sav).
  * [[transformations:importxml|Import XML file]] - import data from an XML file.
  * [[transformations:projectmetadata|Project metadata]] - project metadata such as list of connectors or parameters.
  * [[transformations:filesplitter|Split delimited file]] - split large file into smaller chunks without loading it into EasyMorph.

==== Import / Database ====
  * [[transformations:importsql|Import from database]] - import data from a database.
  * [[transformations:selectdbrowsbykeys|Select matching database rows]] - import rows from a database table where key values match (or don't match) key values in an EasyMorph table.

==== Import / App & Cloud ====
  * [[transformations:importairtable|Import from Airtable]] - import a table from Airtable.
  * [[transformations:importgoogleanalytics|Import from Google Analytics]] - import metrics from Google Analytics.
  * [[transformations: importgooglesearchconsole|Import from Google Search Console]] - import metrics from Google Search Console.
  * [[transformations:importjira|Import from Jira]] - import information from Jira.
  * [[transformations:importmicrosoftdataverse|Import from Microsoft Dataverse]] - import an entity or entity metadata from Microsoft Dataverse.
  * [[transformations:importodata|Import from OData]] - import data via the Microsoft Graph API and other OData sources.
  * [[transformations:importpipedrive|Import from Pipedrive]] - import deals, organizations, persons from the Pipedrive CRM.
  * [[transformations:importpowerbi|Import from Power BI]] - import data from a Power BI semantic model.
  * [[transformations:importsalesforce|Import from Salesforce]] - import rows from a Salesforce object.
  * [[transformations:importzendesk|Import from Zendesk]] - import ticket and user data from Zendesk.
  * [[transformations:importgooglesheets|Import Google Sheets]] - import data from a Google Sheets spreadsheet.
  * [[transformations:importsharepointlist|Import SharePoint list]] - import a SharePoint list.
  * [[transformations:retrievecatalogitem|Retrieve Catalog asset]] - retrieve a dataset, file, or URL from the Catalog. 

==== Import / API ====
  * [[transformations:importwebapi|Import from Web API]] - import data from a Web API.
  * [[transformations:incominghttprequest|Incoming HTTP Request]] - receive an HTTP request from a custom API endpoint of EasyMorph Server.
  * [[transformations:incomingwebhooks|Incoming webhooks]] - import incoming webhook messages from EasyMorph Gateway.
==== Create / Generate ====
  * [[transformations:calendar|Calendar]] - create a sequence of dates in specified date range
  * [[transformations:createlist|Create list]] - create a list of up to 100 manually entered values
  * [[transformations:filelist|List of files]] - create a list of files in specified folder
  * [[transformations:folderlist|List of folders]] - create a list of folders in specified folder
  * [[transformations:parametertable|Parameter table]] - creates a single-row table with parameter values as columns
  * [[transformations:sequence|Sequence]] - generate a sequence of numbers from 1 to N
  * [[transformations:systeminformation|System information]] - obtain system information (such as current Windows account or free RAM).
==== Create / Input ====
  * [[transformations:input|Input]] - obtain input dataset from a calling project
  * [[transformations:sandbox|Sandbox]] - create a table with temporary static snapshot of data
  * [[transformations:uploadedfiles|Uploaded files]] - lists all files uploaded by use of "File upload" parameters.

==== Transform / Basic ====
  * [[transformations:aggregate|Aggregate]] - calculate aggregates (subtotals) like sum or count grouped by one or more fields.
  * [[transformations:append|Append another table]] - Append another table as new rows or columns.
  * [[transformations:addcolumn|Calculate new column(s)]] - calculate new column with [[syntax:start|expression]] built using arithmetical operations and various functions.
  * [[transformations:cleanup|Clean up]] - remove particular values from one or more columns.
  * [[transformations:concatenatetext|Concatenate text]] - concatenate column values into delimited text.
  * [[transformations:convert|Convert data type]] - convert text dates into number dates.
  * [[transformations:enumerate|Enumerate rows]] - add column with row numbers.
  * [[transformations:keepremovecolumns|Keep/remove columns]] - retain or delete selected columns.
  * [[transformations:lookup|Lookup]] - replace values in a column using a lookup table.
  * [[transformations:merge|Merge another table]] - merge (join) one or more columns from another table where certain columns in both tables match.
  * [[transformations:modifycolumnnames|Modify column names]] - add prefixes and/or suffixes to column names.
  * [[transformations:replacecolumns|Modify column(s)]] - replace existing column with a calculated [[syntax:start|expression]].
  * [[transformations:peek|Peek]] - create a new column using a single value from another table.
  * [[transformations:rename|Rename columns]] - assign new names to selected columns.
  * [[transformations:reorder|Reorder columns]] - rearrange the sequence of the columns within a dataset.
  * [[transformations:replace|Replace]] -  replace particular values in a column with new ones.
  * [[transformations:rule|Rule]] - calculate or replace a column using multiple nested IF..THEN...ELSE conditions.
  * [[transformations:sort|Sort]] - sort table by one or more columns.

==== Transform / Advanced ====
  * [[transformations:anonymizehash|Anonymize/Hash]] - anonymizes data without affecting its cardinality.
  * [[transformations:compare|Compare tables]] - compares two tables and produces a list of differences based on column metadata.
  * [[transformations:createbuckets|Create buckets]] - create ranges of fixed width and assign each row to one of the ranges.
  * [[transformations:crossmerge|Cross merge]] - create a table with all possible combinations (i.e. Cartesian product) of rows in two tables.
  * [[transformations:distributetotal|Distribute total]] - break down a total/subtotal proportionally to a group of numbers (weights).
  * [[transformations:enumerategroups|Enumerate groups]] - enumerate all combinations of values in given columns.
  * [[transformations:fillgaps|Fill down]] - fill down empty cells.
  * [[transformations:fillright|Fill right]] - fill empty cells to the right.
  * [[transformations:generateuids|Generate unique identifiers]] - creates a randomly generated global unique identifier for each row.
  * [[transformations:group|Group]] - assign a group name (or flag) to selected column values.
  * [[transformations:hierarchypath|Hierarchy path]] - generate a parent-child hierarchy path.
  * [[transformations:intervalmerge|Interval merge]] - merge columns from another table where key values fall into an interval defined by two columns.
  * [[transformations:labelcolumns|Label columns]] - name columns using values from top rows.
  * [[transformations:linearregression|Linear regression]] - build a linear regression. Interpolate/extrapolate values if needed.
  * [[transformations:makedatetimecolumns|Make date/time columns]] - create column(s) with date/time attributes derived from a date column.
  * [[transformations:match|Match]] - find text strings in another table, that are contained in the current table.
  * [[transformations:naturalmerge|Natural merge]] - merges two tables based on columns with the same names.
  * [[transformations:pivot|Pivot]] - create a matrix table by pivoting.
  * [[transformations:regexp|Regular expression]] - create a new column with regular expression matches.
  * [[transformations:removeemptycolumns|Remove empty columns]] - remove columns where all values are the same or empty.
  * [[transformations:removeemptyrows|Remove empty rows]] - remove rows where all values are empty or whitespace.
  * [[transformations:lookuprename|Rename columns with lookup]] - rename multiple columns using a lookup table.
  * [[transformations:repeatrows|Repeat rows]] - repeat each row as many times as specified in given column.
  * [[transformations:replacewithlookup|Replace with lookup]] - replace all substrings in one or many columns using a lookup table.
  * [[transformations:rollup|Roll up]] - adds amounts up through a hierarchy.
  * [[transformations:runningtotal|Running total]] - calculate rank, cumulative count, sum or % from total sum.
  * [[transformations:sanitize|Sanitize text]] - remove hidden system characters, extra spaces, and line breaks.
  * [[transformations:selectbylookup|Select columns by lookup]] - select columns using a lookup table.
  * [[transformations:shiftcolumn|Shift column up/down]] - shifts column values up or down.
  * [[transformations:slidingaggregation|Sliding aggregation]] - calculates an aggregate (average, sum, etc.) over N sliding values.
  * [[transformations:splitdelimitedtext|Split delimited text into columns]] - split delimited values of a column into new columns.
  * [[transformations:subfield|Split delimited text into rows]] - split delimited values of a column into rows.
  * [[transformations:splitfixedwidthtext|Split fixed width text]] - split a column with fixed width text values into new columns. 
  * [[transformations:statisticalaggregation|Statistical aggregation]] - calculate median, percentile, standard error, standard deviation, or variance.
  * [[transformations:metadata|Table metadata]] - obtain column names, total row count and other table metadata.
  * [[transformations:massreplace|Table-wide replace]] - remove or replace values across selected columns.
  * [[transformations:subtotal|Total/subtotals]] - add column total or group subtotals as a new column.
  * [[transformations:unpivot|Unpivot]] - convert a matrix table into a straight table.
  * [[transformations:verify|Verify data in another table]] - perform multiple data quality checks on a table.

==== Transform / Filters ====
  * [[transformations:deduplicate|Deduplicate rows]] - remove duplicate rows in entire table based on all or selected columns.
  * [[transformations:selectionfilter|Filter]] - filter rows by selecting/deselecting column values.
  * [[transformations:filter|Filter by condition]] - filter rows that satisfy [[syntax:start|expression]].
  * [[transformations:searchfilter|Filter by search]] - filter rows that contain (or don't contain) search string.
  * [[transformations:filterbytype|Filter by type]] - keep or remove only rows with values of particular data type (e.g. errors).
  * [[transformations:keepduplicates|Keep duplicates]] - keep only duplicate rows based on all or selected columns.
  * [[transformations:filterminmax|Keep min/max]] - keep/remove rows with the top N biggest/smallest values.
  * [[transformations:keepremovematching|Keep/remove matching]] - keep or remove rows with values that exist in another table.
  * [[transformations:trimtable|Trim table]] - keep/remove top/bottom N rows.
  * [[transformations:trimbycondition|Trim table by condition]] - keep/remove rows above/below first row matching condition.


==== Transform / Web ====
  * [[transformations:constructhttpresponse|Construct HTTP response]] - construct fields required for an HTTP response of the API Server.
  * [[transformations:constructjson|Construct JSON]] - construct a JSON object.
  * [[transformations:extractjson|Extract JSON properties]] - extract values of one or more JSON properties specified by JSON path.
  * [[transformations:modifyjson|Modify JSON]] - delete, replace, or rename a JSON property or format JSON.
  * [[transformations:parsejson|Parse JSON]] - parse a JSON object into a tabular dataset.
  * [[transformations:parseformsubmission|Parse web form submission]] - parse web form submissions in the "x-www-form-urlencoded" format.
  * [[transformations:parsexml|Parse XML]] - parse XML into a tabular dataset.
  * [[transformations:splitjsonarray|Split JSON array]] - split a JSON array into rows.
==== Export / File ====
  * [[transformations:exportdataset|Export dataset]] - export dataset into a file in the native EasyMorph data format   (.dset).
  * [[transformations:exporttext|Export into delimited text file]] - export data into CSV or another delimited text format.
  * [[transformations:exportexcel|Export into Excel file]] - export data into an Excel spreadsheet.
  * [[transformations:exportplaintext|Export as plain text]] - export a column as a plain text file without formatting or delimiting.
  * [[transformations:exportqlikview|Export into Qlik file]] - export data into a Qlik QVD file.
  * [[transformations:exportapacheparquet|Export to Apache Parquet]] - exports dataset into a file in the .parquet format.
  * [[transformations:exporttableau|Export to Tableau]] - export data into a Tableau TDE/Hyper file or publish to Tableau Server/Online.
  * [[transformations:exportxml|Export to XML]] - export data into an XML file.

==== Export / Database ====
  * [[transformations:bulkexportdb|Bulk export to database]] - bulk export into a database table (some RDBMS).
  * [[transformations:exportdb|Export to database]] - export EasyMorph table into database table (all RDBMS).

==== Export / App & Cloud ====
  * [[transformations:exportairtable|Export to Airtable]] - export to a table in Airtable base.
  * [[transformations:exportgooglesheets|Export into Google Sheets]] - export data into a Google Sheets spreadsheet.
  * [[transformations:exportpowerbi|Export to Power BI]] - export to Power BI push-dataset.
  * [[transformations:exportsalesforce|Export to Salesforce]] - insert records into a Salesforce object.
  * [[transformations:exportsharepointlist|Export to SharePoint list]] - append rows to a SharePoint list.
  * [[transformations:exporttableau|Export to Tableau]] - export data into a Tableau TDE/Hyper file or publish to Tableau Server/Online.


==== Workflow / Internal ====
  * [[transformations:boardissuecommand|Board/issue command]] - automate operations with boards/issues in workflows.
  * [[transformations:breakpoint|Breakpoint]] - stop project execution.
  * [[transformations:call|Call another module/project]] - pass table data to another project and run it once.
  * [[transformations:callwithanothertable|Call with another table]] - run another module or project, passing another table.
  * [[transformations:either|Either table]] - between current table and another table choose one that is not empty.
  * [[transformations:haltontypemismatch|Halt on data type mismatch]] - abort project execution if a value in specified column(s) has a wrong type.
  * [[transformations:halt|Halt/Warn on condition]] - abort project execution, or display a warning and continue, if the specified condition is fulfilled.
  * [[transformations:iterate|Iterate]] - run another module/project once for each row in table.
  * [[transformations:iteratecolumn|Iterate column]] - run another module/project once for each column in table and automatically append all returned columns into one table.
  * [[transformations:iteratetable|Iterate table]] - run another module/project once for each row in table and pass another table to it.
  * [[transformations:play|Play sound]] - Play a system sound or .wav file.
  * [[transformations:raiseissue|Raise issue]] - create a new issue in an Explorer board in EasyMorph Server.
  * [[transformations:repeat|Repeat]] - run another module/project until/while its output is empty.
  * [[transformations:sharedmemory|Shared memory]] - perform operations on shared memory, a key-value data respository.
  * [[transformations:skiponcondition|Skip actions on condition]] - skip the rest of actions in table if the specified condition is fulfilled.
  * [[transformations:skipifunchanged|Skip if unchanged]] - skip the rest of actions in table if the didn't change from previous run.
  * [[transformations:skiponconditioninanothertable|Skip on condition in another table]] - skip the rest of the actions in table if the condition in another table is fulfilled.
  * [[transformations:exclusiveaccess|Start/finish exclusive access]] - enforce mutually exclusive access to a resource for simultaneously executed projects (tasks).
  * [[transformations:status|Status]] - display custom project execution status message.
  * [[transformations:synchronize|Synchronize]] - wait until another table is calculated.
  * [[transformations:todo|To-do]] - add a to-do item to the workflow.
  * [[transformations:wait|Wait]] - pause execution for specified number of seconds.

==== Workflow / External ====
  * [[transformations:callpython|Call Python]] - call a Python script, pass [[:parameters|parameters]] and the input dataset, return a dataset back to EasyMorph.
  * [[transformations:catalogcommand|Catalog command]] - list/create/update/delete Catalog directories, items, and item fields.
  * [[transformations:sqlcommand|Database command]] - create/delete/truncate DB table or send a custom SQL command to a database (e.g. to bulk load a file).
  * [[transformations:deletedbrows|Delete database rows]] - delete rows in a database table that satisfy query conditions.
  * [[transformations:deletedbrowsbykeys|Delete matching database rows]] - delete rows in a database table where key values match/don't match key values in an EasyMorph table.
  * [[transformations:downloadfile|Download file]] - download a file from the internet.
  * [[transformations:emailcommand|Email command]] - performs various operations with email messages.
  * [[transformations:excelcommand|Excel command]] - perform file/sheet operations and run VBA macros in Excel files.
  * [[transformations:fetchemail|Fetch email]] - fetch email messages and their attachments from a mail server (Exchange or IMAP).
  * [[transformations:filecommand|File command]] - performs basic file operations such as copy/move/rename/delete/unzip.
  * [[transformations:filetransfer|File transfer]] - transfer files over SFTP or SCP to or from a remote computer.
  * [[transformations:generatedocumentation|Generate documentation]] - generate HTML documentation for an EasyMorph project.
  * [[transformations:iterateprogram|Iterate program]] - execute external application once for each row in a table.
  * [[transformations:iteratewebrequest|Iterate Web Request]] - send multiple uniform HTTP requests to a web API and append responses into one table.
  * [[transformations:powershell|PowerShell]] - executes one or more PowerShell statements.
  * [[transformations:runprogram|Run program]] - execute external application once.
  * [[transformations:sendemail|Send email]] - send an email with an attachment to one or more recipients.
  * [[transformations:sshcommand|SSH command]] - run one or several commands on a remote computer using the SSH protocol.
  * [[transformations:updatedb|Update database table]] - update a database table with values from EasyMorph.
  * [[transformations:webrequest|Web Request]] - send an HTTP request to a web API and receive a response.
  * [[transformations:xslt|XSLT transformation]] - transform a given XML file using XSLT stylesheets.




==== Workflow / Apps and cloud ====
  * [[transformations:amazoncommand|Amazon S3 command]] - perform an operation with AWS S3 , e.g. upload/download a file.
  * [[transformations:chatgpt|Ask AI]] - sends free-form prompts to ChatGPT or other ChatGPT-compatible LLM services.
  * [[transformations:azureblobstoragecommand|Azure Blob Storage command]] - performs various file and folder operations with Azure Blob Storage.
  * [[transformations:dropboxcommand|Dropbox command]] - performs various file and folder operations with Dropbox.
  * [[transformations:morphservercommand|EasyMorph Server command]] - trigger a task, or upload/download/delete a file on a remote EasyMorph Server.
  * [[transformations:googledrivecommand|Google Drive command]] - perform an operation with Google Drive, e.g. download a file.
  * [[transformations:jiracommand|Jira command]] - perform a Jira command.
  * [[transformations:onedrivecommand|OneDrive command]] - perform file and folder operations within OneDrive.
  * [[transformations:powerbicommand|Power BI command]] - trigger a Power BI action, such as refreshing a dataset or triggering a workflow.
  * [[transformations:qlikcloudcommand|Qlik Cloud command]] - execute a Qlik Cloud command remotely.
  * [[transformations:qliksensecommand|Qlik Sense command]] - execute a Qlik Sense command remotely.
  * [[transformations:sendntfymessage|Send message to ntfy]] - send a message through ntfy.
  * [[transformations:sendpushovermessage|Send message to Pushover]] - send a message through the Pushover service.
  * [[transformations:sharepointcommand|SharePoint command]] - perform file and folder operations within SharePoint.
  * [[transformations:slackbot|Slack Bot]] - send notifications to Slack.
  * [[transformations:tableaucommand|Tableau Server command]] - trigger extract refresh or run a flow on Tableau Server / Online.
  * [[transformations:teamsbot|Teams Bot]] - send a message to Microsoft Teams.
  * [[transformations:airtablecommand|Update/delete rows in Airtable]] - update or delete rows in Airtable.
  * [[transformations:salesforcecommand|Update/delete records in Salesforce]] - update/delete records in a Salesforce object.
  * [[transformations:sharepointlistcommand|Update/delete rows in SharePoint list]] - update or delete rows in a SharePoint list.
  * [[transformations:zendeskcommand|Zendesk command]] - create, update, and delete Zendesk tickets.

:?: If you need an action that is not currently available in EasyMorph please feel free to make a feature request on the [[https://community.easymorph.com|Community forum]].