Airnode serves APIs to blockchains according to Oracle Integration Specifications (OIS). APIs are composed of operations, which represent individual functionalities that an API offers. OIS maps each API operation to an endpoint, which can be thought of as an Airnode operation. The endpoints that an Airnode will serve over the request–response protocol are listed under triggers of config.json.
You can use the admin CLI to derive the endpoint id from your terminal
endpointId identifies specific endpoints that an Airnode serves, and is
computed in JS (using ethers.js) as follows:
ethers.utils.keccak256( ethers.utils.defaultAbiCoder.encode( ['string', 'string'], [oisTitle, endpointName] ) );
Note that this means that an
endpointId is not unique, and two Airnodes can
serve equivalent endpoints using the same ID (in fact, this is the desired
outcome).This is not an issue, as requests are made with a
This convention of determining an
endpointId is not enforced at the
protocol-level. For example, one could choose to generate an
randomly, and as long as requesters use the correct
endpointId, this will not
be an issue.
Airnodes can assign a list of authorizers to their endpoints. See the section Authorizer for more information.