Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 9 additions & 2 deletions packages/signed-api/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,9 +48,12 @@ The API provides the following endpoints:
step.
- `GET /{endpoint-name}/{airnode}`: Retrieve signed data for the Airnode respecting the endpoint configuration.
- Returns the freshest signed data available for the given Airnode, respecting the configured endpoint delay.
- `GET /`: Retrieve list of all available Airnode address.
- `GET /airnodes`: Retrieve list of all available Airnode address.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🙏

- Returns all Airnode addresses for which there is signed data. It is possible that this data cannot be shown by the
delayed endpoints (in case the data is too fresh and there is not an older alternative).
- `GET /`: Retrieve system status information.
- Returns current system configuration details including deployment stage, version, current timestamp, deployment
timestamp, configuration hash, and certified Airnode addresses.

## Deployment

Expand Down Expand Up @@ -117,6 +120,10 @@ curl --location 'http://localhost:8090/real-time/0xc52EeA00154B4fF1EbbF8Ba39FDe3
--header 'Content-Type: application/json'

# List available airnode addresses (HTTP GET)
curl --location 'http://localhost:8090' \
curl --location 'http://localhost:8090/airnodes' \
--header 'Content-Type: application/json'

# Get system status (HTTP GET)
curl --location 'http://localhost:8090/' \
--header 'Content-Type: application/json'
```
8 changes: 4 additions & 4 deletions packages/signed-api/src/handlers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -113,10 +113,10 @@ export const batchInsertData = async (

const env = loadEnv();
if (env.LOG_API_DATA) {
// Log only the required fields to use less space, do not log the signature for security reasons.
const sanitizedData = batchSignedData.map((data) =>
pick(data, ['airnode', 'encodedValue', 'templateId', 'timestamp'])
);
// Log data for base feed beacons, including only the required fields to save space. For security reasons, do not log the signature.
const sanitizedData = batchSignedData
.filter(({ isOevBeacon }) => !isOevBeacon)
.map((data) => pick(data, ['airnode', 'encodedValue', 'templateId', 'timestamp']));
logger.info('Received valid signed data.', { data: sanitizedData });
}

Expand Down
Loading