> ## Documentation Index
> Fetch the complete documentation index at: https://developer.mindbridge.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Analyses

An **analysis** is a logical grouping of financial data that can be run through a series of rules-based, statistical, and machine-learning
tests in order to generate analysis results. Once a set of financial data has been configured and imported, an analysis can be run to
produce an *Analysis Result* entity, which contains insights into the provided data.

Analyses require a number of supporting documents in order to run successfully. After running an analysis, you can view
the results and leverage them to support your audit work.

### Analysis Type

When creating an analysis, you must identify the **type of analysis** you want to create. To do so, set
the `analysisTypeId` field to the corresponding ID for the specific analysis type.

The analysis type must be supported by the library used by the engagement. The supported analysis types are listed in
the library’s `analysisTypeIds` field.

Refer to the Analysis Type endpoint to select an analysis type and review its settings.

### Analysis Periods

An **analysis period** is the date range for a given period under analysis. MindBridge supports the analysis of one
current period and up to four prior periods.

To add analysis periods, add analysis period objects to the appropriate locations in the `analysisPeriods` array.

To modify analysis periods, update the `analysisPeriods` array.

**Note**: Analysis periods will appear in order, with the most recent appearing in the current period. Periods must not
overlap or have date gaps between them. The `interimAsAtDate` must not be set for prior periods.

To resize an analysis period, update the `startDate`, `interimAsAtDate` and/or `endDate` to the desired date. See
“Interim Time Frames” below for details.

To remove an analysis period, remove the target object in the `analysisPeriods` array. The current period (index `0`)
may not be removed, nor analysis periods that have associated analysis sources.

If you remove the ID from an analysis period, the analysis period will be removed and a new period with the same values
will be added, resulting in a new ID being returned.

[Learn more about analysis periods](https://support.mindbridge.ai/hc/en-us/articles/360056524494-What-is-an-analysis-period)

#### Full Time Frames

The **full time frame** allows your team to import a complete
dataset. [Learn more](https://support.mindbridge.ai/hc/en-us/articles/19029762802967)

To create an analysis with a full time frame, the `interim` and `periodic` fields must be `false` in the body of the
Create
Analysis request.

#### Interim Time Frames

The **interim time frame** allows your team to import a portion of a dataset before
year-end. [Learn more](https://support.mindbridge.ai/hc/en-us/articles/19030451443223)

To create an analysis with an `interim` time frame, the interim field must be `true` in the body of the Create Analysis
request. You must also provide an `interimAsAtDate` for the current period, which defines the last day of the interim
period.

**Note**: The `interim` field cannot be combined with the `periodic` field, which must be `false` if `interim` is `true`.

**Note**: The interim time frame must be supported by the analysis type in order to use it.

#### Periodic Time Frames

The **periodic time frame** allows your team to import data on an ongoing basis, such as monthly or quarterly, over the
course of the analysis period. [Learn more](https://support.mindbridge.ai/hc/en-us/articles/19034004957591)

To create an analysis with a periodic time frame, the `periodic` field must be `true` in the body of the Create Analysis
request.

**Note**: The `periodic` field cannot be combined with the `interim` field, which must be `false` if `periodic`
is `true`.

**Note**: The periodic time frame must be supported by the analysis type in order to use it. Additionally, the periodic
time frame and the risk monitoring dashboard are disabled by default in the library's analysis configuration, and must
be enabled by an App Admin before they can be accessed.

### Currency

The **currency code** indicates the type of currency used in the analysis.

A valid currency code must be provided in the `currencyCode` field.

**Note**: MindBridge supports the majority of currencies indicated
in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html). Currency code labels used within MindBridge may not
match ISO labels exactly, but support for those currencies still exists.

**Note**: MindBridge does not support currencies that use more than two decimal places.

### Reporting Periods

MindBridge supports custom reporting periods. If your organization has a custom reporting period configuration, you can specify it when
creating an analysis by providing the `reportingPeriodConfigurationId` field with the ID of the desired reporting period configuration.

If no reporting period configuration ID is provided, it inherits the reporting period set in the engagement. On an update, the existing
value will be used if no value is provided.
