diff --git a/packages/signed-api/README.md b/packages/signed-api/README.md index 6b77fb43..ccc71ba9 100644 --- a/packages/signed-api/README.md +++ b/packages/signed-api/README.md @@ -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. - 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 @@ -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' ``` diff --git a/packages/signed-api/src/handlers.ts b/packages/signed-api/src/handlers.ts index 39c98da1..c086a925 100644 --- a/packages/signed-api/src/handlers.ts +++ b/packages/signed-api/src/handlers.ts @@ -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 }); }