Skip to content

Consultation

Resource representing a consultation that belongs to a job.

The consultation resource represents a consultation that belongs to a job. It contains the consultation details, such as the job ID, the user who requested the consultation, the consultation status, the Client availabilities, and the Pro booked time. Consultations are added to a job via a questionnaire answer, or requested by the Pro with a Scope Change Request.


Consultation Properties

id

The ID of the consultation.

job_id

The ID of the job the consultation corresponds to.

status

The current status this consultation is in. A consultation goes through the following statuses throughout its lifetime:

  • PENDING_AVAILABILITY - A consultation job has been created from a questionnaire answer, and we're waiting on the Client to provide their availability.
  • PENDING_BOOKING - The Client has either provided their availability, or rescheduled. A consultation can go directly to this status if it was requested from a scope change, meaning it won't require the Client's availability.
  • PENDING_CALL - The Pro has selected an availability and both the Client and Pro are waiting for the call to start.
  • IN_PROGRESS - At least one call session has happened, that means at least 2 participants have joined the room.
  • DONE - The job has been closed as done, so the consultation is also completed.
  • CANCELLED - The consultation has been cancelled. Take a look at the cancel_reason property for more information.
requested_minutes

The duration of the consultation in minutes.

skip_scheduling

Indicates if the consultation requires availability to be provided.

client_user_id

The user ID of the Client who the consultation belongs to.

create_time

When the consultation was created.

complete_time

When the consultation was completed, if it was.

cancel_time

When the consultation was cancelled, if it was.

Cancel Reason

cancel_reason

The cancellation reason, if the consultation was cancelled. Most cancellations happen due to an action performed within the job that leads us to cancel the active consultation (preserving an audit trail), and immediately create a new consultation if needed. The possible reasons are:

  • JOB_CANCELLED - The job has been cancelled, so the active consultation will get cancelled as well.
  • JOB_TRANSFERRED_TO_NEW_PROVIDER - The job was transferred to a new provider.
  • JOB_TRANSFERRED_TO_POOL - The job was transferred back to the pool.
  • JOB_SCOPE_CHANGED - A scope changed that removed the active consultation occurred.
  • CONSULTATION_UNBOOKED - The Pro did not accept any of the consultation availabilities provided by the Client.
availabilities
array

An array containing all the historical availabilities submitted by the Client. See the Consultation Availability Properties section below for details.



Consultation Availability Properties

times
array

An array containing the interval times provided by the Client.

create_time

When the availability was created.

booked_interval_time

The interval time that was booked by the Pro. This property is only present if the Pro has booked a time, and the consultation requires availability to be provided.

booked_time

When the Pro booked the consultation, if it was booked.

booked_by_user_id

The user ID of the Pro who booked the consultation, if it was booked.



Interval Time Properties

start_time

Start time of the interval.

end_time

End time of the interval.

Copied
1{
2 "id": "31e2f238-6fdb-4249-b3d0-628c064f3713",
3 "job_id": "501f599b-aaae-45fb-99b9-dfcdcc868c50",
4 "status": "PENDING_BOOKING",
5 "requested_minutes": 30,
6 "skip_scheduling": false,
7 "availabilities": [
8 {
9 "times": [
10 {
11 "start_time": "2024-09-19T17:30:00Z",
12 "end_time": "2024-09-19T20:00:00Z"
13 }
14 ],
15 "create_time": "2024-09-12T14:42:45.983241Z",
16
17 //The Pro booked the consultation initially
18 "booked_interval_time": {
19 "start_time": "2024-09-19T19:30:00Z",
20 "end_time": "2024-09-19T20:00:00Z"
21 },
22 "booked_time": "2024-09-12T14:43:04.343542Z",
23 "booked_by_user_id": "ad8b0c76-9c48-5550-8e17-1badb3e7524a"
24 },
25
26 // The Client rescheduled the consultation and is waiting the Pro to book a new time again
27 {
28 "times": [
29 {
30 "start_time": "2024-09-19T15:30:00Z",
31 "end_time": "2024-09-19T20:00:00Z"
32 }
33 ],
34 "create_time": "2024-09-12T14:43:16.282599Z"
35 }
36 ],
37 "client_user_id": "26a9636c-7b78-5bb3-bc59-9045c9d851a6",
38 "create_time": "2024-09-11T18:23:45.069451Z",
39 "cancel_time": null,
40 "cancel_reason": null,
41 "complete_time": null
42}
Last updated on September 12, 2024