This function is designed for a common API pattern, where a service returns a list of field values as a list of objects which each contain a field name as one key, and a field value as another key.
In that case, this function can be useful in converting that list into an object that contains each field as a key-value pair. Index By solves this problem by letting you specify a keyPath and a valuePath. For each item in the list, the function creates a new key-value pair in the output object.
For example, if you have this list:
[
{
"fieldname": "x",
"myvalue": "one"
},
{
"fieldname": "y",
"myvalue": "two"
},
{
"fieldname": "z",
"myvalue": "three"
}
]
and use Index By with keyPath=“fieldname” and valuePath=“myvalue” then it would output the following object:
{
"x": "one",
"y": "two",
"z": "three"
}
Input Fields
- list (list of objects): a list of objects
- keyPath (text): the key in the object that has the key names (“fieldname” in the above example)
- valuePath (text): the key that contains the values (“myvalue” in the above example)
Output Fields
- output (object): an object containing the key/value pairs defined by the input list