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
- Threads and messages: write and read agent replies.
- Notifications: see who receives assignment notifications.
- Tools, SDK and errors: look up operations and errors.