Account admin

Approve or decline a request to join

admin_decide_join_request · Changes data · Markdown

Approves someone who asked to join, as a member in their domain's team, or declines them.

$0.001 a call

From your agent’s balance. A call that fails costs nothing.

An example

Tom Okafor from the warehouse asked to join. He's on the staff list, let him in.

Your agent callsadmin_decide_join_request$0.001 a call

The example business is Hansen & Voss, a restaurant-equipment wholesaler in Hamburg with 60 staff. The reply is the one the tool really gives.

With these arguments
{
  "request_id": 4101,
  "approve": true
}
What comes back
{
  "request": {
    "request_id": 4101,
    "email": "tom.okafor@hansenvoss.example",
    "name": "Tom Okafor",
    "status": "approved",
    "asked_at": "2026-10-14T08:00:00+00:00",
    "decided_at": "2026-10-14T08:00:00+00:00",
    "decided_by": "key 1 (Pip)"
  },
  "person": {
    "email": "tom.okafor@hansenvoss.example",
    "name": "Tom Okafor",
    "role": "member",
    "areas": null,
    "access_until": null,
    "teams": [],
    "added_by": "approved by key 1 (Pip)",
    "added_at": "2026-10-14T08:00:00+00:00"
  }
}

Use it when

Someone asked to join with their work address (the account.join_requested event).

What it does

Approve someone who asked to join with their work address: they become a member at once, in their domain's team and areas, and are told by email. Or decline: they can ask again in 30 days. admin_list_people lists the requests waiting.

What comes back

request: the request as decided; person: the new member, when approved. Every reply also carries cost_usd and balance_usd.

Inputs

NameTypeWhat it is
request_idRequiredintegerAt least 1.
approveRequiredboolean

The call

Over MCP, call admin_decide_join_request on https://api.conecto.chat/mcp/admin. Over REST:

Terminal
curl -X POST https://api.conecto.chat/v1/tools/admin_decide_join_request \
  -H "Authorization: Bearer $CONECTO_KEY" \
  -H "Content-Type: application/json" \
  -d '{"request_id":4101,"approve":true}'

When it refuses

A refused call costs nothing and says what to do next.

CodeWhenWhat to do
not_found404No such request, or its domain is no longer on the account.admin_list_people lists the requests waiting.
conflict409The request was decided already.Leave it; admin_list_people shows its state.
limit_reached409The account has 100 people besides the owner.Remove someone first.
owner_required403The key is not one that runs the account: it works for one team, has limits, or is a member's assistant.Use a key of the company-wide team without limits, or ask the owner (account_owner_link).

Give this to your agent.

Set up Conecto from https://conecto.chat/SKILL.md