TuCloudAPI aichat
TuCloudAPI function to manage FuturePBX (the cloud PBX). Available to: SuperRoot, Operator, Client.
pbx parameter (the PBX name, e.g. tucall). The server verifies that your ukey's own account owns that PBX, whatever its role; otherwise, and also for a PBX that does not exist, it returns {"ok":false,"code":"forbidden"}.Description
AI assistant for this PBX (Spanish). Agentic loop over DeepSeek that uses a curated subset of this API's own endpoints as tools (each executed through the (ukey,pbx) tenant binding). READ tools auto-run; create/edit/delete are PROPOSED (needs_confirmation) and executed only on a confirm={tool,args} re-post. v1 non-streaming. POST the message (+ optional history/confirm).
Call
https://tucloudapi.7kas.com:9087/tucloud?func=aichat&ukey=YOUR_KEY&pbx=PBX_NAME
GET, or POST with the parameters form-urlencoded in the body. Requires the ukey parameter. Always HTTP 200; the response is a JSON envelope.
Parameters
| Parameter | Type | Required | Default | Meaning |
|---|---|---|---|---|
pbx |
string | Yes | — | FuturePBX name (tenant boundary; the assistant only touches this PBX). |
message |
string | Yes | — | The user's message (POST body). |
history |
string | No | — | JSON array of prior turns [{role,content}] (the client keeps state). |
confirm |
string | No | — | JSON {tool,args} of a proposed write the user has confirmed. |
Example
https://tucloudapi.7kas.com:9087/tucloud?func=aichat&ukey=KEY&pbx=tucall (message in POST body)
Response
{ok, text, tools_used:[{tool,ok,error?}], widgets:[{type:"simflow",data:{...simulatecall...}}], needs_confirmation:{tool,args,summary}|null, history:[...]}.
Errors
Always HTTP 200. On failure the body is {"ok":false,"code":"...","message":"..."}. Common codes: missing_pbx, forbidden, invalid_param, not_found, conflict, in_use, db_error, server_busy; the Response section above lists any specific to this function.
Back to TuCloudAPI