🏛 Architecture

Here is a diagram describing the implementation.
Firebase architecture
Firebase architecture

🔚 Endpoints to link and unlink tokens

As illustrated in the diagram above, you will need to send the Firebase token(s) to the endpoints listed below whenever a token is linked or unlinked to a user. Alternatively, you may publish a message to RabbitMQ / Kafka with the corresponding notification type.
When performing these actions, ensure that only the relevant token is sent. For example, when linking, send only the newly linked token; when unlinking, send only the token being removed.
REST API
RabbitMQ Connector
Kafka Connector

⬆️ POST /v1/integration/user/device/link

RabbitMQ Message Properties
key
value
type
USER_DEVICE_LINK
The type is expected as a property (but not in the payload) of the RabbitMQ Message. Any header will be ignored.
Kafka Message Headers
keyvalue
type
USER_DEVICE_LINK
REST API
RabbitMQ Connector
Kafka Connector

⬆️ POST /v1/integration/user/device/unlink

RabbitMQ Message Properties
key
value
type
USER_DEVICE_UNLINK
The type is expected as a property (but not in the payload) of the RabbitMQ Message. Any header will be ignored.
Kafka Message Headers
keyvalue
type
USER_DEVICE_UNLINK

Credentials

We will need you to provide us with credentials described in below link.

Best Practises for Token Management

You manage how the tokens are stored in Fast Track by using the LINK / UNLINK events (see above). Please read this article from Firebase containing Best Practise examples: