Pour pouvoir utiliser CRM, vous allez devoir générer des clés d'API qui permettent d'identifier votre application de manière unique dans le système. Pour générer les clés d'API de votre application, voici la démarche à suivre :
Vous devez d'abord avoir un compte PayDunya Business activé. Créez-en un si ce n'est pas encore le cas.
Connectez-vous à votre compte PayDunya et cliquez sur Gérer mes clients au niveau du menu à gauche.
Cliquez sur Activer service
si c'est votre premier accès.
Créer un compte SMS en cliquant sur le bouton Créer compte SMS
, si vous en n'avez pas encore.
Ensuite cliquez sur le bouton Accéder au service
.
Après avoir accédé au compte SMS, cliquez sur le bouton Générer les clés d'API
.
Vos clés API seront automatiquement générées.
Les clés d'API sont au nombre de trois(3):
Une fois les clés générées, vous pouvez maintenant utiliser notre CRM.
JSON
.
Pour consommer les endpoints de notre CRM, il vous faut toujours un token d'autorisation.
https://crm.paydunya.com/api/v1/auth/login
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/vnd.apisms.v1+json" \
-F "user_key: USER-KEY" \
-F "secret_key: SECRET-KEY" \
"https://crm.paydunya.com/api/v1/auth/login"
N'oubliez de les remplacer par leurs valeurs.
{
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC9zbXMucGF5ZHVueWEuY29yZVwvYXBpXC92MVwvYXV0aFwvbG9naW4iLCJpYXQiOjE1NTI2NTEwNzYsImV4cCI6MTU1MjY1NDk3NiwibmJmIjoxNTUyNjUxMDc2LCJqdGkiOiJWMjBKNk1SUFh0eldMS3VOIiwic3ViIjoyLCJwcnYiOiI4N2UwYWYxZWY5ZmQxNTgxMmZkZWM5NzE1M2ExNGUwYjA0NzU0NmFhIn0.xagI2zndC6ThraHFrZC9qNS_BdnmNlbN2tOHU2PKinY",
"token_type": "bearer",
"expires_in": 3600,
}
https://crm.paydunya.com/api/v1/sms/send
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/vnd.apisms.v1+json" \
-H "Authorization: Bearer TOKEN" \
-d '{
"send_sms_request":{
"type": "application",
"app_key": "APP-KEY",
"sms": [
{
"from": "SENDER-ID",
"to":"+221776665544",
"text": "Un sms de test."
}
]
}
}' \
"https://crm.paydunya.com/api/v1/sms/send"
SENDER-ID est la signature du SMS. Prennant comme valeur le nom du compte SMS, il correspond au nom d'envoi du SMS, c'est le nom expéditeur qui sera affiché à destination. Pensez à mettre la bonne signature qui est configurée au niveau du compte, sinon le nom par défaut SMS-TEST sera pris en compte.
N'oubliez de les remplacer par leurs valeurs.
Pour cet endpoint, vous avez remarqué que le noeud sms prend un tableau d'objet (SMS: from, to, text). Notez qu'on supporte jusqu'à 50 sms(objets)
par requete.
{
"code": "00",
"message": "sms_sent",
"description": "The sms sent successfully",
"data": {
"sms": [
{
"code": "CODE-SMS",
"sender_addresss": "SENDER-ID",
"receiver_address": "+221776665544",
"text": "Un sms de test."
},
]
}
}
Au delà des endpoints pour avoir un token et envoyer un sms, il existe aussi un autre qui vous permettra de récupérer les stats. Cette méthode vous retourne une liste de sms envoyés. Cette liste est personalisable en fonction des destinataires(receivers_address
) et de la période(start_date et end_date
) qui seront spécifiés dans la requete.
https://crm.paydunya.com/api/v1/sms/stats
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/vnd.apisms.v1+json" \
-H "Authorization: Bearer TOKEN" \
-d '{
"sms_sent":
{
"type": "application",
"app_key": "APP-KEY",
"filters":
{
"receiver_address": [
{
"value": "+221776665544"
},
{
"value": "+221773332211"
},
{
"value": "+22173214354"
}
],
"start_date": "2018-01-01 00:00:00",
"end_date": ""
}
}
}' \
"https://crm.paydunya.com/api/v1/sms/stats"
Les noeuds start_date
, end_date
sont optionnels. Ils sont deux valeurs qui nous permettent de définir une période. Vous pouvez mettre comme valeur des chaines vides si vous ne souhaiteriez pas les utiliser.
"code": "00",
"message": "success",
"description": "The request is success",
"data": {
"invalid_number": [
{
"value": "22173214354"
}
],
"valid_number": [
{
"221773332211": []
},
{
"221776665544": [
{
"code": "CODE-SMS",
"content": "Un sms de test."
}
]
}
]
}
}
Le noeud invalid_number
peut disparaitre d'une requete à l'autre. Il n'apparaitra que s'il y a au minimum un numéro invalide. Concernant le noeud valid_number
, les SMS seront associés à leurs destinataires. Dans ce sens, les numéros à qui, vous n'avez jamais envoyé des SMS auront un tableau vide.
Code | Message | Description |
---|---|---|
00 | sms_sent | The sms sent successfully |
success | The request is process successfully | |
ERROR_101 | sms_not_sent_success | The sms is not send successfully |
ERROR_102 | inufficient_balance | Insufficient balance |
ERROR_103 | balance_not_updated | Balance not updated |
ERROR_104 | invalid_content_request | The body of this request is not valid |
ERROR_105 | invalid_data_content_request | The body of this request is not valid |
ERROR_106 | invalid_type | The type is not valid |
ERROR_107 | invalid_key | The key is not valid |
ERROR_108 | invalid_sender_address | The sender address is not valid |
ERROR_109 | empty_address | No address found |
ERROR_110 | invalid_receiver_address | The receiver address is not valid |
ERROR_111 | number_recipients_not_authorize | The number of receiver address is not authorize (Between 1 and 50 accepted) |
ERROR_112 | invalid_content_message | The content message is not valid |
ERROR_113 | content_sms_too_long | The content message is too long |
ERROR_114 | invalid_start_date | The start date is not valid |
ERROR_115 | invalid_ende_date | The end date is not valid |
ERROR_116 | error_server | Error process on the server |
ERROR_117 | invalid_credentials | The credentials are invalid |
ERROR_118 | credentials_not_found | The credentials are not found |
ERROR_119 | could_not_create_token | The token is not create |
ERROR_120 | user_not_found | The user is not found |
ERROR_121 | token_expired | The token is expired |
ERROR_122 | token_invalid | The token is invalid |
ERROR_123 | token_not_found | The authorization token is not found |
ERROR_124 | logout_token | The authorization token is logout |