CSV Macro

CSV Macro

This content is archived.

On this page

Overview

The CSV macro can import, format and display comma-separated values (CSV) data from anywhere, by:

  • Reading the CSV data from any of these sources:

    • Within your Confluence page.

    • From a file residing on the Confluence server (Server only).

    • From a global or space template (Server only).

    • From a page attachment.

    • From an external URL.

  • Allowing customizable delimiters, quote characters, and character encoding.

  • Supporting inclusion of Wiki Markup macros within the CSV data.

  • Combining with the Chart macro to produce powerful data visualization.

  • Leveraging the same table styling capabilities as the Table Plus macro.

CSV is not a formal standard, but the best reference is The Comma Separated Value (CSV) File Format. The support in this macro comes close to following this pseudo-standard.  This macro supports Common table capabilities

Applicable upto app version 8.1:

To enable using HTML content with CSV data, you must enable the Stop encoding of html characters parameter. In such a case, it is recommended to contact your administrator to use Macro Security for Confluence with this app to provide an additional layer of security to your data and privacy. Refer to this documentation to for more information on the Macro Security for Confluence app.

From app version 8.2 onwards, if the Stop encoding of html characters parameter is enabled, use of Macro Security for Confluence is no longer needed as the macro itself provides additional security to your data.

Feature Video

Basic Use

This macro can be deployed using one of the following methods:

Selected from the Macro Browser

CSV (Comma Separated Values)

Markup Shortcut

{csv}

Screenshot

Parameters

Click a column heading to toggle the sorting of that column.

Parameter

Default

Macro Browser Label

Description

output

html

Output format

Determines how the output is formatted. Use wiki to have the data in the table rendered by the wiki renderer.

script

macro body

Location of CSV data

If a location of data is specified, the included data will follow the body data.

  • ^attachment - Data is read from an attachment to the current page.

  • page^attachment - Data is read from an attachment to the page name provided.

  • space:page^attachment - Data is read from an attachment to the page name provided in the space indicated.

Additional options are available for Server only.

  • #filename - Data is read from the file located in the Confluence home directory/script/filename. Subdirectories can be specified.

  • global page template name - Data is read from a global page template. (info) Special note: How to deal with templates on Confluence 4.3 and later.

  • space:page template name - Data is read from a space template.

delimiter

,

Delimiter that separates columns

  • , (comma) - The default column separator.

  • whitespace - Blanks, tabs, and other white space are used to separate columns.

  • tab - A single tab character is used to separate columns.

  • blanks - Blank or blanks only.

  • pipe - '|'

  • other single character delimiter - may be within double quotes with some restrictions. Examples: ";" and "=" work. "|" does not.

quote

double

Quote character

The character used to represent quoted data. Quoted data may contain delimiters or new lines. Quote character data must be doubled inside a quoted string.

  • double - Double quote character: "

  • single - Single quote character: '

url


URL to CSV data 

Specifies the URL of a CSV file. If specified, the included data will follow the body and script data. Use of this parameter may be restricted for security reasons. See your administrator for details.

user


URL user 

User name for URL access via basic authentication.

password


URL user password 

User password for URL access via basic authentication. 

timeout


URL connection timeout

Allows setting the wait time for URL access for slower connections. Time in milliseconds.

encoding


File encoding

File encoding for an external file if different from the system default handling. Since 4.1.0. Example: UTF-8More ...

columns


Columns to show

A comma-separated list of column names or numbers in any order. Defaults to all columns in the existing order. Columns are enumerated starting at 1.

ignoreTrailingBlankRows

true

Ignore trailing blank rows

A row is considered blank if all the columns selected by the column parameter are blank. Use false to show these blank rows.

showWiki

false

Show non-formatted version of  generated wiki

Use true to show a non-formatted version of the wiki table following the formatted table. This is used to help resolve formatting issues. It can also be used to convert CSV to Confluence markup by cut and paste.

escape

false

Escape special wiki characters

When wiki output is requested (output=wiki), some special characters (like '|', '[', ']', '{', '}') in data may cause undesirable formatting of the table. Use true to allow these special characters to be escaped so that it will not affect the formatting. The default is false so that data that has wiki markup will be handled correctly.

macros

false

Render wiki markup macros in body

Set to true to render wiki markup macros found in the body prior to processing as CSV. This is useful to run macros from Scripting for Confluence, Run CLI Actions in Confluence, SQL for Confluence, or similar that can produce CSV output.

disableAntiXss

false

Stop encoding of HTML characters

Server only. Set this parameter to true for CSV tables that use output=html and have HTML content. Html content like <a href=http://google.com>google</a> will only display as a link if this parameter is enabled. Your administrator must grant specific users or groups to use this capability using Macro Security for Confluence.

Augment parameters

See Augments for details.

Common parameters

Examples

Compatibility

  • Chart Macro - the CSV Macro can be used to create data for a chart

  • Beanshell macro - can be used to generate CSV macro and data as output from Java code (use output=wiki)

  • Groovy macro - can be used to generate CSV macro and data as output from Groovy code (use output=wiki)

  • Jython macro - can be used to generate CSV macro and data as output from Jython code (use output=wiki)

Other Macros

Below is a list of all other Macros available within this Add-on:

Additional References

Need support? Create a request with our support team.

Copyright © 2005 - 2026 Appfire | All rights reserved.