@@ -7,8 +7,93 @@ simplified and only works with signed APIs.
7
7
8
8
## Getting started
9
9
10
- To install the dependencies:
10
+ 1 . ` pnpm install ` - To install the dependencies.
11
+ 2 . ` cp config/airseeker.example.json config/airseeker.json ` - To create the configuration file.
12
+ 3 . ` cp config/secrets.example.env config/secrets.env ` - To create the secrets file.
11
13
12
- ``` sh
13
- pnpm install
14
+ ## Configuration
15
+
16
+ Airseeker needs two configuration files, ` airseeker.json ` and ` secrets.env ` . All expressions of a form ` ${SECRET_NAME} `
17
+ are referring to values from secrets and are interpolated inside the ` airseeker.json ` at runtime. You are advised to put
18
+ sensitive information inside secrets.
19
+
20
+ ### ` sponsorWalletMnemonic `
21
+
22
+ The mnemonic of the wallet used to derive sponsor wallets. Sponsor wallets are derived for each dAPI separately. It is
23
+ recommended to interpolate this value from secrets. For example:
24
+
25
+ ``` jsonc
26
+ // The mnemonic is interpolated from the "SPONSOR_WALLET_MNEMONIC" secret.
27
+ " sponsorWalletMnemonic" : " ${SPONSOR_WALLET_MNEMONIC}" ,
28
+ ```
29
+
30
+ ### ` chains `
31
+
32
+ A record of chain configurations. The record key is the chain ID. For example:
33
+
34
+ ``` jsonc
35
+ {
36
+ // Defines a chain configuration with ID 1 (ETH mainnet).
37
+ " 1" : {
38
+ " providers" : {
39
+ " mainnet" : {
40
+ " url" : " http://mainnet.com"
41
+ }
42
+ }
43
+ }
44
+ }
14
45
```
46
+
47
+ #### ` contracts ` _ (optional)_
48
+
49
+ A record of contract addresses used by Airseeker. If not specified, the addresses are loaded from
50
+ [ Airnode protocol v1] ( https://github.com/api3dao/airnode-protocol-v1 ) .
51
+
52
+ ##### Api3ServerV1 _ (optional)_
53
+
54
+ The address of the Api3ServerV1 contract. If not specified, the address is loaded from the Airnode protocol v1
55
+ repository.
56
+
57
+ #### ` providers `
58
+
59
+ A record of providers. The record key is the provider name. Provider name is only used for internal purposes and to
60
+ uniquely identify the provider for the given chain.
61
+
62
+ ##### ` providers[<NAME>] `
63
+
64
+ A provider configuration.
65
+
66
+ ###### ` url `
67
+
68
+ The URL of the provider.
69
+
70
+ #### ` __Temporary__DapiDataRegistry `
71
+
72
+ The data needed to make the requests to signed API. This data will in the future be stored on-chain in a
73
+ ` DapiDataRegistry ` contract. For the time being, they are statically defined in the configuration file.
74
+
75
+ ##### ` airnodeToSignedApiUrl `
76
+
77
+ A mapping from Airnode address to signed API URL. When data from particular beacon is needed a request is made to the
78
+ signed API corresponding to the beacon address.
79
+
80
+ ##### ` dataFeedIdToBeacons `
81
+
82
+ A mapping from data feed ID to a list of beacon data.
83
+
84
+ ##### ` dataFeedIdToBeacons<DATA_FEED_ID> `
85
+
86
+ A single element array for a beacon data. If the data feed is a beacon set, the array contains the data for all the
87
+ beacons in the beacon set (in correct order).
88
+
89
+ ###### ` dataFeedIdToBeacons<DATA_FEED_ID>[n] `
90
+
91
+ A beacon data.
92
+
93
+ ` airnode `
94
+
95
+ The Airnode address of the beacon.
96
+
97
+ ` templateId `
98
+
99
+ The template ID of the beacon.
0 commit comments