|
2 | 2 |
|
3 | 3 | A stateless JSON-RPC service that lets clients request an aggregate receipt from a list of individual receipts. |
4 | 4 |
|
| 5 | +TAP Aggregator is run by [gateway](https://github.com/edgeandnode/gateway/blob/main/README.md) |
| 6 | +operators. |
| 7 | + |
| 8 | +As described in the [gateway README section on TAP](https://github.com/edgeandnode/gateway/blob/main/README.md#tap): |
| 9 | + |
| 10 | +> The `gateway` acts as a TAP sender, where each indexer request is sent with a TAP receipt. The `gateway` operator is expected to run 2 additional services: |
| 11 | +> |
| 12 | +> - `tap-aggregator` (this crate!): public endpoint where indexers can aggregate receipts into RAVs |
| 13 | +> - [tap-escrow-manager](https://github.com/edgeandnode/tap-escrow-manager): maintains escrow balances for the TAP sender. This service requires data exported by the gateway into the "indexer requests" topic to calculate the value of outstanding receipts to each indexer. |
| 14 | +> |
| 15 | +> The `gateway` operator is also expected to manage at least 2 wallets: |
| 16 | +> |
| 17 | +> - sender: requires ETH for transaction gas and GRT to allocate into TAP escrow balances for paying indexers |
| 18 | +> - authorized signer: used by the `gateway` and `tap-aggregator` to sign receipts and RAVs |
| 19 | +
|
5 | 20 | ## Settings |
6 | 21 |
|
7 | 22 | ```txt |
@@ -80,20 +95,20 @@ form: |
80 | 95 | } |
81 | 96 | ``` |
82 | 97 |
|
83 | | -| Field | Type | Description | |
84 | | -| ------------- | --------- | -------------------------------------------------------------------------------------------------------- | |
85 | | -| `data` | `Object` | The response data. Method specific, see each method's documentation. | |
86 | | -| `warnings` | `Array` | (Optional) A list of warnings. If the list is empty, no warning field is added to the JSON-RPC response. | |
| 98 | +| Field | Type | Description | |
| 99 | +| ---------- | -------- | -------------------------------------------------------------------------------------------------------- | |
| 100 | +| `data` | `Object` | The response data. Method specific, see each method's documentation. | |
| 101 | +| `warnings` | `Array` | (Optional) A list of warnings. If the list is empty, no warning field is added to the JSON-RPC response. | |
87 | 102 |
|
88 | 103 | WARNING: Always check for warnings! |
89 | 104 |
|
90 | 105 | Warning object format (similar to the standard JSON-RPC error object): |
91 | 106 |
|
92 | | -| Field | Type | Description | |
93 | | -| ------------- | --------- | ------------------------------------------------------------------------------------------------ | |
94 | | -| `code` | `Integer` | A number that indicates the error type that occurred. | |
95 | | -| `message` | `String` | A short description of the error. | |
96 | | -| `data` | `Object` | (Optional) A primitive or structured value that contains additional information about the error. | |
| 107 | +| Field | Type | Description | |
| 108 | +| --------- | --------- | ------------------------------------------------------------------------------------------------ | |
| 109 | +| `code` | `Integer` | A number that indicates the error type that occurred. | |
| 110 | +| `message` | `String` | A short description of the error. | |
| 111 | +| `data` | `Object` | (Optional) A primitive or structured value that contains additional information about the error. | |
97 | 112 |
|
98 | 113 | We define these warning codes: |
99 | 114 |
|
|
0 commit comments