---
name: "account_save_team"
area: "account"
title: "Create or change a team"
price: "$0.001"
method: "POST"
url: "https://api.conecto.chat/v1/tools/account_save_team"
mcp_server: "https://api.conecto.chat/mcp/account"
auth: "Authorization: Bearer <conecto_sk_ key>"
docs_url: "https://conecto.chat/tools/account/account_save_team"
---

# Create or change a team (`account_save_team`)

Makes or changes a team: the areas its keys may use, a monthly budget that refuses or warns, and its ERP cost center code.

A department, location or project group of the account, like Support, Finance or the Hamburg shop. Its keys (POST /v1/keys with "team") can only work in its areas, only read when read_only is on, and spend against its budget (monthly_budget_usd per budget_period: a month, a fiscal quarter or year, or a project total): a hard budget refuses the call that would pass it, a soft one only warns. At alert_percent you get the event account.budget_alert and the owner an email, once a period. erp_code is the team's cost center in the company's ERP, for statements. drafts_only makes every write of its keys wait for one of its managers (or the owner), for a new bot that should only draft. mailboxes are the Microsoft 365 or Google mailboxes its keys may act as. You may make a team and narrow one; widening its areas, letting it write, ending drafts only, switching a hard budget to soft, and raising or removing a budget are the owner's, on their account page, when the account has an owner email. The company-wide team holds every key no other team does and is never limited to areas. $0.001.

Price: $0.001 a call. A call that fails costs nothing.

## Use it when

A department, location or project group should have its own agents, limited to its own areas and spending against a budget of its own.

## Say this to your agent

> Set up a Support team for the help desk and chat only, with a $200 monthly budget, and warn me at 80%.

## Inputs

| Name | Type | Required | Description | Allowed values | Default |
|---|---|---|---|---|---|
| `name` | string | yes | 1 to 80 characters. |  |  |
| `new_name` | string | no | Renames the team; its keys, spend and budget stay with it. 1 to 80 characters. |  |  |
| `areas` | array or null | no | The areas its keys may work in (account tools always); null for every area. Up to 50 items. |  |  |
| `read_only` | boolean | no |  |  |  |
| `monthly_budget_usd` | number or null | no | null counts the spend without a cap. 0 to 1,000,000. |  |  |
| `budget` | string | no | hard refuses calls past the budget; soft only warns. | `"hard"`, `"soft"` |  |
| `alert_percent` | integer | no | 1 to 100. |  |  |
| `erp_code` | string or null | no | Up to 40 characters. |  |  |
| `drafts_only` | boolean | no | Every write of its keys waits for a person. |  |  |
| `mailboxes` | array or null | no | The Microsoft 365 or Google mailboxes its keys may act as; null for every mailbox the connection lists. Up to 20 items. |  |  |
| `budget_period` | string | no | What the budget is for: a month, a quarter or a year of the account's fiscal calendar, or a project total until budget_ends_on. | `"month"`, `"quarter"`, `"year"`, `"project"` |  |
| `budget_ends_on` | string or null | no | The last day of a project budget, like 2026-12-31. |  |  |
| `sees_sensitive` | boolean | no | false hides suppliers' bank details and HR notes and contracts from its keys; only the owner turns it on. |  |  |

## Example

Written for Hansen & Voss, a restaurant-equipment wholesaler in Hamburg with 60 staff.

MCP: call `account_save_team` on the MCP server `https://api.conecto.chat/mcp/account` with these arguments:

```json
{
  "name": "Support",
  "areas": [
    "helpdesk",
    "chat"
  ],
  "monthly_budget_usd": 200,
  "budget": "hard",
  "alert_percent": 80,
  "erp_code": "KST-4100"
}
```

REST:

```bash
curl https://api.conecto.chat/v1/tools/account_save_team \
  -H "Authorization: Bearer $CONECTO_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name": "Support", "areas": ["helpdesk", "chat"], "monthly_budget_usd": 200, "budget": "hard", "alert_percent": 80, "erp_code": "KST-4100"}'
```

## Response

```json
{
  "call_id": "5f0c8a2e-3b7d-4c1e-9a64-2d8e1f7b0c93",
  "tool": "account_save_team",
  "status": "succeeded",
  "replayed": false,
  "cost_usd": "$0.001",
  "balance_usd": "$19.75",
  "result": {
    "team": {
      "team_id": 4102,
      "name": "Support",
      "company_wide": false,
      "areas": [
        "chat",
        "helpdesk"
      ],
      "read_only": false,
      "drafts_only": false,
      "sees_sensitive": false,
      "idp_groups": null,
      "mailboxes": null,
      "monthly_budget_usd": "$200.00",
      "budget_usd": "$200.00",
      "budget_period": "month",
      "budget_ends_on": null,
      "raise": null,
      "budget": "hard",
      "alert_percent": 80,
      "spent_this_period_usd": "$0.00",
      "spent_this_month_usd": "$0.00",
      "erp_code": "KST-4100",
      "paused": false,
      "paused_at": null,
      "keys": [
        {
          "key_id": 4102,
          "bot_name": "Support bot"
        }
      ],
      "people": []
    },
    "created": false
  }
}
```

`result`: team: its id, name, areas, whether it only reads, monthly budget (hard or soft), alert percent, this month's spend, ERP code, whether it is paused, and its keys; created.

## Errors

| Code | Status | When | Fix |
|---|---|---|---|
| `owner_required` | 403 | The team would widen, start writing, or get a softer, higher or no budget, which is the owner's when the account has an owner email. | Ask the owner to change it on their account page. |
| `name_taken` | 409 | Another team already has the new name. | Pick another name. |
| `invalid_input` | 400 | An area doesn't exist, or the company-wide team was given areas. | Use names from GET /v1/areas; the company-wide team always works in every area. |

The refusals every tool can give (401 key, 402 balance, 429 limits) are on the errors page: https://conecto.chat/docs/errors.md

## Related

- [account_balance](https://conecto.chat/tools/account/account_balance.md): The balance, this key's daily budget, auto-reload, and how much of the month's free reads and downloads is used. Free.
- [account_refund_topup](https://conecto.chat/tools/account/account_refund_topup.md): Refunds a top-up from the last 24 hours that none of has been used: the credit, with its tax, goes back to the card, and the service fee is kept. Free.
- [account_owner_link](https://conecto.chat/tools/account/account_owner_link.md): A one-time link that signs the business owner into their Conecto page, without a password. Free.
- [account_get_limits](https://conecto.chat/tools/account/account_get_limits.md): The limits Conecto raises on request, each with its standard and current value, and the business's requests with their answers. Free.
- [account_request_limit](https://conecto.chat/tools/account/account_request_limit.md): Ask Conecto to raise a limit: which one, the number the business needs, and why. Free.
- [account_events](https://conecto.chat/tools/account/account_events.md): What happened lately, oldest first: applications, bookings, form responses, signatures, replies, emails, website goals and the agents' own events. Free up to 1,000,000 reads a month.
- [account_emit_event](https://conecto.chat/tools/account/account_emit_event.md): Sends an event the agent names, custom.<name>, to the channels subscribed to it and to account_events. $0.005 per channel it goes to.
- [account_search](https://conecto.chat/tools/account/account_search.md): One search across the business's files, table rows, help articles, CRM, emails, tickets, invoices, books, stock and tasks. Free up to 1,000,000 reads a month.
- [account_list_calls](https://conecto.chat/tools/account/account_list_calls.md): The business's recent calls, newest first, optionally only the failed or the succeeded ones, or one area's. Free.
- [account_dashboard_link](https://conecto.chat/tools/account/account_dashboard_link.md): A one-time link to a page showing one area at a glance, made when it opens from what this key may read. Free up to 1,000,000 reads a month.
- [account_get_call](https://conecto.chat/tools/account/account_get_call.md): One call by its call_id, with its status, cost and result. Free.
- [account_get_brand](https://conecto.chat/tools/account/account_get_brand.md): The name, logo, colour and footer line the business's emails and published pages carry. Free up to 1,000,000 reads a month.
- [account_set_brand](https://conecto.chat/tools/account/account_set_brand.md): Sets the sender name, logo, colour and footer on every email to customers and on the business's published pages. $0.001 a call.
- [account_list_email_templates](https://conecto.chat/tools/account/account_list_email_templates.md): Every automatic email to the business's customers, with its subject, headline, opening words and {variables}. Free up to 1,000,000 reads a month.
- [account_set_email_template](https://conecto.chat/tools/account/account_set_email_template.md): Rewrites an email's subject, headline or opening words in the business's voice; the times, amounts and links below them stay. $0.001 a call.
- [account_export_all](https://conecto.chat/tools/account/account_export_all.md): Everything the account holds, as ZIP files in its file store: every record as JSON Lines and the stored files, credentials left out. Free.
- [account_audit_log](https://conecto.chat/tools/account/account_audit_log.md): The account's admin and security actions, newest first, with a check that none was changed or removed. Free up to 1,000,000 reads a month.
- [account_list_teams](https://conecto.chat/tools/account/account_list_teams.md): The account's teams with their areas, budgets, this month's spend, ERP codes, keys and people. Free up to 1,000,000 reads a month.
- [account_pause_team](https://conecto.chat/tools/account/account_pause_team.md): Stops every key of a team at once, until the owner starts it again. Free.
- [account_assign_team](https://conecto.chat/tools/account/account_assign_team.md): Gives a form, a number, an inbox or another thing to a team, so its charges land there. $0.001 a call.
- [account_set_owner_email](https://conecto.chat/tools/account/account_set_owner_email.md): Sends the business's owner a link to confirm they own the account, when it has no owner email yet. Free.
- [account_add_approval_rule](https://conecto.chat/tools/account/account_add_approval_rule.md): Makes a tool wait for a person's approval: every call, or calls over a limit, approved by an email, a channel or a team's managers. $0.001 a call.
- [account_list_approval_rules](https://conecto.chat/tools/account/account_list_approval_rules.md): The tools that wait for a person's approval, with their thresholds and approvers. Free up to 1,000,000 reads a month.
- [account_find_person](https://conecto.chat/tools/account/account_find_person.md): Every record the account holds about one person, by email or phone, with each kind's count and ids. Free.
- [account_export_person](https://conecto.chat/tools/account/account_export_person.md): One person's records and files in one ZIP in the file store, with a download link to give them. Free.
- [account_erase_person](https://conecto.chat/tools/account/account_erase_person.md): Erases one person across every area and says what it kept and why, like invoices the law keeps. Free.
- [account_data_locations](https://conecto.chat/tools/account/account_data_locations.md): Where each area's data is stored and processed: the company, the country or region, and what it holds. Free up to 1,000,000 reads a month.
