1.0.14 • Published 6 years ago
upwire v1.0.14
Upwire APIs Node.js Client
A Node.js package to consume Upwire Restful services
Usage
Install the package using npm:
npm install upwire --save
Then, require the package with your Upwire usenrame and passcode:
const Upwire = require('upwire')({username: '[username]', passcode: '[passcode]'});
Services from the Upwire API https://upwire.docs.apiary.io/ can be executed by calling a method with options.
For example to send an SMS:
options = {
"callerid": "[callerid]",
"destinations": "[destination]",
"message": "Test message from Upwire"
}
Upwire.Message.send(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Note: 'callerid' must be an SMS enabled number purchased from Upwire and 'destination' must be in international number format.
Complete List of Services
Master Job
Docs: https://upwire.docs.apiary.io/#reference/master-job
Master Submit
Create
options = {
"action": "create",
"templateId": "[templateId]",
"csvData": "False",
"data": {
"id": "[id]",
"name": "[name]",
"mobile": "[mobile]",
"landline": "[landline]",
"email": "[email]"
}
}
Upwire.Master.create(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Wait for API Call
options = {
"templateId": "[templateId]",
}
Upwire.Master.startOutbound(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Append
options = {
"templateId": "[templateId]",
"autoStart": "True",
"csvData": "False",
"data": {
"id": "[id]",
"name": "[name]",
"mobile": "[mobile]",
"landline": "[landline]",
"email": "[email]"
}
}
Upwire.Master.append(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Note: If "autoStart" is set to "True" the append service will check for a running masterJob, if none found a new masterJob will be started
Job Control
Pause Job
options = {
"jobNumber": "[master_job_number]",
}
Upwire.Control.pauseMaster(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Restart Job
options = {
"jobNumber": "[master_job_number]",
}
Upwire.Control.restartMaster(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Cancel Job
options = {
"jobNumber": "[master_job_number]",
}
Upwire.Control.cancelMaster(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Job Reporting
List Master Jobs
options = {
"limit": 1,
}
Upwire.Reporing.listMasterJobs(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Get Master Job
options = {
"jobnumber": "[master_job_number]"
}
Upwire.Reporing.getMasterJob(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Get Master Data
options = {
"jobnumber": "[master_job_number]"
}
Upwire.Reporing.getMasterData(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Get Master Stats
options = {
"jobnumber": "[master_job_number]"
}
Upwire.Reporing.getMasterStats(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Get SMS Job Stats
options = {
"jobnumber": "[sms_job_number]"
}
Upwire.Reporing.getSmsJobStats(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Get Voice Job Stats
options = {
"jobnumber": "[voice_job_number]"
}
Upwire.Reporing.getVoiceJobStats(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Get Voice Job Responses
options = {
"jobnumber": "[voice_job_number]"
}
Upwire.Reporing.getVoiceJobResponses(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Get Email Job Stats
options = {
"jobnumber": "[email_job_number]"
}
Upwire.Reporing.getVoiceJobResponses(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Admin
Docs: https://upwire.docs.apiary.io/#reference/sms-raw/admin/get-sub-jobs-stats-email
List Countries
Upwire.Reporing.listCountries()
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Get Country Capabilities
options = {
"country": "country"
}
Upwire.Reporing.getCountry(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})
Search Numbers
options = {
"numberType": "mobile",
"countryCode": "44",
"searchString": "447"
}
Upwire.Reporing.searchNumbers(options)
.then(function(value) {
console.log(value);
})
.catch(function(err) {
console.log(err);
})