Help Center>Foundation Help

Forms Metadata API

This API enables you to get the schema of a form solution.

Form Data Sync

• Fields should be marked for reporting in the solution. Refer to section Mark Fields for Reporting for more details.

• The application stores only one or the latest version of the reporting fields for a solution.

• When syncing Form data, only the marked fields are kept in the reporting database.

• No form data is kept in the reporting database when no field is marked for reporting.

• The API exposes only the latest fields marked for reporting.

Name Description Type
SolutionName Name of the solution of this form. String
Solution Key Solution Dimension Key value. Integer
FieldName Name of the form field. String
FieldXPath Complete XPath of the form field. The response will be none, if this is not a form-specific field but related to the form - either Process or Solution Name fields. String
FieldType Type of field: enum
Header: Field is not in any repeating section/table. Either at top level or within any non-repeating group etc.
LineItem: Field is in a repeating table. This doesn't include nested repeating tables.
Other: None of above, that is the grandchild table's field or Processes fields etc.
FieldDataType Data type of the field i.e. text, number, date, etc. String
FieldDataTypeLength Length of type for text fields. For example the SolutionName field can be a maximum of 100 characters. Integer

Endpoints and Methods

HTTP Method only GET is implemented.

  • Route: /v1/formsmetadata/{SolutionDimKey}/ - Get forms metadata of the specified Solution Dimension Key.

Form Query parameter formfieldtype values:

  • "Header": (Default) Returns data of only header field. Header is taken as default if this parameter is not defined in request URL.
  • "lineitem": Returns data of header and repeating table fields, not nested repeating table data.


The URL is as follows: <<host>>/dwapi/v1/formsmetadata

Query Parameters, Descriptions, and Examples


$select: This query option specifies that only the requested properties are returned. Use commas to specify multiple properties.


$filter: This query option restricts the data to be returned for the requested resource.

You can use the following to further specify your results:

  • Built-in Filter Operations
    • Comparison operators – eq Equal, ne Not equal etc.
    • Logical operators – and Logical and, or Logical or, not Logical negation.
    • Arithmetic operators – add Addition, sub Subtraction etc.
    • Grouping operators – () Precedence grouping
  • Built-in Query Functions
    • String Functions – contains, endswith etc.
    • Date Functions – year, month, day etc.
    • Match Functions – round, floor etc.


$orderby: This query option requests the service to return the result set in the specified order requested.

This parameter can include asc for asending or desc for descending. Default is ascending if not specified.

$top and $skip

$top: This query option limits the items from result set.

$skip: This query option excludes the first n items from the result set.

Using $orderyby with $top and $skip results in more consistent data.


/getcount: This gets the count of result set or data queried. $filter can be used with getcount to know the count of filters result set.

This is not an Odata standard operation, it is only for the Foundation APIs.