Resellers and franchisors: How to roll out multiple customer accounts & companies using API
To deploy a large number of companies, you can use our API with external data contained in a CSV file. This file must contain settings values (companies, staff members, services, scheduling process, widget form...). This method will let you deploy hundreds of companies in one set of actions.
JSON requests
Postman application let you use external data in API calls. Mandatory requests to create accounts and settings are:
- Account creation : PUT http://api.agendize.com/api/2.0/resellers/accounts
- Account settings : PUT http://api.agendize.com/api/2.0/accounts
- Company creation : POST http://api.agendize.com/api/2.1/scheduling/companies
- Company settings : PUT http://api.agendize.com/api/2.1/scheduling/companies/{{companyId}}/settings
- Staff member creation : PUT https://api.agendize.com/api/2.0/scheduling/companies/{{companyId}}/staff
- Service creation : PUT https://api.agendize.com/api/2.1/scheduling/companies/{{companyId}}/services
Other API requests can complete the settings:
- Settings or the scheduling widget form: POST http://api.agendize.com/api/2.1/scheduling/widgetForms
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:
* indicates mandatory fields.
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 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.
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article