bestsms
v2.4.1
Published
Node.js Library for BestSMS REST API
Downloads
5
Readme
bestsms
Documentation
The documentation for the BestSMS Rest API can be found here.
Versions
bestsms uses a modified version of Semantic Versioning for all changes. See this document for details.
Supported NodeJS Versions
This library supports the following NodeJS implementations:
- NodeJS v14
Installation
Install from npm using npm, a package manager for NodeJS.
npm i bestsmsYou may need to run the above commands with sudo.
Getting Started
Getting started with the BestSMS API couldn't be easier. Create a
Client and you're ready to go.
API Credentials
The BestSMS needs your BestSMS API credentials. You can either pass these
directly to the constructor (see the code below) or via environment variables.
const BestSMS = require('bestsms');
const client = new BestSMS({
"AuthToken": "[Your Auth Token]"
});
...Send Message
Send SMS through bestsms library.
Send SMS:
const BestSMS = require('bestsms');
const client = new BestSMS({
"AuthToken": "[Your Auth Token]"
});
var callback = function(data) {
console.log("Response: ",JSON.stringify(data, null, " "));
};
client.Messaging.SMS.SendMessage({
Reference: "Test", // Optional
Message: "Test SMS", // SMS Message
Destinations: [ // SMS Recipients
{ Recipient: "+61421111111" },
{ Recipient: "+61422222222" }
]
}).then(callback); // Send Message Reports
Retrieve your message status using bestsms library.
Reports - Get Message Status
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Reports.Status.Poll({
MessageID: "ID123456", // MessageID generated from system OR your message ID if specified
}).then(callback);Reports - Get SMS Reply
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
request.Poll(callback);
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Reports.SMSReply.Poll({
MessageID: "ID123456", // MessageID generated from system OR your message ID if specified
Page: 1 // Current location
}).then(callback); Reports - Get SMS Received List
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Reports.SMSReceived.Poll({
TimePeriod: 1440 // Return results from the last x minutes
RecordsPerPage: 10,
Page: 1
}).then(callback); Actions
Amend your message using bestsms library.
Actions - Abort Pending/Delayed Job
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Actions.Abort.SendRequest({
MessageID: "ID123456" // MessageID generated from system OR your message ID if specified
}).then(callback);Actions - Resubmit Failed Job
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Actions.Resubmit.SendRequest({
MessageID: "ID123456", // MessageID generated from system OR your message ID if specified
}).then(callback); Actions - Reschedule DELAYED Job
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Actions.Reschedule.SendRequest({
MessageID: "ID123456", // MessageID generated from system OR your message ID if specified
SendTime: "2023-09-01T00:00" // New Date/Time
}).then(callback);Addressbook - Contacts
Manage your contacts using bestsms library.
Contacts - List
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.Contact.List({
RecordsPerPage: 10,
Page: 1
}).then(callback);Contacts - Detail
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.Contact.Detail({
ContactID: "[Contact ID]"
}).then(callback);Contacts - Create
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.Contact.Create({
Title: "Mr",
Company: "BestSMS",
FirstName: "First",
LastName: "Last",
MobilePhone: "+61412100001",
ViewBy: "Account",
EditBy: "Account"
}).then(callback); Contacts - Update
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.Contact.Update({
ContactID: "[Contact ID]",
Attention: "Test Attention"
Title: "Mr",
Company: "BestSMS",
FirstName: "First",
LastName: "Last",
MobilePhone: "+61421222333",
ViewPublic: "Account",
EditPublid: "Account"
}).then(callback); Contacts - Delete
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.Contact.Delete({
ContactID: "[Contact ID]"
}).then(callback); Addressbook - Contact Group
Manage your contact group relationship using bestsms library.
Contact Group - List
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.ContactGroup.List({
ContactID: "[Contact ID]",
RecordsPerPage: 10,
Page: 1
}).then(callback); Contact Group - Detail
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.ContactGroup.Detail({
ContactID: "[Contact ID]",
GroupCode: "[Group Code]"
}).then(callback);Contact Group - Create
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.ContactGroup.Create({
ContactID: "[Contact ID]",
GroupCode: "[Group Code]"
}).then(callback); Contact Group - Delete
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.ContactGroup.Delete({
ContactID: "[Contact ID]",
GroupCode: "[Group Code]"
}).then(callback); Addressbook - Group
Manage your group using bestsms library.
Group - List
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.Group.List({
RecordsPerPage: 10,
Page: 1
}).then(callback);Group - Detail
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.Group.Detail({
GroupCode: "[Group Code]"
}).then(callback); Group - Create
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.Group.Create({
GroupName: "Test Group",
ViewEditBy: "Account"
}).then(callback); Group - Update
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.Group.Update({
GroupCode: "[Group Code]",
GroupName: "Test Group 123",
SubAccount: "Test",
ViewEditBy: "Account"
}).then(callback);Group - Delete
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.Group.Delete({
GroupCode: "[Group Code]"
}).then(callback); Addressbook - Group Contact
Manage your group contact relationship using bestsms library.
Group Contact - List
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.GroupContact.List({
GroupCode: "[Group Code]",
RecordsPerPage: 10,
Page: 1
}).then(callback); Group Contact - Detail
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.ContactGroup.Create({
ContactID: "[Contact ID]",
GroupCode: "[Group Code]"
}).then(callback); Group Contact - Create
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.GroupContact.Create({
GroupCode: "[Group Code]",
ContactID: "[Contact ID]"
}).then(callback); Group Contact - Delete
const BestSMS = require('bestsms');
const client = new BestSMS({
AuthToken: "[Your Auth Token]" // Auth Token
});
var callback = function(data) {
console.log("Response:",JSON.stringify(data, null, " "));
}
client.Addressbook.GroupContact.Delete({
GroupCode: "[Group Code]",
ContactID: "[Contact ID]"
}).then(callback); Getting help
If you need help installing or using the library, please check the BestSMS if you don't find an answer to your question.
