Working with the tools of Talemo
On this page
Talemo is the record layer of a service business, and its tools go through the same product API as the web and the mobile app. Whatever the product enforces — rights of a role, rules of a branch, the check that a booking does not overlap — applies to a tool as well. A tool is never a way round a refusal.
Which business a call is for
A tool that works on the data of a business takes business_id.
- A business key on a computer (Claude Desktop and other programs) acts on
behalf of the person who created it, in one business only.
talemo_list_businessesnames that business, and its ID goes inbusiness_id. - A connection of Claude or ChatGPT acts with the rights of the person who
connected it, in the businesses they chose when connecting.
talemo_list_businessesnames those businesses; the ID of one of them goes inbusiness_id. The person changes the choice by connecting Talemo again. - A business that is not on the list is refused with
door.business_forbidden. A missing, revoked or expired key is refused withauth.required: the person creates a new key (see Connected programs and access keys).
talemo_list_businesses also shows each business with its open branches, the time
zone of every branch and the vertical of the business. The industry decides what
the business calls its masters, places and devices, so say these words to the person
as their industry does (see Industry kits).
Three tools need no business: talemo_ready says whether Talemo and its database are
answering, talemo_list_businesses names the businesses, and talemo_get_zone_currency
names the usual currency of a time zone — to ask the person about, never to set on
its own. The two tools of this guide need none either.
Showing a change before making it
Every tool that changes something takes dry_run. With it nothing changes, and the
answer is what the change would be — or the refusal it would get. Show the person
the preview, and make the real call after they agree.
A tool that changes a lot at once says so in its description. Never make its real
call before the person has seen its dry_run and said yes.
A refusal is an answer
A refused call comes back as a tool error with code, status, params and hint —
why it was refused and how to fix it. Most refusals are legitimate answers, not
failures: the product says what the state of the business allows. Tell the person, and
change the plan; do not retry the same call.
- Status 409 — the state forbids the call: a time already taken (
slot.overlap), a resource with bookings ahead (resource.has_bookings), a way to reach that belongs to another contact (contact.taken). The code andparamsname what to change. role.forbidden— the role of the person has no right for this;params.capabilitynames it. Tell the person; it is not something a tool can change.role.field_forbidden— a field of a card is closed to the role. Closed fields are missing from the answers, and sending one is refused.kit.required— the tool belongs to an industry kit that is not installed in this business;params.kitnames the kit. The tools of such a kit are not in the list for it.not_found— there is no such record, or the role sees only its own records and this one is not its.request.body_invalid— an argument is wrong;params.fieldnames it.auth.required— the connection is not allowed to do this. Where Talemo reserves a change for a person (knowledge, service languages, rights of the online admin), it means "the person does it in Talemo", and the connection is not broken.client.…and status 0 — the product did not answer as expected, or did not answer at all. This is not a verdict on the request: try again later.
When the balance runs out
A business pays for its work with money in dollars (see Low balance and blocks).
Status 402 with billing.blocked means the hard block, and any tool of a business
can give it: until a person tops the business up on the website of Talemo, nothing
of the tools of a business works but talemo_get_billing, and params.deletesAt
says when the business goes to the archive. talemo_ready,
talemo_list_businesses, talemo_get_zone_currency and both tools of the guide
work even then. Status 402 with billing.credits_exhausted is given not by any tool
but only by an operation that spends money on AI: it means the balance is down to
the reserve, AI stops in the business until a top-up, and the tools without AI keep
working. Neither is a failure. A tool cannot pay, so tell the person.
Reading this guide
talemo_find_guide_topics finds topics of the guide: pass query with the words
of a question or the name of a tool, module to list one folder, or nothing for the
contents. talemo_get_guide_topic reads one topic whole by its id, like
booking/visits.
Read the topic of a module before acting in it if you have not worked in it during
this conversation. Every tool description ends with its topic as Guide: folder/slug.
The same topics are public at talemo.app/docs.
The guide tells how Talemo works. What a business itself says to its clients — prices
it names, rules it keeps, its voice — is its knowledge, and it is found with
talemo_find_knowledge (see Searching the knowledge).