Recommendations and good practices

In this section you will find the recommendations and technical aspects to take into account in any integration with an SMS API. The tips and recommendations listed here can be applied to any integration with any SMS provider. However, we describe some functionalities and characteristics of the LabsMobile platform.

Our technical department has professionals with more than 10 years of experience in the SMS sector. After countless integrations we have put together this list of key points and topics to review in any SMS integration.

We strongly request that all users who integrate their applications with our SMS API check and review the following points:

Settings

It is recommended to review your account settings. Especially:

Account preferences

  • - Language
  • - Default country (to add the prefix to sendings, databatse imports, etc.).
  • - Time zone
  • - Currency
  • - Maximum messages per day

Notifications settings

  • - Activation of desired notifications
  • - Email/s to receive notifications, alerts, 2FA codes.
  • - Personalized balance alert

Billing and contact information

  • - Verified mobile phone

Security

Https connection

You should always use a URL that incorporates the HTTPS protocol in any API version.

     https://api.labsmobile.com/...

Token API

It is highly recommended to use an API token as a password for API connections. It is possible to generate as many API tokens as necessary in the 'Security and passwords' section of your LabsMobile account.

This measure incorporates many benefits to your API integration. It adds more security by not exposing the general password of the account and also it is not necessary to modify the integration API when the password of the account is changed.

It is advisable to create an API token for each project, application or differentiated use.

IP Filter

It is possible to limit the allowed IP addresses of origin to make requests to the LabsMobile API.

In the section 'Account preferences' you can add one or more IP addresses of the client's servers or systems that could access the API.

This measure blocks any unauthorized access by third parties even if they have a valid password or token.

Passwords and 2FA

It is necessary to keep the password to access the account (and API tokens) encrypted and securely saved following the security standards.

It is recommended not to exchange or communicate any credentials by email or unencrypted channel that could be intercepted by third parties.

We also recommend frequently modifying any access or authentication credentials (make a password change at least every 6 months).

It is mandatory to apply a 2FA authentication (by password and security code) to access to your LabsMobile account control panel. In this way, unauthorized access to confidential/personal data is protected and the balance and payment methods of the account are preserved.

Consumption and SMS typology

SMS message types

There are two types of SMS messages: Standard and Unicode. These two types of messages differ in the characters they can contain and their capacity.

Los mensajes SMS estándar pueden contener hasta 160 caracteres del alfabeto GSM. Es decir, es posible enviar los siguientes caracteres: ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz0123456789@£¥èéùìòÇØøÅåΔΦΓΛΩΠΨΣΘΞÄÖÑܧäöñüà_^|{}[~]€ÆæßÉ!/\"#¤%&'()*+,-.|:;<=>?.

SMS unicode messages can contain any character, symbol, emoji, etc. but the maximum capacity is 70 characters.

It is possible to send concatenated SMS messages (either standard or unicode) that the recipient will see as a single message.

Credits by sending

The credit consumption of a sending is calculated based on the destination country, SMS type (standard or unicode) and the characters length of the message.

Each country of destination has its cost per SMS (unit cost per standard SMS) which can be found in the SMS Prices section.

If the text of the message contains only characters from the GSM charset, standard SMS will be sent, which will have a cost in credits depending on the destination country and the length of the message:

  • - 1 to 160 characters GSM => X
  • - 161 to 306 characters GSM => 2X
  • - 307 to 459 characters GSM => 3X
  • - 460 to 612 characters GSM => 4X
  • (X being the unit cost of the destination country or countries)

In the case of SMS unicode, the credit calculation is carried out as follows:

  • - 1 to 70 characters => X
  • - 71 to 134 characters => 2X
  • - 135 to 201 characters => 3X
  • - 202 to 268 characters => 4X
  • (X being the unit cost of the destination country or countries)

It is not recommended to send messages with a length greater than 4 concatenated segments.

In case of doubt, it is possible to check the number of credits of a message or delivery in any sendings form of the WebSMS application.

Features by destination

Each destination has specific SMS sending characteristics determined by the telephone operators of each country.

Specifically, depending on the country, it may vary:

  • - Sender. Depending on the legislation or the telephone operators of each country, the sender field can be customized in each sending (dynamic), could be a fixed value (numeric, alphanumeric - longcode or shortcode) or a random value.
  • - Delivery confirmation. There are network delivery confirmations in which local operator confirms the validity of the message. Or device delivery confirmations in which the recipient's terminal confirms receipt of the SMS.
  • - Allowed hours. According to the legislation or the regulations of the operators, there may be a time limit for sending SMS messages. Messages sent outside of these permitted hours will be blocked and will not be delivered.
  • - Content and uses. Depending on the destination, there may be limitations on the content (political messages, trademarks, financial entities, prohibited keywords, etc.) and the use or application (transactional or promotional).
  • - SMS reception. The SMS reception service can be available with longcode or shortcode virtual numbers.

You can consult the particularities of each country in the section 'Credits and services by country' and as a warning when making any seinding in WebSMS. You can also contact our Support Center.

Filters and limits

Anti-duplicate filter

The LabsMobile platform has a filter to avoid sending duplicated messages to the same recipient.

Duplicated messages are considered from the second SMS with the same text and sender sent to the same recipient for 60 minutes. These messages are not sent, are cost-free, and are tagged as duplicated.

You can disable this filter in your 'Account Preferences'.

Schedule filter

Through the section 'Account preferences' it is possible to establish a not allowed sending schedule.

Any sending made during these non-permitted hours are temporarily blocked and will be send at the next permitted time.

Blocked sendings can be viewed and canceled in the 'Scheduled' section of the account.

Filter by country

In the 'Account Preferences' you can configure the possible destination countries for the account's messages. In the event that no country is defined, the account will be able to send to any destination.

Sendings to countries not allowed will be blocked and will have no cost.

Maximum daily and per sending

The 'Account Preferences' define a maximum number of messages per day (100,000 by default) and a maximum numbers in the same sending or API call (10,000 by default).

In case of reaching any of the limits, messages will be temporarily blocked pending manual validation by our staff.

Alerts and notifications

Balance notice

The platform will notify you by email when the account reaches a lower limit of 10 credits.

In addition, in the 'Notification settings' it is possible to establish a personalized alert when the balance reaches a certain number of messages to the country by default.

Automatic refills

To avoid run out of credits and not interrupting sendings, it is recommended to configure the 'Automatic recharges' of your account.

Automatic recharges establish a balance limit in which a purchase or credit recharge will be made.

Suggested tests

  • Special characters: En función de la versión y formato de la API (URL, XML, JSON, etc) es necesario condificar los valores o escapar una serie de caracteres especiales (como por ejemplo & ' " ! + < = >).
  • Country code: It is mandatory to add the prefix of the country of destination of each number. The only exception are the sendings to the country configured by default. In this case the platform will add the prefix automatically.
  • No text: Verify that any sending is never made without text field or with an empty message.
  • No sender: It is possible to send messages without the sender field and in that case the default sender of the account will be adopted.
  • No recipient: Verify that a sending is never made without recipients.
  • Concatenated messages: Check the length of the messages and limit if desired to a specified number of concatenated segments.
  • Unicode messages: Choose if you want to send unicode messages and in that case check the cost and variables.
  • Variables: Check the possible values ​​of variables and that these variables do not contain illegal characters or exceed the allowed or desired length.
  • API call result: Check the result (error codes) of any API call. So that alerts can be set, tagged successful messages and retries in case of connection failure.