iMacros supports 3 types of variables:
2. Built-in variables. They contain certain values set by iMacros e. g. !URLCURRENT or define certain iMacros properties e. g. !TIMEOUT_PAGE. A special subset are the !COLn variables that are used to read data from CSV files. These variables cannot be set with iimSet or -var_varname, they can only be used with the SET macro command.
3. User-defined variables. They are defined in-macro using the SET command. They can also be passed into a macro from the command line using the -var_varname switch. Additionally, macro variables can be defined with iimSet when using the iMacros scripting interface (API) from a custom script/program and are used to send values to the macro. To get data from a macro to the calling script/program, use the iimGetLastExtract command and the !EXTRACT variable.