Arelle web API
/helpThis web page.
/aboutAbout web page, copyrights, etc.
Validation
/rest/xbrl/{file}/validation/xbrlValidate document at {file}.
 For a browser request or http GET request, {file} may be local or web url, and may have "/" characters replaced by ";" characters (but that is not necessary).
Example:/rest/xbrl/c:/a/b/c.xbrl/validation/xbrl?media=xml: Validate entry instance document at c:/a/b/c.xbrl (on local drive) and return structured xml results.
 For an http POST of a zip file (mime type application/zip), {file} is the relative file path inside the zip file.
/rest/xbrl/validation(Alternative syntax) Validate document, file is provided as a parameter (see below).
Example:/rest/xbrl/validation?file=c:/a/b/c.xbrl&media=xml: Validate entry instance document at c:/a/b/c.xbrl (on local drive) and return structured xml results.
Parameters are optional after "?" character, and are separated by "&" characters, as follows:
flavorstandard: XBRL 2.1 and XDT validation. (If formulas are present they will also be compiled and run.) (default)
{sec*|edgar*}: SEC Edgar Filer Manual validation. (If formulas are present they will also be compiled and run.)
standard-except-formula: XBRL 2.1 and XDT validation. (If formulas are present they will be ignored.)
formula-compile-only: Formulas will be compiled but not run. (No XBRL 2.1, XDT, or disclosure system validation.)
formula-compile-and-run: Formulas will be compiled and run. (No XBRL 2.1, XDT, or disclosure system validation.)
mediahtml or xhtml: Html text results. (default)
xml: XML structured results.
json: JSON results.
text: Plain text results (no markup).
fileAlternate way to specify file name or url by a parameter. Files ending in .json will be loaded as xBRL-JSON.
importA list of files to import to the DTS, such as additional formula or label linkbases. Multiple file names are separated by a '|' character.
labelLangLabel language to override system settings, e.g., &labelLang=ja.
labelRoleLabel role instead of standard label, e.g., &labelRole=http://www.xbrl.org/2003/role/verboseLabel. To use the concept QName instead of a label, specify &labelRole=XBRL-concept-name.
uiLangUser interface language to override system settings, e.g., &uiLang=fr. Changes setting for current session (but not saved setting).
calcDecimalsSpecify calculation linkbase validation inferring decimals.
calcPrecisionSpecify calculation linkbase validation inferring precision.
efm-*Select Edgar Filer Manual (U.S. SEC) disclosure system validation. (Alternative to flavor parameter.):
efm-pragmatic: SEC-required rules, currently-allowed years
efm-strict: SEC-semantic additional rules, currently-allowed years
efm-pragmatic-all-years: SEC-required rules, all years
efm-strict-all-years: SEC-semantic additional rules, all years
ifrsSpecify IFRS Global Filer Manual validation.
hmrcSpecify HMRC validation.
sbr-nlSpecify SBR-NL taxonomy validation.
utrSelect validation with respect to Unit Type Registry.
infosetSelect validation with respect to testcase infoset.
parametersSpecify parameters for validation or formula (comma separated name=value[,name2=value2]).
formulaAsserResultCountsReport formula assertion counts.
formulaVarSetExprResultTrace variable set formula value, assertion test results.
formulaVarSetTimingTrace variable set execution times.
formulaVarFilterWinnowingTrace variable set filter winnowing.
{other}Other detailed formula trace parameters:
formulaParamExprResult, formulaParamInputValue, formulaCallExprSource, formulaCallExprCode, formulaCallExprEval, formulaCallExprResult, formulaVarSetExprEval, formulaFormulaRules, formulaVarsOrder, formulaVarExpressionSource, formulaVarExpressionCode, formulaVarExpressionEvaluation, formulaVarExpressionResult, formulaVarFiltersResult, and formulaRunIDs.
abortOnMajorErrorAbort process on major error, such as when load is unable to find an entry or discovered file.
saveOIMinstanceSpecify output instance filename to save (name.json, name.xml), for example if loading from xBRL-JSON.one would save to .xml otherwise to .json. Media must be zip. Returns a zip of instance and logFile.
collectProfileStatsCollect profile statistics, such as timing of validation activities and formulae.
pluginsActivate plug-ins, specify '|' separated .py modules (relative to plug-in directory).
packagesActivate taxonomy packages, specify '|' separated .zip packages (absolute URLs or file paths).
Versioning Report (diff of two DTSes)
/rest/xbrl/diffDiff two DTSes, producing an XBRL versioning report relative to report directory.
Parameters are requred "?" character, and are separated by "&" characters, as follows:
fromDTSFile name or url of from DTS.
toDTSFile name or url of to DTS.
reportFile name or url of to report (to for relative path construction). The report is not written out, but its contents are returned by the web request to be saved by the requestor.
Example:/rest/diff?fromDTS=c:/a/prev/old.xsd&toDTS=c:/a/next/new.xsd&report=c:/a/report/report.xml: Diff two DTSes and produce versioning report.
Views
/rest/xbrl/{file}/{view}View document at {file}.
 {file} may be local or web url, and may have "/" characters replaced by ";" characters (but that is not necessary).
 {view} may be DTS, concepts, pre, table, cal, dim, facts, factTable, formulae, roleTypes, or arcroleTypes.
Example:/rest/xbrl/c:/a/b/c.xbrl/dim?media=html: View dimensions of document at c:/a/b/c.xbrl (on local drive) and return html result.
/rest/xbrl/view(Alternative syntax) View document, file and view are provided as parameters (see below).
Example:/rest/xbrl/view?file=c:/a/b/c.xbrl&view=dim&media=xml: Validate entry instance document at c:/a/b/c.xbrl (on local drive) and return structured xml results.
Parameters are optional after "?" character, and are separated by "&" characters, as follows:
mediahtml or xhtml: Html text results. (default)
xml: XML structured results.
csv: CSV text results (no markup).
xslx: Excel results.
json: JSON text results.
fileAlternate way to specify file name or url by a parameter.
viewAlternate way to specify view by a parameter.
viewArcroleAlternate way to specify view by indicating arcrole desired.
importA list of files to import to the DTS, such as additional formula or label linkbases. Multiple file names are separated by a '|' character.
factListColsA list of column names for facts list. Multiple names are separated by a space or comma characters. Example: factListCols=Label,unitRef,Dec,Value,EntityScheme,EntityIdentifier,Period,Dimensions
Excel interface
GUI operation:Select data tab.
Click Get External Data From Web.
New Web Query dialog, enter rest URI to Address (example, for instance with indicated fact columns: http://localhost:8080/rest/xbrl/C:/Users/John Doe/Documents/eu/instance.xbrl/facts?media=xhtml&factListCols=Label,unitRef,Dec,Value,EntityScheme,EntityIdentifier,Period,Dimensions
Before clicking Go, click Options, on Options dialog select Full HTML Formatting, then Ok to Options dialog.
Click Go.
Click arrow to select table.
Click Import button.
Review insertion cell, click ok on Import Data dialog.
VBA macro: With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://localhost:8080/rest/xbrl/C:/Users/John Doe/Documents/eu/instance.xbrl/facts?media=xhtml&factListCols=Label,unitRef,Dec,Value,EntityScheme,EntityIdentifier,Period,Dimensions" _
, Destination:=Range("$A$1"))
.Name = "facts"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = False
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlAllTables
.WebFormatting = xlWebFormattingAll
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
End With
QuickBooks interface
Setup:Install QuickBooks Web Connector by clicking here.
Click on QuickBooks.qwc in the Program Files Arelle directory, to install web connector for Arelle. (It specifies localhost:8080 in it.)
Open your QuickBooks and desired company
From start menu, programs, QuickBooks, start Web Connector (QBWC). Web connector may want a password, use any string, such as "abcd", as it's not checked at this time.
Start Arelle web server (if it wasn't already running)
To request xbrl-gl, select report type (generalLedger, journal, or trialBalance) and specify file name for xbrl-gl output instance.
QBWC polls once a minute, if impatient, in the QBWC window, click its Arelle checkbox and press the update button.
(If you get the error [8004041A] from Quickbooks, enable the company file for Arelle access in Quickbooks: Edit->Preferences...->Integrated Applications->Company Preferences->click allow web access for ArelleWebService)
Example:http://localhost:8080/rest/quickbooks/generalLedger/xbrl-gl/C:/mystuff/xbrlGeneralLedger.xbrl/view?fromDate=2011-01-01&toDate=2011-12-31 (You may omit /view.)
Parameters follow "?" character, and are separated by "&" characters, as follows:
mediahtml or xhtml: Html text results. (default)
xml: XML structured results.
json: JSON results.
text: Plain text results (no markup).
fromDate, toDateFrom & to dates for GL transactions
Management
/rest/configureConfigure settings:
Parameters are required following "?" character, and are separated by "&" characters, as follows:
proxyShow or modify and re-save proxy settings:
Enter 'show' to view current setting, 'system' to configure to use system proxy setting, 'none' to configure for no proxy, or 'http://[user[:password]@]host[:port]' (e.g., http://192.168.1.253, http://example.com:8080, http://joe:secret@example.com:8080)." ))
pluginsShow or modify and re-save plug-ins configuration:
Enter 'show' to view plug-ins configuration, , or '|' separated modules: +url to add plug-in by its url or filename (relative to plug-in directory else absolute), ~name to reload a plug-in by its name, -name to remove a plug-in by its name, (e.g., '+http://arelle.org/files/hello_web.py', '+C:\Program Files\Arelle\examples\plugin\hello_dolly.py' to load, ~Hello Dolly to reload, -Hello Dolly to remove). (Note that plug-ins are transient on Google App Engine, specify with &plugins to other rest commands.)
packagesShow or modify and re-save taxonomy packages configuration:
Enter 'show' to view packages configuration, , or '|' separated package URLs: +url to add package by its full url or filename, ~name to reload a package by its name, -name to remove a package by its name. (Note that packages are transient on Google App Engine, specify with &packages to other rest commands.)
environmentShow host environment (config and cache directories).