News from Planado team
The Planado API is a mechanism for managing jobs, objects, customers, and workers from other programs automatically. Typically, the IT department of the client company implements with the API one of the scenarios for automatic communication between the client software (CRM, 1С configuration, Helpdesk or a personal program) and Planado.
In case of need of many trips or if there is a task to minimise manual entry errors, you definitely have to get an integration, and it is often worth it.
The main possibilities offered by the Planado API are:
As a rule, the APIs of software products at best provide only this basic set of API capabilities, but there are problems with it. It is advisable for the client software to find out the moment when the remote worker has performed some actions in Planado. To do this, Planado has webhooks — these are events that send requests to your system if a remote worker has gone on a trip, has finished their job or even has pressed a button in the job. Webhooks are a mechanism for sending a request to the client software at the Planado initiative.
Webhooks using case 1: data synchronisation
A webhook is set on any modification of the data. In this case, after the changes have been made, an external request is made and the data will be sent before and after the changes. Thus, in the receiving webhook system, you can find out what changes have been made and update only the data that has been changed.
Webhooks using case 2: notifications
A webhook is set on the changes in the job status. With it, you can send notifications via your SMS gateway (and with your sender's alpha name) or via EMAIL to the client once the worker has started a trip to the client. It also allows you to send a questionnaire about the work performed after the job has been finished.
The webhooks mechanism allows you to avoid a technically time-consuming and poorly functioning integration scheme when you constantly get a large amount of data from two systems and analyse them for changes.
But while it is impossible to use webhooks for integration, Planado offers an opportunity to execute a request and to receive changes update over a certain period of time.
Planado developers went even further and implemented a mechanism for the guaranteed webhooks delivery. It often happens that when trying to send data from Planado to the client software, there is no connection or the data can not be received for some reason, e.g., work is being carried out on the server. In this case, Planado will be resending the data for quite a long time (more than a week) so that the data from Planado does not get lost and is uploaded to the client software with which the integration is implemented.
The main scenarios for the integration of Planado and the client software are:
1) Adding jobs from CRM (CRM is the client's software). The client leaves a request in CRM, the manager confirms it and creates the transaction, then transfers it to another state (stage). For example, it can be a "to be measured" state (a job is created in Planado based on the measurer’s trip template), a “to be mounted" state (a job is created using the installation work template), a “to be delivered" state (delivery template), etc. Once the job id finished, the data from Planado report is loaded into the CRM and the transaction goes to the next state automatically (“controlled" or “to be calculated”).
2) The client calls for technical support, a request is registered with the Helpdesk (Helpdesk is the client's software). After processing the application, the technical support employee understands that to solve the problem, you need to visit the client. He transfers the status of the application, for example, “to make a trip" and automatically creates a job with field work for Planado. After the job is finished, the data with the remote worker’s progress report is uploaded back to Planado and the status of the request is changed (for example, “work inspection" or “feedback").
There are more complex integration schemes:
3) Making sure that the data in the job report is filled in correctly by the remote worker. For example, if the "defect"option is selected, a “photo of the defect” must be taken and the “defect description” must be filled in. This inspection can be implemented with the help of a button field, upon clicking on which a request will be sent to your server. The receiving script will check and return the result. The result can be in form of a message that will be displayed to the remote worker in their mobile application, for example: "the data is filled out with an error, take a photo of the defect”.
4) In response to processing the job webhook, by means of the API you can display or hide fields, make fields editable and non-editable. Also, via the API you can add new fields to the job, even if these fields have never been in the job template. For example, by pressing the button-field in the job, one can make sure that the "kitchen TV" option is selected, after which the fields for selecting a TV set-top box in the kitchen are added to the job.
You can read more about all the innovations in the API documentation
Still not sure?