Alerts
New message
- PUT /aalam/base/message
Post a new message to list of users, or groups of users, or userswith select permissions. The message can be a grouped one which uses afixed template from message map of the source app, or a dynamic one.
Permissions
Flags
deny_anon
Outputs
Successfully posted the message
Status code: 200
Some of the input fields are wrong.
Status code: 400
Inputs
In the input fields, ‘from’, ‘app’ and ‘receiver’ are mandatory at all times. If ‘index’ is not null, the ‘content’ is optional depending on the message template for that ‘index’. Else ‘content’ is mandatory. Other parameters are completely optional.
Content type: application/json
Content specification
{
"message": {
"from": "A name conveying the source of the message",
"app": "String of format 'provider_code/app_code'
The provider_code and the app_code should be that
of the source application that is sending this
message"
"receiver": [
{
"type": "One among ['users', 'groups',
'permissions']"
"value": [List of strings]
The significance varies with the choice of
'type'. If type is;
'users' => This sould be a list of user
email ids or mobile phone numbers.
'groups' => This should be a list of
group names.
'permissions' => This should be a list of
permissions.
},
...
],
"index": "The message index value as desribed the sending
app's message map. This is an optional field.
When this field is present, the content of this
messgae will be used against the template
mentioned by this index."
"frontend_url": "The url to be presented for the user who
view this message."
"backend_url": "The url to be invoked by the base
application whenever an action is performed
on the message. A user reading the message
or deleting it are the actions for which
the backend url will invoked."
"private_data": "A small data identifier to be passed along
as a parameter to the frontend_url and the
backend_url. One can find this data in the
urls as 'private_data' parameter.
"content": "If index is valid, the content should be a
JSON content, with the key-values to substitue
the keys in the template pointed by the message
index.
If index is null, the content can be anything
and there will be no post processing working
done using this value."
"persist": "True/False, if true - save this message, else
just notify and not save. Default value - True"
}
}
Get messages
- GET /aalam/base/messages
Get the messages entitled for the requesting user.
Permissions
Flags
deny_anon
Parameters
date_floor
Message posted after time specified by the value. The format of the value should be user chosen format as part of the baseapp settings ‘date_format’.
count
Limit the number output items to this value.
Outputs
Status code: 200
Content type: application/json
Content specification
{
"id": "The content identifier of this message that will be used
by other apis"
"from": "The source name of this message",
"frontend_url": "The frontend url for user to act on",
"content": "Fully processed content of this message",
"private_data"; "Private data set by the source of this
message",
"isread": "Boolean value",
"time": "Time at which the message was posted. It will be the
user chosen format as set in the base application
setting's date_format"
}
This user is unauthorized to use this api.
Status code: 401
Delete message
- DELETE /aalam/base/message/{message_content_id}
Delete a message that was posted to the calling user.
Permissions
Flags
deny_anon
Outputs
Successfully deleted a message.
Status code: 200
Message not found.
Status code: 404
Message actions
- POST /aalam/base/message/{message_content_id}
This API’s usage differs by the calling context. It can be called by auser - A user can mark the ‘read’ status of the messageinternal applications - The application can alter the message detailsthat it posted earlier. The {message_content_id} will be posted tothe app as a parameter to the frontend_url and backend_url that itregistered while it posted this message. The parameter name to readthe message id is ‘message_id’.
Permissions
Flags
deny_anon
Parameters
read
This parameter is applicable only when called by a user. This should be a boolean value with ‘true’ meaning the is read.
private_data
This parameter is applicable only when called by another application. This replaces the exisiting private_data for the message.
from
This parameter is applicable only when called by another application. This replaces the ‘from’ field of the message which the app posted earlier.
content
This parameter is applicable only when called by another application. This replaces the message ‘content’.
Outputs
Action successfull.
Status code: 200
Message not found.
Status code: 404
Some input parameters are not valid
Status code: 400
Message preferences
- POST /aalam/base/messages/preference
This API is used on in the user context. The user can choose whichmessage to follow or unfollow. The user will not receiving messagewhich unfollowed.
Permissions
Flags
deny_anon
Parameters
provider_code
Provider code of the app to unfollow/follow.
app_code
App code of the app to unfollow/follow.
msg_group
(optional) Message group of the app to unfollow/follow. If not set it will unfollow/follow the ungrouped messages.
unfollow
Boolean value - true means unfollow messages.
Outputs
Successfully modified the preferences.
Status code: 200
Either the app or the message group is not found.
Status code: 404
Invalid parameters. Some of the mandator parameters are not set.
Status code: 400