Pub/Sub hooks

You can create and use Pub/Sub hooks with ReachFive. This page introduces Pub/Sub hooks and instructs you on how to create one using the ReachFive Console.

Pub/Sub is an asynchronous messaging service that offers real-time message delivery along with reliable memory storage of the messages. Pub/Sub also decouples event production from event processing.

We will briefly look at the publisher-subscriber (Pub/Sub) relationship below.

If you don’t immmediately recognise the terms here, check out the important terms below.
pub sub
  1. The publisher app connects to a topic in the Pub/Sub service. It then sends messages to this topic.

  2. Messages are retained in message storage.

  3. Messages are forwarded from the topic to all associated subscriptions individually.

  4. The messages are transmitted by pushing to an endpoint or pulling from the service itself.

  5. The subscriber application informs the Pub/Sub service that messages are received.

Why use Pub/Sub?

A major advantage of using Pub/Sub (as opposed to webhooks) is message storage (step 2 above) as well as subscriber acknowledgement of receiving the message (step 5 above). Until all subscriber applications have acknowledged receiving the message, Pub/Sub continues distributing the message to all relevant subscribers. This greatly improves guaranteed message delivery.

I just want to see a video

Skip ahead to a short video tutorial on how to configure a Pub/Sub hook from the ReachFive Console.

Create Pub/Sub hook from console

The Pub/Sub hook that you create in the ReachFive Console is triggered after an event is generated similar to that of a typical Post-event webhook.

Prerequisites

  • You must have access to the ReachFive Console.

  • You must have a Developer, Manager, or Administrator role.

  • You must have the Pub/Sub Hooks feature enabled.

Instructions

  1. Log in to your ReachFive Console.

  2. Go to Settings  Pub/Sub Hooks.

  3. Select New Pub/Sub hook or edit edit icon an existing Pub/Sub Hook.

  4. Enable your Pub/Sub hook.

  5. Give your hook a Key. This is a unique reference for the hook.

  6. From the drop-down menu, choose the user event types that will trigger the Pub/Sub hook.

  7. Optionally, add Filters to your hook.

    Adding filters means only those fields matching the filter criteria are returned from the Pub/Sub hook.
  8. Choose the event fields and/or user fields you want to send in the request to your application. This is a comma-separated list.

    User fields should be prefixed with user.: emailuser.email.
  9. Enter your Project ID for your Google Cloud account.

  10. Enter the Topic where you want requests sent.

  11. Enter the Credentials (in JSON format) needed to connect to Google Cloud.

User Event Types

The table below describes the types of events that occur under the type parameter in the User Event object.

Name Description

login

Emitted after a successful authentication.

signup

Emitted after a successful signup.

unlink

Emitted after a successful unlink identity.

email_updated

Emitted after a successful email update.

phone_number_updated

Emitted after a successful phone number update.

phone_number_verified

Emitted after a successful phone number verification.

password_reset_requested

Emitted after a successful password reset request.

password_changed

Emitted after a successful password change.

password_reset

Emitted after a successful password reset process.

otp_sent

Emitted after a successful one time password send.

user_updated

Emitted after a successful user update.

user_deleted

Emitted after a successful user deletion.

user_updated_by_merge

Emitted after a successful merge (for the updated user).

user_deleted_by_merge

Emitted after a successful merge (for the deleted user).

user_suspended

Emitted after a successful user account suspension.

user_unsuspended

Emitted after a successful user account unsuspension.

email_verified

Emitted after a successful email verification.

phone_number_verified

Emitted after a successful mobile number verification.

user_created

Emitted after successfully creating a new Lite profile.

authorization_refused

Emitted after an unsuccessful authorization attempt.

authorization_deleted

Emitted after authorization was deleted.

authorization_granted

Emitted after authorization was successfully granted.

lite_merged_into_managed

Emitted after a lite profile was succesfully merged into a managed profile.

GUEST EVENTS

login_invalid_identifier_format

Emitted after an unsuccessful login due to the identifier format.

login_unknown_identifier

Emitted after an unsuccessful login attempt due to an unknown identifier.

login_not_matching_password

Emitted after an unsuccessful login attempt due to the password not matching.

invalid_webauthn_login

Emitted after an unsuccessful login attempt with a webauthn device.

signup_invalid_email_format

Emitted after an unsuccessful signup attempt due to an invalid email format.

signup_not_compliant_password

Emitted after an unsuccessful signup attempt because the password was not compliant.

Important terms

Topic

A named resource to which messages are sent by publishers.

Subscription

A named resource representing the stream of messages from a single, specific topic, to be delivered to the subscribing application.

Message

The combination of data and (optional) attributes that a publisher sends to a topic and is eventually delivered to subscribers.

Message attribute

A key-value pair that a publisher can define for a message.

Video tutorial

Feedback