Migration Guide
The following guide assumes a valid v0.10.x config.json file. All changes listed below will need to be implemented in order to migrate to Airnode v0.11.2. This document is written in a way that will preserve existing behavior with earlier Airnode versions.
The document also mentions changes to user facing services related to Airnode, such as airnode-deployer, airnode-admin, etc., and new features.
Summary
ois[n].oisFormatupdated to "2.1.0". Note that Airnode v0.11.0 and v0.11.1 use "2.0.0".nodeSettings.nodeVersionupdated to "0.11.2".ois[n].endpoints[n].preProcessingSpecificationsandois[n].endpoints[n].postProcessingSpecificationshave an updated allowed Node environment value.chains[n].authorizers.requesterAuthorizersWithErc721andchains[n].authorizers.crossChainRequesterAuthorizersWithErc721added.Section
nodeSettings.oevGatewaywas added.
Details
ois[n].oisFormat
Updated to "2.1.0". Note that Airnode v0.11.0 and v0.11.1 use "2.0.0".
{
- "oisFormat": "1.4.0"
+ "oisFormat": "2.1.0"
}2
3
4
nodeSettings.nodeVersion
Updated to "0.11.2"
{
- "nodeVersion": "0.10.0"
+ "nodeVersion": "0.11.2"
}2
3
4
ois[n].endpoints[n].preProcessingSpecificationsandois[n].endpoints[n].postProcessingSpecifications
Removes 14 from the Node 14 environment value to represent that the Node version of the pre- and post-processing environments is dictated by the Node.js version of Airnode. As of v0.11, the Node.js version of Airnode was upgraded from 14 to 18.
{
"preProcessingSpecifications": [
{
- "environment": "Node 14",
+ "environment": "Node",
"timeoutMs": 5000,
"value": ""
}
]
}2
3
4
5
6
7
8
9
10
{
"postProcessingSpecifications": [
{
- "environment": "Node 14",
+ "environment": "Node",
"timeoutMs": 5000,
"value": ""
}
]
}2
3
4
5
6
7
8
9
10
chains[n].authorizers.requesterAuthorizersWithErc721andchains[n].authorizers.crossChainRequesterAuthorizersWithErc721
Adds two new authorizers, requesterAuthorizersWithErc721 and crossChainRequesterAuthorizersWithErc721, that enable request authorization using ERC721 tokens. These new fields are required, but their values may be empty arrays if this feature is not required. For further details, see the Authorizers page.
"chains": [
{
"authorizers": {
+ "requesterAuthorizersWithErc721": [],
+ "crossChainRequesterAuthorizersWithErc721": [],
"requesterEndpointAuthorizers": [],
"crossChainRequesterAuthorizers": []
},
}
]2
3
4
5
6
7
8
9
10
- With the new OEV gateway feature there's a new section in the
config.jsonfile for it. The new sectionnodeSettings.oevGatewayneeds to be added in order for the configuration file to be valid.
{
"httpSignedDataGateway": {
"enabled": false
},
+ "oevGateway": {
+ "enabled": false
+ },
"logFormat": "plain",
"logLevel": "INFO",
}2
3
4
5
6
7
8
9
10
Read the OEV gateway doc to learn more about this feature.
New features
The Node.js version of Airnode was upgraded from 14 to 18.
The
coingecko-signed-dataandcoingecko-testableHTTP gatewayairnode-examplesintegrations have been combined into a singlecoingecko-http-gatewaysintegration.There's a new gateway available called the OEV gateway. Read the OEV gateway doc to learn more about this feature.
The heartbeat payload now includes
deployment_id.The
valuefor afixedOperationParametersobject is now allowed to be any type, including an object; for example, the following specifies an array containing multiple primitives. Note that this feature is only available beginning in v0.11.2.json{ "fixedOperationParameters": [ { "operationParameter": { "in": "query", "name": "params" }, "value": ["finalized", false] } ] }1
2
3
4
5
6
7
8
9
10
11


