The Perfect Solution For Omnichannel Communications.
Empower your customers with a unified communication experience across their preferred channels (SMS, Email, and more), and cultivate brand loyalty throughout the customer journey.
Use-Cases
We streamline your communication needs to drive customer engagement and satisfaction.
Marketing & Sales
Enhance the impact of your campaigns with personalized, omnichannel communication.
Authentication & OTPs
Safeguard your brand’s trust and protect your customers with two-factor authentications and identity verifications.
Transaction Security
Add an extra layer of security measures to easily and reliably keep your transactions secure.
Notifications & Customer Care
Share valuable and timely relevant notifications that drive actions from customers and keep them well versed.
Designed For Developers...
Our flexible and scalable APIs empower you to create the suitable communication solution, unrestricted only by your imagination.
message
one-time code
code validation
Send your first
in the blink of an eye.
Sign up for a free account and choose one of our seven SDKs to get started. Send your first message, or one-time passcodes in a flash.
import os
from talkylabs.reach.rest import ReachClient
apiUser = os.environ['REACH_TALKYLABS_API_USER']
apiKey = os.environ['REACH_TALKYLABS_API_KEY']
client = ReachClient(apiUser, apiKey)
message = client.messaging.messaging_items.send(
dest='+237671234567',
src='+237691234567',
body='Hello World! This is a sms message.'
)
print(message.messageId)
using System;
using Reach;
using Reach.Rest.Api.Messaging;
class BasicUsage
{
static void Main(string[] args)
{
string apiUser = Environment.GetEnvironmentVariable("REACH_TALKYLABS_API_USER");
string apiKey = Environment.GetEnvironmentVariable("REACH_TALKYLABS_API_KEY");
ReachClient.Init(apiUser, apiKey);
var message = MessagingItemResource.Send(
dest: "+237671234567",
src: "+237691234567",
body: "Hello World! This is a sms message."
);
Console.WriteLine(message.MessageId);
}
}
import com.talkylabs.reach.Reach;
import com.talkylabs.reach.base.ResourceSet;
import com.talkylabs.reach.rest.api.messaging.MessagingItem;
public class BasicUsage {
public static final String API_USER = System.getenv("REACH_TALKYLABS_API_USER");
public static final String API_KEY = System.getenv("REACH_TALKYLABS_API_KEY");
public static void main(String[] args) {
Reach.init(API_USER, API_KEY);
MessagingItem message = MessagingItem
.sender(
"+237671234567", // dest
"+237691234567", // src
"Hello World! This is a sms message."
)
.send();
System.out.println(message.getMessageId());
}
}
const apiUser = process.env.REACH_TALKYLABS_API_USER;
const apiKey = process.env.REACH_TALKYLABS_API_KEY;
const client = require('reach')(apiUser, apiKey);
client.messaging.messagingItems
.send({
dest: '+237671234567',
src: '+237691234567',
body: 'Hello World! This is a sms message.'
})
.then((message) => console.log(message.messageId));
<?php
// Update the path below to your autoload.php
require_once '/path/to/vendor/autoload.php';
use Reach\Rest\Client;
$apiUser = getenv('REACH_TALKYLABS_API_USER');
$apiKey = getenv('REACH_TALKYLABS_API_KEY');
$client = new Client($apiUser, $apiKey);
$message = $client->messaging->messagingItems->send(
"+237671234567", // dest
"+237691234567", // src
"Hello World! This is a sms message."
);
print($message->messageId);
require 'rubygems'
require 'reach-ruby'
api_user = ENV['REACH_TALKYLABS_API_USER']
api_key = ENV['REACH_TALKYLABS_API_KEY']
@client = Reach::REST::Client.new(api_user, api_key)
message = @client.messaging.messaging_items.dispatch(
dest: '+237671234567',
src: '+237691234567',
body: 'Hello World! This is a sms message.'
)
puts message.messageId
package main
import (
"fmt"
"os"
"github.com/talkylabs/reach-go"
reachMessaging "github.com/talkylabs/reach-go/rest/api/messaging"
)
func main() {
apiUser := os.Getenv("REACH_TALKYLABS_API_USER")
apiKey := os.Getenv("REACH_TALKYLABS_API_KEY")
client := reach.NewRestClientWithParams(reach.ClientParams{
ApiUser: apiUser,
ApiKey: apiKey,
})
params := &reachMessaging.SendMessageParams{}
params.SetDest("+237671234567")
params.SetSrc("+237691234567")
params.SetBody("Hello World! This is a sms message.")
resp, err := client.Messaging.SendMessage(params)
if err != nil {
fmt.Println("Error: " + err.Error())
} else {
fmt.Println(resp.MessageId)
}
}
curl -X POST https://api.reach.talkylabs.com/rest/messaging/v1/create \
--data-urlencode "dest=+237671234567" \
--data-urlencode "src=+237691234567" \
--data-urlencode "body=Hello World! This is a sms message." \
-H "ApiUser: $REACH_TALKYLABS_API_USER" \
-H "ApiKey: $REACH_TALKYLABS_API_KEY"
...And Everyone Else.
Not a developer? Not a big deal. You don’t need to have a coding experience to use our platform.
No-Code Solution
Our no-code web interface provide you with the building blocks that allow you to smoothly execute your communication strategy and analyze its outcome.
Features
Robustness
Adaptability
Optimization
Security
What People Say About Us
-
I've been using the Messaging API for SMS marketing campaigns and the results have been outstanding. The analysis tools provided have helped us understand our campaign outcomes better.
Benoît Bisseck Douala, Cameroon -
Authentix is a cost-effective and reliable authentication solution that reduces support costs and allows businesses to scale without worry.
Alain Kokou Lome, Togo -
The most reliable messaging service I have ever used. I highly recommend TalkyLabs as a service provider.
Blaise Foka Douala, Cameroon -
I highly recommend TalkyLabs. It has transformed the way we communicate with our clients and adapt to our business needs. The platform is top-notch.
Ede Adesuwa Cotonou, Benin
Ready to Get Started
Subsribe To Our Newsletter
Stay in touch with us to get latest news and special offers.
Address
2919 Rue Des Cèdres, Sainte-Marthe-Sur-Le-Lac, QC, Canada
Email Sales
sales@talkylabs.com
Email Support
support@talkylabs.com
