NowCerts Event Queue
In this article, we help you to configure your project in order to connect to a queue and get notified each time an event occurs in NowCerts.
NowCerts Event Queue is based on a RabbitMQ instance with customized authentication. In order to connect, you need to use a connection string (see below) as well as credentials we provide on demand.
You may use any library available in your code base language to connect to an instance and consume events from the queue.
Connection string looks as follows:
Username and password are provided by us. In order to get one please send a request to firstname.lastname@example.org,email@example.com
Your user will have access to data of agencies that are explicitly allowed by agency administrator inside NowCerts portal. In order to enlist more agencies and start receiving events for them please send contact an agency.
In order to start consuming events from the queue you would need to subscribe to it.
Please follow the instructions on how to subscribe to a queue from the docs of RabbitMQ client library you chose for your project.
After a user has been created, you will receive access to an exclusive queue. Your user will be the only consumer of it.
In order to connect to a NowCerts queue you need to specify the name of the queue which we will provide.
Event acknowledgement is completely up to you. You may consume same event as many times as you want and ack it to proceed to the next one.
Retry logic is based on RabbitMQ default retry functionality. Event will be in the queue until you consume it with an ack.
Replay logic is based on a custom event log. We are storing at least the last 3 days of events for all the agencies. Events can be replayed on demand. Please send your replay requests to firstname.lastname@example.org,email@example.com
It is possible to replay events from custom date range if any events are present in that range. After replay is triggered, events will be sent to a separate queue. Authentication and consumption flows are the same as the main queue.
Below is an example of an event payload you may receive.
Event type enum