Firebase Cloud Messaging with Golang

douglasmakey profile image Douglas Makey Mendez Molero ・1 min read

I needed to create a microservice for manage communications in my app, emails, SMS, and notifications with FCM.

So I decided to create a lib in for FCM for use en my app.


package main
import (
func main() {
    // init client
    client := fcm.NewClient("ApiKey")

    // You can use your HTTPClient 

    data := map[string]interface{}{
        "message": "From Go-FCM",
        "details": map[string]string{
            "name": "Name",
            "user": "Admin",
            "thing": "none",

    // You can use PushMultiple or PushSingle
    client.PushMultiple([]string{"token 1", "token 2"}, data)
    //client.PushSingle("token 1", data)

    // registrationIds remove and return map of invalid tokens
    badRegistrations := client.CleanRegistrationIds()

    status, err := client.Send()
    if err != nil {
        log.Fatalf("error: %v", err)


the source

Posted on by:

douglasmakey profile

Douglas Makey Mendez Molero


I am a young enthusiastic programmer with great desires to overcome new challenges. I like to face unknown issues and learn new technologies always trying to give more than 100% in everything I do. On


Editor guide

Omg! How to you can check each sent success?


Yea, how can we know? Should I make android app first to able check it?


I want to push notification over web (web app).
Then how can i check ?
Is there any log created inside firebase ?

Thank You