With changes to APIs change over time, the Adapter Team also has to make updates to Itential's open source adapters. This can often include making changes to existing calls. As such, the Adapter Team usually has to add a new call with new parameters so that Itential does not break the existing call and impact the customers that are using it.
iapMetadata
Object Added
During 2024, the Itential Adapter Team added an iapMetadata
object to all new calls created in an existing adapter, as well as all calls in a new adapter. This is done by the Adapter Builder during the build and update process. This object is not added to any existing adapter calls as it would be a breaking change.
Importance
The importance of the iapMetadata
object is that it allows data to be added to a call from the Itential workflow. This data can then be placed into a call without having to make changes in the future that would break the call.
This object allows you to add dynamic information to various different areas of an API call. You can add:
- Headers
- Query Parameters
- Path Variables
- Payload
- Call specific properties
In addition, this object will support further extensions in the future.
Format
The iapMetadata
object is an object that will contain fields and values. Each field serves a specific purpose. The format should look like this:
{
"addlHeaders": {
<header1_name>: <value1>,
<header2_name>: <value2>
},
"uriQuery": {
<query1_key>: <value1>
},
"payload": {
<data1_field>: <value1>
},
"callProperties": {
<prop1_name>: <value1>,
<prop2_group>: {
<prop2_name>: <value2>
}
}
}
Working with iapMetadata
For more detail on using the iapMetadata
object in adapter calls, refer to:
- Adding Dynamic Headers: How to add specific headers to an API call made by an adapter
- Adding Query Parameters: How to add query parameters or filters to an API call made by an adapter
- Changing Adapter Properties: How to dynamically change an adapter property prior to making a call