dashboard Notifications Push Push Notifications API Overview of push notifications API methods
Send Push Notification
POST
https://api.codemash.io/:version/notifications/push
Send a mobile notification message.
Path Parameters
The version of the API endpoint. Current latest v1 .
Your project's secret key.
Your project's ID. Can be passed as a query parameter.
Request Body
The ID of push notification template to use.
Roles of users to set as recipients.
An array of user IDs to be set as recipients.
An array of device IDs to be set as recipients.
If set as true, creates a silent notification without popping up at the recipient's device.
Key-value pair (string: string) object of custom tokens.
Amount of milliseconds to postpone sending the notification.
If creating a postponed notification and the recipient's devices have timezone set, then postpones according to the device's timezone.
200 Returns an ID of created notification group. 401 Returns if the user does not have a valid permission to call this method. 500
.NET Node PHP
Copy var client = new CodeMashClient (apiKey , projectId);
var pushService = new CodeMashPushService (client);
var response = await pushService .SendPushNotificationAsync(
new SendPushNotificationRequest
{
TemplateId = Guid .Parse( "{TEMPLATE_ID}" ) ,
Users = new List < string > { "{USER_ID}" }
}
);
Copy use Codemash \ CodemashClient ;
use Codemash \ CodemashPushNotification ;
class CodemashService
{
protected CodemashPushNotification $codemashPushNotification;
public function __construct ()
{
$secretKey = '{YOUR_SECRET_KEY}' ;
$projectId = '{YOUR_PROJECT_ID}' ;
$client = new CodemashClient ($secretKey , $projectId);
$codemashPushNotification = new CodemashPushNotification ($client);
}
public function sendPushNotification ()
{
$responseData = $this -> codemashPushNotification -> sendNotification ( [
'templateId' => '{TEMPLATE_ID}' ,
'users' => [
'{USER_ID}' ,
'{USER_ID}' ,
'{USER_ID}' ,
] ,
] ) ;
}
}
Get Notification
GET
https://api.codemash.io/:version/notifications/push/:id
Gets a push notification.
Path Parameters
The version of the API endpoint. Current latest v1 .
The ID of a notification to get.
Your project's secret key.
Your project's ID. Can be passed as a query parameter.
200 Returns an ID of created notification group. 401 Returns if the user does not have a valid permission to call this method. 500
.NET Node PHP
Copy var client = new CodeMashClient (apiKey , projectId);
var pushService = new CodeMashPushService (client);
var response = await pushService .GetNotificationAsync(
new GetNotificationRequest
{
Id = "{NOTIFICATION_ID}"
}
);
Copy use Codemash \ CodemashClient ;
use Codemash \ CodemashPushNotification ;
class CodemashService
{
protected CodemashPushNotification $codemashPushNotification;
public function __construct ()
{
$secretKey = '{YOUR_SECRET_KEY}' ;
$projectId = '{YOUR_PROJECT_ID}' ;
$client = new CodemashClient ($secretKey , $projectId);
$codemashPushNotification = new CodemashPushNotification ($client);
}
public function getNotification ()
{
$responseData = $this -> codemashPushNotification -> getNotification ( [
'id' => '{NOTIFICATION_ID}' ,
] ) ;
}
}
Get Notifications
GET
https://api.codemash.io/:version/notifications/push
Gets many push notifications.
Path Parameters
The version of the API endpoint. Current latest v1 .
Query Parameters
The ID of a user whose notifications to get.
The ID of a device whose notifications to get.
Your project's secret key.
Your project's ID. Can be passed as a query parameter.
200 Returns an ID of created notification group. 401 Returns if the user does not have a valid permission to call this method. 500
.NET Node PHP
Copy var client = new CodeMashClient (apiKey , projectId);
var pushService = new CodeMashPushService (client);
var response = await pushService .GetNotificationsAsync(
new GetNotificationsRequest
{
UserId = "{USER_ID}"
}
);
Copy use Codemash \ CodemashClient ;
use Codemash \ CodemashPushNotification ;
class CodemashService
{
protected CodemashPushNotification $codemashPushNotification;
public function __construct ()
{
$secretKey = '{YOUR_SECRET_KEY}' ;
$projectId = '{YOUR_PROJECT_ID}' ;
$client = new CodemashClient ($secretKey , $projectId);
$codemashPushNotification = new CodemashPushNotification ($client);
}
public function getNotifications ()
{
$responseData = $this -> codemashPushNotification -> getNotifications ( [
'userId' => '{USER_ID}' ,
] ) ;
}
}
If you do not specify user ID or device ID, the method will return notifications directed to the calling user. To get any user's or device's notifications, the calling user need's to have the appropriate permission for that.
Get Notifications Count
GET
https://api.codemash.io/:version/notifications/push/count
Gets total and total unread notifications.
Path Parameters
The version of the API endpoint. Current latest v1 .
Query Parameters
The ID of a user whose notifications to get.
The ID of a device whose notifications to get.
Your project's secret key.
Your project's ID. Can be passed as a query parameter.
200 Returns an ID of created notification group. 401 Returns if the user does not have a valid permission to call this method. 500
Copy {
"result" : {
"totalCount" : 20 ,
"totalUnread" : 2
}
}
.NET Node PHP
Copy var client = new CodeMashClient (apiKey , projectId);
var pushService = new CodeMashPushService (client);
var response = await pushService .GetNotificationsCountAsync(
new GetNotificationsCountRequest
{
UserId = "{USER_ID}"
}
);
Copy use Codemash \ CodemashClient ;
use Codemash \ CodemashPushNotification ;
class CodemashService
{
protected CodemashPushNotification $codemashPushNotification;
public function __construct ()
{
$secretKey = '{YOUR_SECRET_KEY}' ;
$projectId = '{YOUR_PROJECT_ID}' ;
$client = new CodemashClient ($secretKey , $projectId);
$codemashPushNotification = new CodemashPushNotification ($client);
}
public function getNotificationsCount ()
{
$responseData = $this -> codemashPushNotification -> getNotificationCount ( [
'userId' => '{USER_ID}' ,
] ) ;
}
}
If you do not specify user ID or device ID, the method will return notifications directed to the calling user. To get any user's or device's notifications, the calling user need's to have the appropriate permission for that.
Read Notification
PATCH
https://api.codemash.io/:version/notifications/push/:notificationId/read
Marks a particular push notification as read.
Path Parameters
The version of the API endpoint. Current latest v1 .
The ID of a notification to delete.
Your project's secret key.
Your project's ID. Can be passed as a query parameter.
Request Body
The ID of notification to mark as read.
The ID of the user at which this notification was directed.
The ID of device at which this notification was directed.
200 Returns an ID of created notification group. 401 Returns if the user does not have a valid permission to call this method. 500
.NET Node PHP
Copy var client = new CodeMashClient (apiKey , projectId);
var pushService = new CodeMashPushService (client);
var response = await pushService .ReadNotificationAsync(
new MarkNotificationAsReadRequest
{
NotificationId = "{NOTIFICATION_ID}"
}
);
Copy use Codemash \ CodemashClient ;
use Codemash \ CodemashPushNotification ;
class CodemashService
{
protected CodemashPushNotification $codemashPushNotification;
public function __construct ()
{
$secretKey = '{YOUR_SECRET_KEY}' ;
$projectId = '{YOUR_PROJECT_ID}' ;
$client = new CodemashClient ($secretKey , $projectId);
$codemashPushNotification = new CodemashPushNotification ($client);
}
public function readNotification ()
{
$responseData = $codemashPushNotification -> readNotification ( [
'id' => '{NOTIFICATION_ID}' ,
] ) ;
}
}
If you do not specify user ID or device ID, the method will assume that notification was directed to a calling user. If you want to set other user's notification as read, you need to have the appropriate permission for that.
Delete Notification
DELETE
https://api.codemash.io/:version/notifications/push/:id
Deletes a particular push notification.
Path Parameters
The version of the API endpoint. Current latest v1 .
The ID of a notification to delete.
Your project's secret key.
Your project's ID. Can be passed as a query parameter.
200 Returns an ID of created notification group. 401 Returns if the user does not have a valid permission to call this method. 500
.NET Node PHP
Copy var client = new CodeMashClient (apiKey , projectId);
var pushService = new CodeMashPushService (client);
var response = await pushService .DeleteNotificationAsync(
new DeleteNotificationRequest
{
Id = "{NOTIFICATION_ID}"
}
);
Copy use Codemash \ CodemashClient ;
use Codemash \ CodemashPushNotification ;
class CodemashService
{
protected CodemashPushNotification $codemashPushNotification;
public function __construct ()
{
$secretKey = '{YOUR_SECRET_KEY}' ;
$projectId = '{YOUR_PROJECT_ID}' ;
$client = new CodemashClient ($secretKey , $projectId);
$codemashPushNotification = new CodemashPushNotification ($client);
}
public function deleteNotification ()
{
$responseData = $codemashPushNotification -> deleteNotification ( [
'id' => '{NOTIFICATION_ID}' ,
] ) ;
}
}