Changelog

The latest releases and improvements to MagicBell

If you're curious what our team is working on, see our roadmap and follow us on Twitter!

November 16, 2021

You can now send Announcements in the Compose UI!

We are excited to announce this significant upgrade! All users will receive a notification by selecting 'Everyone' in the Recipients dropdown in Compose.

A quick reminder: make sure to sync your users with MagicBell. A notification will only be sent to users we have seen before - either you have notified them, or they have logged in and used MagicBell in your app. To sync users, you can use our create users API to add a user each time one is added to your system.

New GraphQL endpoint to create notifications

We expanded the GraphQL endpoint so you can now create notifications.

November 2, 2021

Redesigned documentation

We updated the design of our documentation to match our new site!

Expanded GraphQL endpoint

The newly released GraphQL endpoint can now fetch users.

Our first podcast

Our team obviously thinks a lot about notifications. We also chat quite a bit interally about tech in general though. Our team has a special affinity for the reading classic fiction, the latest nonfiction, and the importance of writing. We decided to make some conversations widely available to everyone. Let us know what you think of episode 1!

October 25, 2021

We launched a redesign of our homepage!

This work has been months in the making, so we are very excited about this launch. We'd love to hear your thoughts!

Ping email provider

When you want complete control over email rendering and content, Ping is a great option. A few customers have already adopted this feature and have been very happy with the result.

October 11, 2021

Introducing....Topics!

Topics are a way to label notifications in addition to categories. The API now accepts 'topic' as an attribute. Let's use GitHub as an example. An example category is 'comment'. Users comment on various kinds of activity - one example being pull requests. The topic in this example is 'pull request'. Topics are flexible and powerful. You can use them for different kinds of orders, posts, documents, interests, etc. An example is below.

{
  "notification": {
    "title": "Your Account Needs Some Attention",
    "recipients": [
      {
        "email": "josue@magicbell.io",
        "external_id": "00001"
      }
    ],
    "topic": "thread:0002"
  }
}

New GraphQL endpoint

You can now use GraphQL to fetch notifications. It is available at https://api.magicbell.com/graphql. If you use a client like Insomnia or Postman you will be able to see the schema documentation. An example is below.

{
  notifications(first: 15, read: false, categories: ["uncategorized"]) {
    totalCount
    unreadCount
    unseenCount
    pageInfo {
      hasNextPage
      hasPreviousPage
    }
    edges {
      node {
        id
        title
        content
        actionUrl
        customAttributes
        readAt
      }
    }
  }
}

Improved performance

A handful of tweaks and bugs were made to increase performance.

September 27, 2021

Segmented send

You can now send notifications to all users or a segment of them. Set custom attributes on your users to take full advantage of this feature. Learn more.

Smart delivery

It’s good practice not to send notifications to all channels at once. Now - you don’t have to!

Smart delivery allows you to configure which channels the notification is sent to and when based on categories. You can also configure delays, and send only if the notification wasn’t seen on another channel. Please write to us and we can work with you to configure these smart notifications. A demo of the feature can be found on our YouTube channel.

MagicBell notifications now on MagicBell!

You may have noticed a MagicBell notification icon on the sidebar now. Our team will be sending relevant notifications going forward.

September 6, 2021

React headless v2

This new version introduces an immutable API, we stand on the shoulders of two giants: Immer and Zustand. We made the repository public under a new license. Read the full changelog for further information.

SendGrid and Mailgun templates

You can now send email notifications using your own SendGrid and Mailgun templates. Learn more.

{
  "notification": {
    "title": "Your order with Example 923270",
    "overrides": {
      "providers": {
        "sendgrid": {
          "template_id": "[sengrid_template_id]"
        }
      }
    }
  }
}

August 23, 2021

Enhanced integration with delivery providers

MagicBell can now relay extra attributes to your providers when calling their API. All you need to do is to send us a provider-specific override when using the create notification API. This is helpful when you want to leverage extra functionality offered by your providers.

{
  "notification": {
    "title": "Your order with Example 923270",
    "overrides": {
      "providers": {
        "ios": {
          "badge": 2
        }
      }
    }
  }
}

August 16, 2021

Our team is thrilled to introduce the updated sidebar!

React SDK v8

We got rid of MobX, fixed an assortment of bugs, and changed to a proprietary license.

July 2021

Filter notifications by category

We've added support for filtering notifications by category. You might find it useful to add tabs to your notification inbox. Please check the fetch notifications API endpoint documentation for details. Support is coming soon for the React SDK.

#2 on Hacker News

Mila - MagicBell’s designer - wrote a great blog post on her journey from being an artist to a UI designer. The post skyrocketed all the way to #2 on Hacker News, generating 110+ comments.

Edit and delete projects

After a project is created, it can be edited and / or deleted.

Idempotent requests

Our API now supports idempotency for safely retrying requests without accidentally performing the same operation twice. This is useful when an API call is disrupted in transit and you do not receive a response.

New Slack community

We created a Slack workspace for the MagicBell community. We hope it’s a helpful resource to answer questions, give product updates, and more!

June 2021

Compose button

We rolled out a compose button in our dashboard that lets you send notifications to your users. You can add multiple email addresses or external IDs.

Postmark integration

We've added support for delivering email notifications via Postmark. If you'd like it setup, please contact us. We'll roll out integrations to our dashboard in the coming months, but we are happy to set them up for you in the meantime. We also support Mailgun and SendGrid.

Multiple mobile-push apps per project

We've added support for multiple push apps per project. This is useful if you use different app bundles for test/canary/production. Please see the updated documentation or write us if you have any questions.

May 2021

Improved developer documentation site

Our new documentation site went live last week. It's more readable, features better navigation, and allows us to add live examples (coming soon!). We'd love to hear your feedback on the structure, and the content.

Goodbye Mobx. Welcome smaller React package!

This month we also worked to remove MobX from our react packages. You can try out the beta version of the @magicbell/magicbell-react package. The bundle size is 10% smaller, and customers who use MobX can use MagicBell without any possible conflicts. Furthermore, this release is fully backward compatible as the API of our components hasn’t changed one bit!

We'll be updating our embeddable, and shipping this improvement to the stable branch soon.

Push subscriptions API

We have documented the push subscription API that you can use for both web & mobile push subscriptions. If you'd like to offer mobile push notifications, please contact us, and we'll help you get started.

April 2021

User deletion API

We added an API endpoint for cases when a user deletes their account and you want to remove them from MagicBell for GDPR compliance.

Web push notifications for Safari

We launched web-push last month but it took us a little longer to get to web-push for Safari. Apple has their own (harder) way of doing everything so it took us a while to get this out the door. We'll write up a blog about this soon.

New status page and Twitter

We launched a better status page (that lets you subscribe for email updates) as well as a dedicated Twitter account for status updates. We'd still love for you to follow our regular Twitter account too, of-course! :)

iOS push beta

iOS push is now in beta and we'd love for you to try it out. Please reply to this email if you are interested. Android beta coming up next!

March 2021

Notification preferences beta

The 6.27.0-beta.1 version of the React package offers a notification preferences UI. We'd love for you to try it and give us some feedback. If you add categories to your POST /notifications API calls, we'll render the preferences matrix for your users - automagically. You can see it in action on our Chrome extension for Hacker news (which is pretty awesome, by the way).

https://downloads.intercomcdn.com/i/o/316735864/a0a69ef592ef9ebfb584254a/image.png

This is how the UI looks when we use categories direct_comment, reply, and new_message, and enable the web push channel for our project.

React headless SDK

A lot of you asked for better React Native support. We just released a React headless library that contains a set of React headless components and hooks to build a notification inbox in React or React Native. Our official React package has more bells and whistles, but this new library is an excellent option for the more adventurous (or creative) ones! Here is an example in React Native. A full blown React Native library will soon follow.