
Security News
Deno 2.2 Improves Dependency Management and Expands Node.js Compatibility
Deno 2.2 enhances Node.js compatibility, improves dependency management, adds OpenTelemetry support, and expands linting and task automation for developers.
@layerhq/idk
Advanced tools
This is a Node.js library that is designed to be used with Layer Integration Development Kit (IDK).
It provides common functionality for validating & processing Layer Webhooks and access to common Layer Server API operations.
To use this library you need to pass configuration object into the constructor. Configuration object should be a layer_config.json
file which is a part of Layer Integration Development Kit.
const LayerIDK = require('@layerhq/idk')
const config = require('./layer_config.json')
const layerIDK = new LayerIDK(config)
Configuration file is generated buy a Layer Integrations command line tool. At a minimum config JSON has the following format:
{
"app_id": "layer:///apps/staging/ffffffff-ffff-ffff-ffff-ffffffffffff",
"webhook": {
"secret": "supersecret",
"events": ["Message.created"]
},
"api": {
"token": "abcdefg"
}
}
Every integration is powered by a Layer Webhook which is registered to listen for a set of events in an application.
.webhook(headers, body)
Validate and process a webhook by passing in HTTP headers
object and POST request body
. This is a synchronous function which will return webhook payload or throw an error that needs to be captured and handled.
headers
- Webhook HTTP headersbody
- Webhook HTTP request body as a JSON stringtry {
const webhook = layerIDK.webhook(headers, body)
// webhook payload
} catch (err) {
console.error(err)
}
We provide a logger interface to unify log severity levels, abstract some of the Cloud Provider specific functionality and enable optional monitoring capabilities.
.logger(context)
Get logger interface by passing in the cloud function context
object.
context
- Cloud function context object (AWS or Azure)const log = layerIDK.logger(context)
log.info('Hello world', { foo: 'bar' })
log.error('Error', new Error('Oops'))
Available levels: debug
, info
, warn
, error
, none
. Every level accepts the following function parameters: (message, object)
You can set log level by setting
LOG_LEVEL=error
env variable.
Logger has a built in monitoring capabilities. Read about monitoring here.
Access common Layer Server API operations via .api
namespace. Read API documentation here.
These are the utility functions exposed statically via LayerIDK
class. Read documentation here.
The following example shows how to use Amazon AWS API Gateway inside your Serverless handler.
const LayerIDK = require('@layerhq/idk')
const config = require('./layer_config.json')
const layerIDK = new LayerIDK(config)
exports.webhook = (event, context, callback) => {
const log = layerIDK.logger(contex)
try {
const webhook = layerIDK.webhook(event.headers, event.body)
// webhook payload
log.info('Webhook:', webhook)
callback(null, { statusCode: 200 })
} catch (err) {
log.error('Webhook:', err)
callback(err)
}
}
FAQs
Layer Integration Development Kit common library
The npm package @layerhq/idk receives a total of 1 weekly downloads. As such, @layerhq/idk popularity was classified as not popular.
We found that @layerhq/idk demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 13 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Deno 2.2 enhances Node.js compatibility, improves dependency management, adds OpenTelemetry support, and expands linting and task automation for developers.
Security News
React's CRA deprecation announcement sparked community criticism over framework recommendations, leading to quick updates acknowledging build tools like Vite as valid alternatives.
Security News
Ransomware payment rates hit an all-time low in 2024 as law enforcement crackdowns, stronger defenses, and shifting policies make attacks riskier and less profitable.