Skip to main content
A counsellor is a person in your Telleo account who takes human calls and works leads in the dashboard. With a key that has the counsellors:manage scope your HR system, CRM or onboarding tool can manage them directly: The API only ever manages counsellors. It never gives anyone another role, and it never changes an admin, a teacher or any other member of your staff: those requests fail with 403 counsellor_not_manageable. Manage them in the dashboard.

Adding a counsellor

What happens depends on whether the email already has a login on the platform:
  • mobile_number is needed before they can take calls on Vacademy Voice and Exotel: their phone rings first. Without one the response carries a mobile_number_missing warning and can_call is false. It is stored as digits with the country code (919876543210).
  • airtel_extension maps their Airtel IQ extension when your calling provider is Airtel. An extension can belong to one person in your account (409 extension_taken otherwise).
  • Send an Idempotency-Key so that a retried request never adds the person twice. Two requests for the same email at the same moment are handled one after the other; the second gets 409 request_in_progress and should retry. If a request was cut off after the login was created, retrying it returns the counsellor (created: false) and sets the mobile number it carried if none was saved.
  • GET /v1/counsellors/{id} shows a key with counsellors:manage the mobile_number, airtel_extension, manageable and shared_account. The mobile number is null when the login also belongs to another account (shared_account: true), and GET /v1/counsellors never includes phone numbers.

Keeping details current

Only the fields you send change. airtel_extension: null removes the mapping; a mobile number cannot be removed, only replaced.

Shared logins

A person’s email and mobile number are their login everywhere on the platform, not only in your account. When the login also belongs to another account (shared_account: true), changing the name or mobile number through your key would change them for that other account too, so it is refused with 409 shared_account. The counsellor can change them in their own profile. Their Airtel extension and whether they are active in your account can always be changed.

Deactivating

Deactivating is what you do when someone leaves or stops taking leads. It never deletes the person or their history, and it only touches your account: The response is the counsellor (status: "inactive") with an effects object:
Deactivating again is harmless: it reports nothing more to change. PATCH with {"active": false} does the same.

Reactivating

This restores their role, so they can sign in and take human calls again. Their lead pool memberships stay inactive and they are not put back into IVR lists, because the API cannot tell which of those an admin had switched off on purpose before. Turn them back on in the dashboard where they should take leads and inbound calls again; the response’s effects.note says so.

Errors