Skip to content

Agents

Understand reply profiles, account bindings, assignments, and deactivation.

An agent profile supplies the name, job title, and avatar shown beside a Support reply. It belongs to one product. Creating a profile does not grant access: permissions come from the identity calling the API.

The profile

Field
What it holds
displayName
Required reply name, up to 255 characters
title
Optional job title, such as “Support engineer”; null when unset
avatarUrl
Optional absolute image URL, up to 2048 characters; null when unset
lesslyUserId
Bound Lepsto identity, or null for an unbound profile
isActive
true until the profile is deactivated

Support sets id, createdAt, and updatedAt. Profiles have no signature block, role, or permission field.

Create, read and edit a profile

support_agent_create creates a profile with displayName and any optional fields you supply.

support_agent_list lists profiles by display name. Set includeInactive to include deactivated profiles. support_agent_get reads a profile by id, including inactive ones, so you can still render the authors of older messages. An id from another product returns not found.

support_agent_update changes the fields you send. Omitted fields stay unchanged; an explicit null clears a nullable field. For example, {"title": null} removes the job title and {"lesslyUserId": null} removes the account binding.

Bind a Lepsto account, or do not

Set lesslyUserId for a person who signs in to the Workspace app and answers as this profile. Leave it unset for a bot or backend. An unbound profile can receive assignments and write messages, but cannot receive personal workspace notifications. See Notifications.

Support stores the binding as an opaque string without checking the account or loading its details. A Lepsto identity can be bound to at most one profile per product; creating or updating a second binding returns a conflict. Any number of profiles can remain unbound.

The public HTTP API omits lesslyUserId from every profile. It does not return null, because that would identify the profile as unbound and eligible to author public-API messages. Read the profile through MCP or the generated SDK when you need its binding. See Public HTTP API.

Assign a thread

support_thread_assign assigns one agent to a thread. Replace both abbreviated ids with the thread and agent ids returned by your calls:

{ "id": "b50f26b4…", "agentId": "13c893aa…" }

The agent must be active and belong to the same product. An inactive agent is rejected; an agent from another product returns not found.

Set agentId to null to return the thread to the unassigned queue, including when its current agent has been deactivated. New threads start unassigned. Support has no automatic assignment, round-robin routing, or load balancing.

Deactivate instead of deleting

Set isActive to false through support_agent_update to deactivate a profile, or to true to reactivate it. There is no agent delete operation.

Deactivation prevents new assignments. It preserves the profile, its messages, and its existing assignments, and still allows it to author messages. For example, a backend can finish a conversation using a retired bot profile. Deactivation does not anonymize the author.

Where to go next

Was this page helpful?
Esc

Start typing to search the docs.

↑↓navigate↵select