API INTEGRATION - FAQ
Where can I find my authentication key?
An authentication key (Authkey), also known as an API key or access token, is a unique identifier or code that is used to authenticate and authorize requests made to the API. When making API requests, the authentication key is usually included in the request headers or as a query parameter.
It's important to handle authentication keys securely, as they can grant access to sensitive data or functionality.
1. Log in to the Bulk SMS panel and select the Authkey option from the username dropdown. You can also access this dropdown from the bottom left if you are inside any service dashboard.
2. Enter the registered mobile number and verify with the OTP you will receive on the registered number.
3. Click on the Create New option to create an authkey. The tab as shown below will get opened.
4. Name the Authkey as per your preference. Please make sure there is no special character in this section.
5. Select its use case in the "Where are you integrating" field or give a new one.
6. Select the Rule to be applied to that authkey from the Rules dropdown. For example, if permission for only selected services is given in the rule, then the authkey can only be used for those services. You can also create a new rule from the Rules section in the Settings of your account.
The IP security is on by default. You can turn it off if required by editing the authkey settings. Whitelist your IPs in the Whitelist IPs field. The IPs whitelisted for the company will be visible under the Company's whitelisted IPs section at the bottom.
Once done, click on the Create button.
How can I integrate the SMS API provided in the Bulk SMS panel?
Under "SMS", click "Support" in the sidebar & Select the API documentation option on the dropdown.
API documentation will get opened.
You can fill in the parameters such as template ID, mobile number, and variables to get the final API & in the header enter the Authkey, and then press 'Try it' to send the SMS. On the right side of the panel by clicking on Sample codes get the API codes in various languages.
Note: Variable values keep on changing, you may have 1, 2 variables, or 3 or so. Pass the variables in the API depending on the variables you have in your flow and write the variable in the exact format as you did while creating the flow (this is case-sensitive as well).
1. The mobile variable will always be dynamic and you have to insert it into the API, which is the mobile number of the user to whom you want to send SMS.
2. To shorten the URL in your content pass the value as 1.
3. The message variable can be static or dynamic as per your implementation.
The authentication key, sender id, and route will always be static.
What are the reasons for error codes received under the API failed?
ERROR CODES:
Error codes are displayed if there's an issue in the message sent by you. Click on the respective code to find out the reason for failed SMS and also to know what that particular code means.
You can also find the reasons for all the error codes for API below:
101 | Missing mobile number |
102 | Missing message |
104 | Missing username |
105 | Missing password |
201 | Invalid username or password. 201 also appears in case the XML code triggered is incorrect. |
202 | Invalid mobile number |
203 | Invalid sender ID or DLT Entity Id Missing |
207 | Invalid authentication key |
208 | IP is blacklisted |
209 | Default route not found |
210 | The route could not be determined. Please contact support |
211 | DLT Template Id Missing |
301 | The user does not have sufficient balance to send SMS |
302 | Expired user account |
303 | Banned user account |
306 | This route is currently unavailable |
307 | The schedule time is incorrect |
308 | Campaign name cannot be more than 32 characters |
309 | The selected group(s) does not belong to you |
310 | SMS is too long. The system paused this request automatically |
311 | When the same SMS content is sent to the same number within 10 seconds. This is a security feature used to avoid multiple deliveries. The first SMS will be delivered and the second will be rejected. The balance will also be deducted only once. |
400 | Flow ID Missing or Invalid Flow |
401 | Flow Not Yet Approved |
402 | The message has some hard block keywords. |
403 | Flow is disabled |
418 | IP not whitelisted |
506 | Internal error, please contact your account manager |
601 | Internal error, please contact your account manager |
602 | If your current route is disabled, kindly select another route |
603 | This sender ID is blacklisted, please use a different sender ID |
604 | Please enter at least one correct number to send an SMS |
606 | The scheduled date cannot be more than three weeks |
607 | Please enter the campaign name |
608 | Scheduled SMS cannot be less than the current end time |
How to get SMS status in API?
While submitting any request to our server we first generate the request ID and then process it further so at the same instance we will not be able to provide the exact reports of the ID and can only provide the below-mentioned status,
If the API is successfully submitted to our server the response is Type: "SUCCESS" and String: "REQUEST ID".
For checking the complete reports, you need to check the delivery reports or can use webhooks to get the delivery details in real-time for the same, and during the case of Failed API, an email is sent to your registered ID mentioning the error code and its description.
Note: By default, you will get the response in string format but if you want to receive it in other formats (JSON, XML) then set this parameter. for example: &response=json or &response=xml