Welcome to the Noti API

Hello and welcome to the Noti API documentation. Noti provides developers with an easy way to deliver desktop notifications to their user's computers without the need for developing their own client software.

The information in this developers area allows web application developers to send notifications to users who have installed the Noti application on their computers. This allows you to easily interact with users when they aren't logged into the application or have it open.

A notification can include a title, some text, a sound and a URL to be opened when the notification is activated.

Before you can send notifications to users, they need to authorise your application to send them notifications first. This is a process which is initiated from within your application. Once a user has authorised your app, you can send them notifications whenever you wish by making a simple API call to our service.

The Ruby Client Library

If you're a Ruby developer, you may enjoy some of the examples shown below which show how easy it is to get started with our Ruby API library.

# Set your Noti application token
Noti.app = '7f38ce2d-8d9a-25dd-e167-8f8a711b81f8'

# Create a request token
token = Noti::Token.create_request_token("http://myapp.com/noti/callback")

token.request_token   #=> '8494c9ed-6ca4-1af1-40ce-21954140d204'
token.redirect_url    #=> 'http://notiapp.com/auth/8494c9ed-6ca4-1af1-40ce-21954140d204'
# Exchange the request token for an access token
access_token = Noti::Token.get_access_token('8494c9ed-6ca4-1af1-40ce-21954140d204')
access_token    #=> "a96dca45-bd18-63bc-2b19-2b3f5ce711ca"
# Create a new notification object
notification = Noti::Notification.new
notification.title = "An example notification"
notification.text = "Some further information about this notification"
notification.url = "http://myapp.com/example"
notification.sound = "alert1"
notification.image = "example"

# Set the user to send the notification to and deliver it
notification.deliver_to('a96dca45-bd18-63bc-2b19-2b3f5ce711ca')

# If you need to send the same notification to another user
notification.deliver_to('f1ed9821-0933-15d2-a4bc-b87f562424a0')