Welcome to the Acuity Scheduling JS SDK. This SDK provides examples and a standard library for integrating with the Acuity Scheduling API using JS. You can learn more about developing for Acuity Scheduling at developers.acuityscheduling.com.
This package can be installed for node using npm:
$ npm install --save acuityscheduling
Then require it in your app:
var Acuity = require('acuityscheduling');
Currently our API is only for server-side access and our SDK won't work on the client-side.
Here's a basic example to get started. Just set your API credentials and run:
var Acuity = require('acuityscheduling');
var userId = null;
var apiKey = null;
var acuity = Acuity.basic({
userId: userId,
apiKey: apiKey
});
acuity.request('/appointments', function (err, res, appointments) {
if (err) return console.error(err);
console.log(appointments);
});
You'll find several examples of different Acuity integrations in the examples/ directory. These examples cover:
Create a config file with your API credentials to get started. All examples
share a common config file containing your Acuity userId
and apiKey
for basic API access and verifying callbacks. OAuth2 examples require
additional OAuth2 client account credentials.
{
"userId": 1,
"apiKey": "abc123"
}
examples/basic/ is a basic API integration for a single account.
Start the example server by doing PORT=8000 node examples/basic/index.js
and navigate to 127.0.0.1:8000
examples/create-appointment/ is a more advanced API example for scheduling an appointment. In this example, you'll see how to:
- fetch appoinment types
- find an available date and time
- create the appointment
Start the example server by doing PORT=8000 node examples/create-appointment/index.js
and navigate to 127.0.0.1:8000
examples/oauth2/ is an OAuth2 API integration. Use this to get connected with multiple Acuity accounts.
Create a config file with your OAuth2 credentials to get started. If you don't have OAuth2 credentials, please fill out this registration form.
Start the example server by doing PORT=8000 node examples/oauth2/index.js
and navigate to 127.0.0.1:8000
{
"clientId": "N4HgVZbjHVp3HAkR",
"clientSecret": "H33vYz88sEiKVbl7EMob1URDrqZrvceSCMmZJpAi",
"redirectUri": "https://127.0.0.1:8000/oauth2"
}
examples/webhooks/ is a sample webhook integration.
Start the example server by doing PORT=8000 node examples/webhooks/index.js
and navigate to 127.0.0.1:8000
examples/custom-sidebar/ allows you to display custom information in the appointment details sidebar.
Start the example server by doing PORT=8000 node examples/custom-sidebar/index.js
and navigate to 127.0.0.1:8000