Data Specification

Shared data specifications used across FundApps products

📘

Within FundApps, there are some bespoke data specifications where input data is required from our users and mapped from the given data type to one we support.

Uploading Files

Declaring File Types

For endpoints where multiple file types are supported (e.g. .xml or .zip) the endpoints, the file type must be declared with a matching Content-Type header. These are the required headers by file type:

File TypeContent-Type Header
.xlsapplication/vnd.ms-excel
.csvtext/csv
.xlsxapplication/vnd.openxmlformats-officedocument.spreadsheetml.sheet
.xmlapplication/xml
.zipapplication/zip

In an HTTP request, this would look like the following:

POST https://%company%-api.fundapps.co/v1/expost/check HTTP/1.1 Content-Type: "application/xml"

Declaring File Names

When uploading files, it is possible to specify the filename displayed after upload (for example, in the "Previous Uploads" page) by specifying the file name in the header X-ContentName, as in the example below:

POST https://%company%-api.fundapps.co/v1/expost/check HTTP/1.1 Content-Type: "application/xml" X-ContentName: "positions-monday.xml"

Rule Properties

Rule properties are input properties used within a Rule. They are defined in a variety of places within our API. These are used cross-product (Shareholding Disclosure, Position Limits, Pre-Trade) for any input used within a Rule - whether it be within a Portfolio, Asset or Order.

Each product has defined set of allowed properties - see our service documentation and examine the required properties section for each applicable product.

💽 Rule Property Data Types

The following are the supported data types for Rule properties:

Data TypeExplanationExample
BooleanIndicates a true/false value. Must be the word true or false (case sensitive)true
DateMust be in "YYYY-MM-DD" format (ISO 8601)2015-12-31
Decimal(Precision,Scale)Must use "." as decimal separator. Group (thousand) separators are not allowed, exponential formatting not allowed. Up to 21 decimal places are supported.123444.227566
IntegerWhole number (positive or negative). Group (thousand) separators are not allowed, exponential formatting not allowed19944
StringA sequence of characters. When using CSV format must not include commas (","). All strings are case-INSENSITIVE (except currencies)Nokia
ListIndicates a list of values. Comma separated string"XNYC,XLON"

📂 Rule Property Example Files

Given the following example properties:

Property NameData Type
IsEnabledBoolean
CreationDateDate
PriceDecimal(Precision,Scale)
SharesInteger
CurrencyString
MarketsList

The input properties would map to the supported file types as below:

<!-- For XML, Rule properties are included -->
<Asset IsEnabled="true" CreationDate="2024-01-30" Price="400.25" Shares="358" Currency="USD" Markets="XNYE,XNSE" />
// Rule properties are supported in the raw format within JSON
{
  "IsEnabled": true,
  "CreationDate": "2024-01-30",
 	"Price": 400.25,
  "Shares": 358,
  "Currency": "USD",
  "Markets": "XNYE,XNSE"
}
// Where possible string property values (in the style of XML) are supported in JSON
{
  "IsEnabled": "true",
  "CreationDate": "2024-01-30",
 	"Price": "400.25",
  "Shares": "358",
  "Currency": "USD",
  "Markets": "XNYE,XNSE"
}
# In CSV, only values that contain commas must be wrapped with quote marks
IsEnabled,CreationDate,Price,Shares,Currency,Markets
true,2024-01-30,400.25,358,USD,"XNYE,XNSE"

📘

Note: These examples are indicative of formats within our API's, please see the Guides & API references for more detailed specifications