@ciptex/schedule-sdk
v0.3.2
Published
@ciptex/schedule-sdk
Downloads
418
Maintainers
Keywords
Readme
Race Schedule SDK
The schedule-api helper library lets you write Node.js code to make HTTP requests to the Ciptex Race Schedule API.
Do not use Basic Authentication in a front-end application. Doing so can expose your Twilio credentials to end-users as part of the bundled HTML/JavaScript sent to their browser.
Installation
The easiest way to install schedule-sdk is from NPM. You can run the command below from your project directory to install the library:
npm install --save @ciptex/schedule-sdk@latest
Then in your code:
import { ScheduleClient } from "@ciptex/schedule-sdk"
Testing your installation
Try Listing Configuration like this:
import { ScheduleClient, Schedule } from "@ciptex/schedule-sdk"
const accountSid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"; // Your Account SID from www.twilio.com/console
const authToken = "your_auth_token"; // Your Auth Token from www.twilio.com/console
const client = new ScheduleClient({ accountSid, authToken });
const main = async () => {
try {
const schedules: Schedule[] = await client.schedule.list();
console.log(schedules);
}
catch (error) {
console.error(error);
}
}
main()
It's okay to hardcode your credentials when testing locally, but you should use environment variables to keep them secret before committing any code or deploying to production. Check out How to Set Environment Variables for more information.
Using This Library
Authenticate Client
const accountSid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
const authToken = "your_auth_token";
const client = new ScheduleClient({ accountSid, authToken });
Create A New Record
import { ScheduleClient, Schedule } from "@ciptex/schedule-sdk"
const accountSid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
const authToken = "your_auth_token";
const client = new ScheduleClient({ accountSid, authToken });
const main = async () => {
try {
const schedule: Schedule = await client.schedule.create({
name: "Opening Hours",
weekly: [{
day: "mon",
startTime: "09:00",
endTime: "17:00"
}],
holiday: [{
startDate: "2021-03-09T00:00",
endDate: "2021-03-09T23:59",
message: {
sayMessage: "Hello World",
sayVoice: "Polly.Amy-Neural",
type: "say",
sayLanguage: "en-gb"
}
}]
});
console.log(schedule);
}
catch (error) {
console.error(error);
}
}
main()
Get Existing Record
import { ScheduleClient } from "@ciptex/schedule-sdk"
const accountSid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
const authToken = "your_auth_token";
const client = new ScheduleClient({ accountSid, authToken });
const main = async () => {
try {
//GET EXAMPLE HERE
}
catch (error) {
console.error(error);
}
}
main()
Handling Exceptions
If the Schedule API returns a 400 or a 500 level HTTP response, the schedule-sdk library will throw an error which can be caught. 400-level errors are normal during API operation ("Invalid number", "Cannot deliver SMS to that number", for example) and should be handled appropriately.
More Documentation
Once you're up and running with the schedule-sdk library, you'll find code samples using the latest version in our REST API docs