Known Limitations
-
Date and Number Format
Only ISO and Ticks (i.e. Microsoft JSON Date format) is supported. Example: Ticks: / Date(1492041600000)/, ISO: “2021-04-13T14:48:00.000Z”. Also only UTC date values are read and set to form fields, if date value has any offset defined then it would be adjusted to get UTC date value. For simple numbers en format without thousand separator and dot as decimal separator i.e. 1345612.45.
-
REST API support to Dropdown, Query Control, Lookup control, Participant Query, Rules to query Data Connection:
-
As the controls, Dropdown, Query Control, Lookup control, Participant Query, and Rules to query data connection support only tabular data, so using these features with REST API would only be supported where Data can be transformed to table format. Also data from any nested structure (i.e. Table inside table or Arrary of Arrary etc) is not supported. Example:
[{ "id": "int", "name": "string", "productType": "string", "sizes": ["string"] "otherDetails": { "colors": ["string"], "versions": ["int"] }, "Plant":[{ "PlantNo":"string", "PlantName":"string" }]}]
In this payload only properties "id", "name" and "productType" can betransformed to tubular structure and also can be used with above mentioned controls.
Nested array (Array of single field type or "multiple fields" / complex type) are not supported with above controls.
-
Lookup Control Filters behavior
-
Lookup Control: Search Filter properties (i.e. Search Column, Search Operation, Search key field) are not supported.
-
Lookup Control : Where Clause: The repeating table fields will be replaced with comma separated values and the filter will be executed for that API execution. So the query or url will be having all values in column with comma separated. To execute the lookup control for only current row data is not supported. So the lookup control wont be able to get data for current row (i.e. if the URL has field from current row table.
-
-
Only REST API connection with Get operation is supported with these controls.
The following fields of Lookup Control are not relevant for Rest API Data Connection:
-
Table
-
Search Column
-
Search Operation
-
Search Key Field
-
Minimum Search Key Size
-
Auto Wild card End
-
Auto Wild card start
-
Where clause --> form field/solution field in the URL builder (not supported), similar to other data connections
-
Raw query (Not relevant in case of Query control)
-
-
URL Editing support with Drop down
-
Async REST API data connection (i.e. “Automatically retrieve data when form is opened” checkbox is not checked) defined with Form Field in API URL will not work when used in dropdown. As an alternate the url part should be defined in dropdown’s filter. This limitation exists only when data connection’s URL has form fields. All non-repeating fields are supported to be defined in API URL, also when dropdown is added to repeating table then all non-repeating form fields and also current row fields are supported.
-
Sync REST API data connection (i.e. “Automatically retrieve data when form is opened” checkbox is checked): REST API data connection defined with Form fields in API URL and bounded with dropdown; only non-repeating form fields are supported (i.e. fields not in any repeating table or section). Also as for Sync behavior of data connection, it will be executed on Form load so the "saved Form's value on server" or "default value for New Form" will be used to substitute in API URL.
-
The application would consider the complete REST API URL that is saved in the REST API Data Connection of the solution if no data is provided in the control filter.
-
-
API Payload (Input/output/error): All repeating elements
API payload which has all repeating /array type properties in a repeating / array (i.e. Repeating table has all only repeating tables, no simple property) are not supported. Below is an example:
[{ "sizes": ["string"], "codes": ["int"], "listedDates": ["date"], "results": [{ "countryCode": "string", "city": "string", "address": "string" }]}]
Note: In above example the first table at root has properties "sizes", "codes", "listedDates" and "results" and all these are array or table type and such schema is not supported yet. -
Input payload / "Push data" to API Server (i.e. post, put, patch etc.)
APIs which take input of an array or multiple records (i.e. Input payload which can take array or multiple data) is also supported. For example:
[{ "id": "int", "name": "string", "productType": "string","price": "decimal" }]
{ "products":[{ "id": "int", "name": "string", "productType": "string", "price": "decimal" }]}
[{ "id": "int", "name": "string", "productType": "string","price": "decimal", "to_Description": { "results": [{ "language": "string", "description": "string" }]}}]
Also below example of single record but having repeating or array type data later in schema is also supported.
{ "id": "int", "name": "string", "to_Description": { "results": [{ "language": "string", "description": "string" }]}, "to_Plant":{ "results": [{ "PlantName":"string", "to_location":{ "results":[{ "locationName":"string", "field2":"string" }]}}]}}
-
Field name with below characters are not supported
-
dot character i.e. "." Any field with having dot in the field name is not supported i.e. "field3.test".
-
Parentheses letter i.e. ( or ). for example "Product(description" or "Product(description)" are not supported.
-
-
Web Service or Data Connection Adapter plugin: Execution
-
Create Form Fields: Generate Repeating Section is not checked: REST API data connection where API’s URL includes Form Fields from any Repeating Schema (Form fields of table), it wont work or is not supported when executing it with Web Service Control or Data Connection Adapter plugin.
-
Create Form Fields: Generate Repeating Section is checked:
-
Only current row fields (i.e. Repeating table mapped with this data connection, which has allow_run field) are supported in API’s URL, any other filed value will not be replaced.
-
REST API Data connection’s Request / Response header must be mapped to current row repeating table form field. For any other form field (non-repeating) or fields not part of current row in repeating table, will not work.
-
-
-
API Payload and Field Mapping (Generate Form Fields)
-
It is not recommended to map same group name for different API data connection. User can choose to map existing form fields with different REST API connections. For example below use case of adding two REST API and creating form fields under same Form Fields Group will not work:
Create 1st Rest API connection (GET) having schema like below (i.e. Single data record)
{ "f1": "string", "grp1": { "grp2": [ {"f2": "int"}]} }
Create 2nd Rest API connection (GET) having schema like ( i.e. Multiple records of above 1st Rest API schema)
[{ "f1": "string", "grp1": { "grp2": [ {"f2": "int"}]} }]
-
-
API Payload and Field Mapping (Generate Form Fields)
Composer- Rest API Data connection is not supported in Plugin → Function → Data Connection
-
Only two level Nesting is supported in REST APIs, similar to the repeating tables.
-
Only Response Headers are supported in REST APIs. Content-Type header is not supported as it is a Response Content Header.