Reseller: How to roll out multiple customer accounts & companies via API

To deploy a great number of companies, you can use our API with external data in a CSV file. This file must contain settings values (companies, staff members, services, scheduling process, widget form...). This method let you deploy hundreds companies in one action.


JSON requests

Postman application let you use external data in API calls. Mandatory requests to create accounts and settings are:


More other API request could complete the settings :


If you have just one account and you are not an Agendize reseller, do not use the Account creation and account settings requests, just begin with company creation request.



External Data File

Data file to push values in API request must be UTF-8 encoded and have a CSV or JSON extension.

In Postman, insert a value from the data file with this syntax: "settings" : "{{columnHeader}}". See in the JSON and CSV fils attached to this knowledge article.


Fields explanation ?

Filds with * are mandatory.


Fields name

Explanations

account.firstName, account.lastName, account.email*, account.name, account.lang, account.timeZone, pdfExportSize, defaultView

General informations about the account (reseller client)

Firstname and lastname are not mandatory, email address*, language, time zone, PDF export size, default view of the calendar (daily, weekly, monthly)

company.name*, company.email, company.phone, company.street, company.street2, company.zip, company.city, company.country, currency,company.externalId

Company : Name*, email address, phone number, address line 1, address line 2, Zip code, City, Country, currency, external identifier

service1.name*, service1.description, service1.duration*, service1.capacity, service1.available, service1.extId

Informations about services :

title*, description, duration in minutes*, same time appointments (1 par défaut), service available or not,external ID

staff1.firstName, staff1.lastName*, staff1.gender, staff1.email, staff1.tel, staff1.tel2, staff1.desc

Staff member informations :

firstname, lastname*, gender, email address, phone numbers 1 and 2, description

staff1.monStartAm, staff1.monEndAm, staff1.monStartPm, staff1.monEndPm, staff1.tueStartAm, staff1.tueEndAm, staff1.tueStartPm, staff1.tueEndPm, staff1.wedStartAm, staff1.wedEndAm, staff1.wedStartPm, staff1.wedEndPm, staff1.thuStartAm, staff1.thuEndAm, staff1.thuStartPm, staff1.thuEndPm, staff1.friStartAm, staff1.friEndAm, staff1.friStartPm, staff1.friEndPm, staff1.samStartAm, staff1.samEndAm, staff1.samStartPm, staff1.samEndPm

Working hours of the staff member (that are used to calculate the staff member availabilities for in the scheduling widget):

staff member 1 monday beginning of the morning slot (staff1.monStartAm), monday, end of the morning slot (staff1.monEndAm)...

It's possible to add more slots each day, add or remove a day (add sunday and remove monday for example).

staff1.service1, staff1.service2, staff1.service3, staff1.service4, staff1.service5, staff1.service6, staff1.service7, staff1.service8

Is the staff member available for the service?  “true” or “false”

staff1.available, staff1.extId

Is the staff member available to receive appointments in the online scheduling widget? (“true” ou “false”). External ID of the staff member


Authentication

For authentication, you  need the apiKey of your Reseller account.

To create a client account and configure it, you need the SSO token your your Reseller account.

For other requests on client account, use the Reseller apiKey and the client SSO token.

More information in https://developers.agendize.com/v2/platform/reference/authentication.jsp


Attached files

Some example files with JSON requests and a CSV template file to help you creating an external data file.