@avidian/semaphorejs
v1.0.7
Published
A wrapper for accessing the Semaphore SMS API
Downloads
4
Readme
SemaphoreJS
A wrapper for accessing the Semaphore SMS API
Note: This only works on nodejs, using this on the browser will not work.
Table of Contents
Installation
npm
npm install @avidian/semaphorejs
yarn
yarn add @avidian/semaphorejs
Basic Usage
Sending Messages
import { Client } from '@avidian/semaphorejs';
const client = new Client('your api key', {/* options */});
const response = await client.send('09991234567', 'your message');
// multiple recipients
const recipients = ['09991234567', '09997654321'];
const response = await client.send(recipients, 'your message');
[
{
"message_id": 1234567,
"user_id": 99556,
"user": "[email protected]",
"account_id": 90290,
"account": "Your Account Name",
"recipient": "09991234567",
"message": "The message you sent",
"sender_name": "SEMAPHORE",
"network": "Globe",
"status": "Queued",
"type": "Single",
"source": "Api",
"created_at": "2016-01-01 00:01:01",
"updated_at": "2016-01-01 00:01:01"
}
]
Retrieving Messages
const response = await client.messages({ limit: 100, page: 1 });
Supported filters for retrieving messages
const options = {
limit: 100,
page: 1,
sendername: 'SEMAPHORE',
startDate: '2016-01-01',
endDate: '2016-02-01',
network: 'globe',
status: 'success',
};
Retrieving account information
const response = await client.account();
{
"account_id": 12345,
"account_name": "Your Organization",
"status": "Active",
"credit_balance": 5000
}
Retrieve users
const response = await client.users();
[
{
"user_id": 12345,
"email": "[email protected]",
"role": "Owner"
},
{
"user_id": 54321,
"email": "[email protected]",
"role": "User"
}
]
Sender names
const response = await client.senderNames();
[
{
"name":"Semaphore",
"status":"Active",
"created":"2016-01-01 00:00:01"
},
{
"name":"Kickstart",
"status":"Active",
"created":"2016-01-01 00:00:01""
}
]
Transactions
const response = await client.transactions();
License
This library is open-sourced software licensed under the MIT license.