Events Gateway Client
Library to send messages through the events gateway service.
How to use it
To use the library you just need to follow the following steps Install the library with npm
npm install @condor-labs/ec-events-gateway
Import the library
const { events } = require('@condor-labs/ec-events-gateway');
with ES6:
import { events } from '@condor-labs/ec-events-gateway':
Enviroment variable
Define a variable in you .env file with the events gateway api URL with the following name:
EVENTS_GATEWAY_URL
That's all you need to start to send data to the events gateway api.
As an alternative you can pass a events gateway api url as parameter:
events.save({payload, type, topic, schema, headers, url: 'http://localhost'});
Required data
To send events through the events gateway client you must send some required fields:
- type: string,
- topic: string,
- payload: object
Client Schema
@hapi/joi is not valid any more use Joi instead
You could define a valid Joi (Joi >= 17.9.2) schema to validate the events data you are sending to the events gateway service.
Example
const schema = {
firstName: Joi.number().required()
};
You can see more examples on the Joi API Documentation Website.
And then send this schema through the save function as parameter.
events.save({payload, type, topic, schema, headers, url: 'http://localhost'});
You should define headers to pass the apikey to the amazon services:
headers: {
'x-api-key': 'value'
}
Payload max size
Please, be sure the payload data is less than 250kb