enterprise - any enterprise of aggregator taking their services from us
msp - optional, will not be given to everyone, he is a master and can have multiple aggregators(ISPs) within them
As of now this TSP part is only being managed by twixor team, RCM & PMO team directly, this is just an additional info shared below for reference.
In case any issues are raised pertaining to TSP, please pass it on to PMO team or speak to prashant /sachin
URL for login -
https://messaginghub.solutions/master/login
If anyone faces the issues with wallet, the amount is needed to be added using the above panel itself
The public API and tsp features should be activated in the ERP for the designated esmeaddr or Super Admin account. The same can be checked in custom feature table in back-end. Without this the TSP APIs will not work.
For creation and service assigning to any user account once the above requirement is fulfilled, the next steps should be followed
Step 1
The API key will be generated by the customer using the PowerApi module within the lounge.
Step 2
Generating Authorization Tokens
The token is authentication mechanism to access the API server to perform specific actions. To generate this token, use the following API.
Endpoint URL
POST https://tsp.instaalerts.zone/token/generate
Request body
{ "api_key" : "4SLKrCqY4bsVX7GN/IVAbw==" }
Success Response body
{ "validity": 1440, "token": "erJhbGciOiJSUkI..." }
Step 3 For creating account
Create account
Utilize the generated token as an authentication mechanism to create a user account. The token serves as a key to access the API server and initiate the account creation process.
End Point URL
POST https://tsp.instaalerts.zone/usermgmt/createAccount
Header
Content-Type: application/json
Authorization: Bearer {{Generated token}}
Request body
{ "userName": "DeerajTeasasast12", "mobileno": 123232334, "email": "deij@ijfd.com" }
Success response body
{ "status": "SUCCESS", "reason": "User created Successfully. ", "serviceCount": 3, "services": [ { "service": "API", "serviceName": "Power API", "relevantMedia": "EMail,SMS,USSD,Voice,RCM", "orderIndex": "3" }, { "service": "Konverse", "serviceName": "Konverse", "relevantMedia": "RCM", "orderIndex": "26" }, { "service": "WhatsAppCampaignGUI", "serviceName": "WhatsAppCampaignGUI", "subService": "CampaignManager", "subServiceName": "Campaign Manager", "subServiceType": "Multiple", "permission": "C,M,S", "permType": "Multiple", "permName": "Create Campaigns, Manage Campaigns, Send Campaigns", "relevantMedia": "RCM", "orderIndex": "27" }, { "service": "WhatsAppCampaignGUI", "serviceName": "WhatsAppCampaignGUI", "subService": "WebhookConfig", "subServiceName": "Webhook Config", "subServiceType": "Multiple", "permission": "C,D", "permType": "Multiple", "permName": "Create Webhook Config, Delete Webhook Config", "relevantMedia": "RCM", "orderIndex": "27" }, { "service": "WhatsAppCampaignGUI", "serviceName": "WhatsAppCampaignGUI", "subService": "TemplateManagement", "subServiceName": "Template Management", "subServiceType": "Multiple", "permission": "C,V,D", "permType": "Multiple", "permName": "Create Templates, View Templates, Delete Templates", "relevantMedia": "RCM", "orderIndex": "27" }, { "service": "WhatsAppCampaignGUI", "serviceName": "WhatsAppCampaignGUI", "subService": "Profiles", "subServiceName": "Profiles", "subServiceType": "Multiple", "permission": "M", "permName": "Manage Profiles", "relevantMedia": "RCM", "orderIndex": "27" }, { "service": "WhatsAppCampaignGUI", "serviceName": "WhatsAppCampaignGUI", "subService": "EmbeddedSignUp", "subServiceName": "Embedded Sign-up", "subServiceType": "Multiple", "permission": "M", "permName": "Manage Signup", "relevantMedia": "RCM", "orderIndex": "27" }, { "service": "WhatsAppCampaignGUI", "serviceName": "WhatsAppCampaignGUI", "subService": "Reports", "subServiceName": "Reports", "subServiceType": "Multiple", "permission": "M", "permName": "Manage Reports", "relevantMedia": "RCM", "orderIndex": "27" } ], "api_key" : "XXXXXXXXXXXXXXXXX" }
API Key Error response body
{ "status": "SUCCESS", "reason": "User created Successfully. ", "serviceCount": 3, "services": [ { "service": "API", "serviceName": "Power API", "relevantMedia": "EMail,SMS,USSD,Voice,RCM", "orderIndex": "3" }, { "service": "Konverse", "serviceName": "Konverse", "relevantMedia": "RCM", "orderIndex": "26" }, { "service": "WhatsAppCampaignGUI", "serviceName": "WhatsAppCampaignGUI", "subService": "CampaignManager", "subServiceName": "Campaign Manager", "subServiceType": "Multiple", "permission": "C,M,S", "permType": "Multiple", "permName": "Create Campaigns, Manage Campaigns, Send Campaigns", "relevantMedia": "RCM", "orderIndex": "27" }, { "service": "WhatsAppCampaignGUI", "serviceName": "WhatsAppCampaignGUI", "subService": "WebhookConfig", "subServiceName": "Webhook Config", "subServiceType": "Multiple", "permission": "C,D", "permType": "Multiple", "permName": "Create Webhook Config, Delete Webhook Config", "relevantMedia": "RCM", "orderIndex": "27" }, { "service": "WhatsAppCampaignGUI", "serviceName": "WhatsAppCampaignGUI", "subService": "TemplateManagement", "subServiceName": "Template Management", "subServiceType": "Multiple", "permission": "C,V,D", "permType": "Multiple", "permName": "Create Templates, View Templates, Delete Templates", "relevantMedia": "RCM", "orderIndex": "27" }, { "service": "WhatsAppCampaignGUI", "serviceName": "WhatsAppCampaignGUI", "subService": "Profiles", "subServiceName": "Profiles", "subServiceType": "Multiple", "permission": "M", "permName": "Manage Profiles", "relevantMedia": "RCM", "orderIndex": "27" }, { "service": "WhatsAppCampaignGUI", "serviceName": "WhatsAppCampaignGUI", "subService": "EmbeddedSignUp", "subServiceName": "Embedded Sign-up", "subServiceType": "Multiple", "permission": "M", "permName": "Manage Signup", "relevantMedia": "RCM", "orderIndex": "27" }, { "service": "WhatsAppCampaignGUI", "serviceName": "WhatsAppCampaignGUI", "subService": "Reports", "subServiceName": "Reports", "subServiceType": "Multiple", "permission": "M", "permName": "Manage Reports", "relevantMedia": "RCM", "orderIndex": "27" } ], "error" : "API key generation Failed. Please try again" }
Failure Response body
{ "status": "FAILURE", "reason": "ERR-502 - User name : DeerajTest12da Cannot be created" }
Step 4 AllocateResource
Endpoint URL
POST https://tsp.instaalerts.zone/usermgmt/allocateResource
Header
Content-Type: application/json
Authorization: Bearer {{Generated token}}
Request body
{ "toUsername": "sandtsp_te2", "waba_id": 109326882081092, "phone_display_id": 916382787264, "sender_id": 917391093716, "display_name": "Sample Number", "channel": "Whatsapp", "webhook": { "MO": { "url": "www.googlet.com", "httpHeaders": "Content-Type=application/JSON ", "retryCount": "2", "retryDelayInSec": "2" }, "DLR": { "url": "www.googlet.com", "httpHeaders": "Content-Type1=application/JSON ", "retryCount": "2", "retryDelayInSec": "2", "eventCategory": [ "Queued", "Sent", "Delivered", "Read" ], "defaultRule": "1" } } }
Success response body
{ "status": "SUCCESS", "moRuleId": 121221, "dlrRuleId" : 121232, "reason": "Successfully Assigned the resource to Account" }
Line of credits, Create MO, Create DLR Failed
{ "status": "SUCCESS", "reason": "Successfully Assigned the resource to Account but credits allocation, Create DLR and Create MO failed" }
Failure response body
{ "status": "FAILURE", "reason": "ERR-501 - SenderId is already to subscribed" }
Step 5 (If required) TransferResource
The TransferResource API is facilitates the seamless transfer of existing sender IDs. Initially, these sender IDs are associated with the main or admin username. However, they can be efficiently transferred to a different username that belongs to a sub-account under the Karix. This API provides an effective mechanism for aggregators to delegate responsibilities and maintain control over the distribution of sender IDs within their sub-accounts. It plays a crucial role in enhancing operational efficiency and flexibility in the management of sender IDs.
Endpoint URL
POST https://tsp.instaalerts.zone/usermgmt/transferResource
Header
Content-Type: application/json
Authorization: Bearer {{Generated token}}
Request body
{ "fromUsername": "unitst2", "toUsername": "DeerajTest12fa", "senderids": { "channel": "WhatsApp", "senderid": 9999999999 } }
Success response body
{ "status": "SUCCESS", "reason": "Successfully transferred the senderids" }
Failure Response body
{ "status": "FAILURE", "reason": "ERR-503 - Please try again" }