Menu

Referência da API · Tarefas

Tarefas

task_management · tasks · 12 operações

GET/v1/tasks

List tasks

task_management.tasks.list

LeituraIdempotenteDesde 2026-11-01

Lists the organization's top-level tasks, newest first (sort created_desc) or by due date (sort due_asc, only tasks with a due date), paginated by cursor (limit up to 200, default 25). Filters: status (open by default, done or all), query (words of the title, in any order), assignee_id, account_id, project_id, label_id, due_before/dueAfter (ms). Pass parent_task_id to list the subtasks of one task instead (all statuses by default, in creation order). With include_subtasks true the list also brings the subtasks that match the same filters, as rows of their own in the same order (each with parent_task_id and parent_title, null when the parent no longer exists), and every top-level task of the page carries subtask_count and open_subtask_count (subtasks not done yet). Filters apply to each row's own fields: an open subtask of a task already done is listed with status open, and a subtask created in the app may have no account_id or project_id of its own. Members of a workspace and viewers only get the tasks assigned to them, as in the app; private tasks only appear to their creator and assignee, and a subtask appears exactly when its parent does. Every row has the same fields (null, 0 or [] when empty), the assignee's and the creator's names (assignee_name, created_by_name) and no photos. With project_id or label_id the whole set of that project or label is read and sorted (up to 1000 tasks; past that, as below). Otherwise what the query cannot filter (subtasks and other people's private tasks, query, and the due date range when sorting by creation) runs on what is read, and the page is filled by reading on, up to 1000 tasks per call: only then a page can bring fewer than limit while has_more is true, so follow next_cursor. The tasks of an Account live in the workspace: call it on the workspace with account_id (with the Account's org_id it lists the tasks stored in that Account itself, usually none, and an empty first page says so in hint). Ceiling: 2216 reads per call (what is read to fill the page, plus with include_subtasks one read per parent of a subtask that did not come in the page and the subtask counts, plus one per person whose name the task does not store), never the whole collection.

Escopo
task_management:read
Permissão
Ver o módulo
Tool do MCP
task_management_tasks_listNa superfície completa; na compacta, mb_execute_operation com id: "task_management.tasks.list".

Custo declarado: até 2216 leituras e 0 escritas por chamada (contam na cota diária).

Parâmetros

limitintegerqueryopcional

Rows per page (1 to 200; default 25).

Padrão: 25

cursorstringqueryopcional

The next_cursor of the previous page, to continue the list; omit it for the first page.

statusenumqueryopcional

open (default), done or all; with parent_task_id the default is all.

Valores: open, done, all

querystringqueryopcional

Words of the title, in any order (each one the start of a word; case, accents and signs do not matter).

assignee_idstringqueryopcional

Only the tasks assigned to this person: the uid of a member of the organization (members.members.list).

account_idstringqueryopcional

Only the tasks of this Account. An Account (client organization) of this workspace, from platform.orgs.list or child_orgs.accounts.list_with_sources.

project_idstringqueryopcional

Only the tasks of this project. A project of this organization, from projects.projects.list.

label_idstringqueryopcional

Only the tasks with this label (task_management.labels.list).

parent_task_idstringqueryopcional

List the subtasks of this task instead. The task's id (from task_management.tasks.list, or the task_id that tasks.create returns).

sortenumqueryopcional

created_desc (newest first, default) or due_asc (by due date; only tasks with one).

Valores: created_desc, due_asc · Padrão: "created_desc"

due_beforeintegerqueryopcional

Only tasks due on or before this date, epoch ms.

due_afterintegerqueryopcional

Only tasks due on or after this date, epoch ms.

include_subtasksbooleanqueryopcional

Also list the subtasks that match, as rows of their own, and count the subtasks of each top-level task.

Padrão: false

Resposta

dataarray<object>
has_moreboolean
next_cursorstring
hintstring

Only on an empty first page called with the org_id of an Account whose tasks live in the workspace: the call that lists them.

Erros

Exemplo

curl "https://api.mb-suite.com/v1/tasks" \
  -H "Authorization: Bearer $MB_API_KEY"

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl "https://api.mb-suite.com/v1/tasks" \
  -H "Authorization: Bearer $MB_TEST_KEY"
GET/v1/tasks/count

Count the tasks completed or created in a period

task_management.tasks.count

LeituraIdempotenteDesde 2026-11-01

Counts the organization's top-level tasks completed (by: completed, the default) or created (by: created) between from and to (epoch ms, both inclusive). With by created, status open, done or all (default) filters by their current state. Filters: assignee_id and account_id. It counts the same tasks task_management.tasks.list shows without subtasks: members of a workspace and viewers only count the tasks assigned to them, and private tasks only count for their creator and assignee. Use it to compare periods (this month against the previous one: two calls). Subtasks are not counted. It reads the tasks of the period, up to 5000 of them counting subtasks and other people's private tasks (which it reads but does not count): with more, truncated is true and count is a minimum, so a truncated count can be well below 5000; narrow the period (or use assignee_id or account_id) to get the exact number.

Escopo
task_management:read
Permissão
Ver o módulo
Tool do MCP
task_management_tasks_countNa superfície completa; na compacta, mb_execute_operation com id: "task_management.tasks.count".

Custo declarado: até 5001 leituras e 0 escritas por chamada (contam na cota diária).

Parâmetros

fromintegerqueryobrigatório

Start of the period, epoch ms (inclusive).

tointegerqueryobrigatório

End of the period, epoch ms (inclusive).

byenumqueryopcional

completed (default): tasks completed in the period; created: tasks created in it.

Valores: completed, created · Padrão: "completed"

statusenumqueryopcional

With by created: open, done or all (default). With by completed they are always the completed ones.

Valores: open, done, all · Padrão: "all"

assignee_idstringqueryopcional

Only the tasks assigned to this person: the uid of a member of the organization (members.members.list).

account_idstringqueryopcional

Only the tasks of this Account of the workspace (platform.orgs.list).

Resposta

countinteger
byenum

Valores: completed, created

fromnumber
tonumber
truncatedboolean

Erros

Exemplo

curl "https://api.mb-suite.com/v1/tasks/count?from=0&to=0" \
  -H "Authorization: Bearer $MB_API_KEY"

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl "https://api.mb-suite.com/v1/tasks/count?from=0&to=0" \
  -H "Authorization: Bearer $MB_TEST_KEY"
GET/v1/tasks/{task_id}

Get one task

task_management.tasks.get

LeituraIdempotenteDesde 2026-11-01

Returns a task with its status, priority, assignee, dates, recurrence, scope (account, private), project link, labels, attachments metadata and comment count. Subtasks are tasks too (parent_task_id). Not found if the id does not exist, the task is private to someone else, or the caller's role only sees their own tasks.

Escopo
task_management:read
Permissão
Ver o módulo
Tool do MCP
task_management_tasks_getNa superfície completa; na compacta, mb_execute_operation com id: "task_management.tasks.get".

Custo declarado: até 3 leituras e 0 escritas por chamada (contam na cota diária).

Parâmetros

task_idstringrotaobrigatório

The task's id (from task_management.tasks.list, or the task_id that tasks.create returns).

Resposta

idstring
titlestring
descriptionstring | null

HTML or plain text; null when the task has none.

status_idstring

One of task_management.config.get statuses.

priority_idstring | null
is_doneboolean

true when the status is of the DONE category.

completed_atnumber | null
assignee_idstring | null
assignee_namestring | null
created_by_idstring | null
created_by_namestring | null

The name of the person who created the task (null for one created by the system).

reporter_idstring | null
watcher_idsarray<string>
alert_user_idsarray<string>
account_idstring | null

The Account of the workspace the task is about (null: the workspace itself).

is_privateboolean

Only its creator and its assignee see it.

due_datenumber | null
start_datenumber | null
recurrenceobject | null
series_idstring | null

The series a recurring task belongs to (every instance shares it).

parent_task_idstring | null

The parent task of a subtask (null for a top-level task).

project_idstring | null
item_idstring | null
tagsarray<string>
label_idsarray<string>
attachmentsarray<object>
comment_countnumber
ordernumber | null
created_atnumber
updated_atnumber

Erros

Exemplo

curl "https://api.mb-suite.com/v1/tasks/{task_id}" \
  -H "Authorization: Bearer $MB_API_KEY"

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl "https://api.mb-suite.com/v1/tasks/{task_id}" \
  -H "Authorization: Bearer $MB_TEST_KEY"
POST/v1/tasks

Create a task

task_management.tasks.create

EscritaDesde 2026-11-01

Creates a task in the organization: title, description (HTML or text), status and priority (ids from task_management.config.get; defaults: the first open status and medium), assignee (a member; without it the task is the caller's, null leaves it unassigned), due and start dates (ms), labels, people to alert by email when it is completed (alert_user_ids), watchers, tags, recurrence, an Account of the workspace (account_id) or private (only the creator and the assignee see it), and a project/item link. Pass parent_task_id to create a subtask: it inherits the parent's scope (the subtask of a private task is private too, and appears exactly when its parent does) and project. Returns the new task.

Escopo
task_management:write
Permissão
Editar no módulo
Tool do MCP
task_management_tasks_createNa superfície completa; na compacta, mb_execute_operation com id: "task_management.tasks.create".
Eventos que pode emitir
task_management.task.created

Custo declarado: até 60 leituras e 2 escritas por chamada (contam na cota diária).

Parâmetros

titlestringcorpoobrigatório

The task's title (up to 500 characters).

descriptionstringcorpoopcional

HTML or plain text.

status_idstringcorpoopcional

Its status; default: the organization's first open status (an id from task_management.config.get statuses).

priority_idstring | nullcorpoopcional
assignee_idstring | nullcorpoopcional
due_dateinteger | nullcorpoopcional
start_dateinteger | nullcorpoopcional
account_idstring | nullcorpoopcional
is_privatebooleancorpoopcional

Only its creator and its assignee see it.

label_idsarray<string>corpoopcional

Task label ids (from task_management.labels.list); ids that do not exist are ignored.

alert_user_idsarray<string>corpoopcional

People who get an email when the task is completed: uids of members of the organization (members.members.list).

watcher_idsarray<string>corpoopcional

People who follow the task: uids of members of the organization (members.members.list).

tagsarray<string>corpoopcional

Free-text tags (up to 50, 64 characters each).

project_idstring | nullcorpoopcional
item_idstring | nullcorpoopcional
parent_task_idstringcorpoopcional

Creates a subtask of this top-level task (it inherits its scope and project). The task's id (from task_management.tasks.list, or the task_id that tasks.create returns).

recurrenceobject | nullcorpoopcional

Resposta

task_idstring
taskobject

Erros

Exemplo

curl -X POST "https://api.mb-suite.com/v1/tasks" \
  -H "Authorization: Bearer $MB_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "title": "TITLE"
}'

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl -X POST "https://api.mb-suite.com/v1/tasks" \
  -H "Authorization: Bearer $MB_TEST_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "title": "TITLE"
}'
PATCH/v1/tasks/{task_id}

Update a task

task_management.tasks.update

EscritaDesde 2026-11-01

Updates one or more fields of a task: title, description, status, priority, assignee (null unassigns), due and start dates (null clears), labels, alert_user_ids, watchers, tags, recurrence (null removes it), project/item link and order. Moving the task to a DONE status completes it exactly like task_management.tasks.complete (next instance of a recurring task, email to alert_user_ids); its scope (account, private) changes only with task_management.tasks.change_scope. Reassigning a private task also updates its subtasks, which stay private to the people of the task. Unknown fields are rejected. Returns the updated task and changed; when the edit completed it, completed true and, for a recurring task, next_task_id (the next instance), as complete does.

Escopo
task_management:write
Permissão
Editar no módulo
Tool do MCP
task_management_tasks_updateNa superfície completa; na compacta, mb_execute_operation com id: "task_management.tasks.update".

Custo declarado: até 160 leituras e 102 escritas por chamada (contam na cota diária).

Parâmetros

task_idstringrotaobrigatório

The task's id (from task_management.tasks.list, or the task_id that tasks.create returns).

updatesobjectcorpoobrigatório

The fields to change (at least one).

Resposta

taskobject
changedboolean

false when the call changed nothing (everything already was as sent).

completedtrue

Present when this edit completed the task (a DONE status).

next_task_idstring

The next instance a recurring task got when this edit completed it: tell the person.

Erros

Exemplo

curl -X PATCH "https://api.mb-suite.com/v1/tasks/{task_id}" \
  -H "Authorization: Bearer $MB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "updates": {}
}'

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl -X PATCH "https://api.mb-suite.com/v1/tasks/{task_id}" \
  -H "Authorization: Bearer $MB_TEST_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "updates": {}
}'
POST/v1/tasks/{task_id}/complete

Complete a task

task_management.tasks.complete

EscritaIdempotenteDesde 2026-11-01

Marks a task as done with a DONE-category status (status_id, default status_done). If the task is recurring, its next instance comes back as next_task_id: created now with its subtasks reset (task_management.task.created fires for it), or, when the series already has the instance for that date (the task was completed, reopened and completed again), that same one, which is never duplicated; if it has alert_user_ids, each of those members gets an email in their language saying who completed it. Idempotent: completing a task that is already done changes nothing and sends nothing (changed: false).

Instruções para agentes

Tell the person the next instance of a recurring task (next_task_id; when it already existed it is the same one, not a new copy) and that the alert emails went out, if the task had people to alert.

Escopo
task_management:write
Permissão
Editar no módulo
Tool do MCP
task_management_tasks_completeNa superfície completa; na compacta, mb_execute_operation com id: "task_management.tasks.complete".

Custo declarado: até 60 leituras e 52 escritas por chamada (contam na cota diária).

Parâmetros

task_idstringrotaobrigatório

The task's id (from task_management.tasks.list, or the task_id that tasks.create returns).

status_idstringcorpoopcional

A status of the DONE category; default status_done, or the first DONE one (an id from task_management.config.get statuses).

Resposta

taskobject
changedboolean
next_task_idstring

Erros

Exemplo

curl -X POST "https://api.mb-suite.com/v1/tasks/{task_id}/complete" \
  -H "Authorization: Bearer $MB_API_KEY"

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl -X POST "https://api.mb-suite.com/v1/tasks/{task_id}/complete" \
  -H "Authorization: Bearer $MB_TEST_KEY"
POST/v1/tasks/{task_id}/reopen

Reopen a task

task_management.tasks.reopen

EscritaIdempotenteDesde 2026-11-01

Moves a task back to an OPEN-category status (status_id, default status_todo) and clears its completion date. It does not delete the next instance a recurring task already created: completing the task again returns that instance instead of creating another one. Idempotent: a task already open in that status changes nothing (changed: false).

Escopo
task_management:write
Permissão
Editar no módulo
Tool do MCP
task_management_tasks_reopenNa superfície completa; na compacta, mb_execute_operation com id: "task_management.tasks.reopen".
Eventos que pode emitir
task_management.task.updated

Custo declarado: até 3 leituras e 1 escritas por chamada (contam na cota diária).

Parâmetros

task_idstringrotaobrigatório

The task's id (from task_management.tasks.list, or the task_id that tasks.create returns).

status_idstringcorpoopcional

A status of the OPEN category; default status_todo, or the first OPEN one (an id from task_management.config.get statuses).

Resposta

taskobject
changedboolean

Erros

Exemplo

curl -X POST "https://api.mb-suite.com/v1/tasks/{task_id}/reopen" \
  -H "Authorization: Bearer $MB_API_KEY"

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl -X POST "https://api.mb-suite.com/v1/tasks/{task_id}/reopen" \
  -H "Authorization: Bearer $MB_TEST_KEY"
DELETE/v1/tasks/{task_id}

Delete a task

task_management.tasks.delete

IrreversívelDesde 2026-11-01

Deletes a task together with its subtasks (the app deletes the same way). Everything goes to the 30-day trash, where an owner or admin can restore it (platform.trash.restore); comments stay attached and come back with the task. Attachments are kept for the restore. Outside the app it needs a dry run and a confirm_token, except a REST DELETE with a key allowed to delete.

Com uma API key, este DELETE roda direto: o registro fica 30 dias na lixeira e a resposta traz o seu trash_item_id. Com um token OAuth, e pelo MCP, pede dry_run → confirm_token.

Escopo
task_management:write e «Permitir exclusões» (task_management:delete no OAuth)
Permissão
Editar no módulo
Tool do MCP
task_management_tasks_deleteNa superfície completa; na compacta, mb_execute_operation com id: "task_management.tasks.delete".
Eventos que pode emitir
task_management.task.deleted

Custo declarado: até 103 leituras e 101 escritas por chamada (contam na cota diária).

Parâmetros

task_idstringrotaobrigatório

The task's id (from task_management.tasks.list, or the task_id that tasks.create returns).

Resposta

oktrue
trash_item_idstring

The trash item this deletion left: the item_id of platform.trash.restore (POST /trash/{item_id}/restore). Missing if nothing went to the trash.

trash_item_idsarray<string>

Only when the deletion left more than one copy: all of them, the first being trash_item_id.

trash_expires_atnumber

When the copy leaves the trash for good (epoch ms): 30 days after the deletion.

Erros

Exemplo

curl -X DELETE "https://api.mb-suite.com/v1/tasks/{task_id}" \
  -H "Authorization: Bearer $MB_API_KEY"

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl -X DELETE "https://api.mb-suite.com/v1/tasks/{task_id}" \
  -H "Authorization: Bearer $MB_TEST_KEY"
POST/v1/tasks/bulk/delete

Delete many tasks

task_management.tasks.bulk.delete

IrreversívelEm massa · até 200Desde 2026-11-01

Deletes up to 200 tasks with their subtasks; each one goes to the 30-day trash and can be restored on its own. Ids that do not exist or that the caller cannot see are skipped and returned in not_found. Outside the app it requires a dry run (which lists what will be deleted) and a confirm_token.

Pede confirmação: primeiro dry_run: true (prévia e confirm_token, válido por 10 minutos e por uma única execução), depois o mesmo corpo com confirm_token. Em algumas poucas, só com certos dados: a descrição diz quando. Por que e como: Prévia e confirmação.

Escopo
task_management:write e «Permitir exclusões» (task_management:delete no OAuth)
Permissão
Editar no módulo
Tool do MCP
task_management_tasks_bulk_deleteNa superfície completa; na compacta, mb_execute_operation com id: "task_management.tasks.bulk.delete".
Eventos que pode emitir
task_management.task.deleted

Custo declarado: até 800 leituras e 800 escritas por chamada (contam na cota diária).

Parâmetros

task_idsarray<string>corpoobrigatório

The tasks' ids (1 to 200), from task_management.tasks.list.

Resposta

deletednumber
not_foundarray<string>
trash_item_idsarray<string>

The trash items this deletion left, one per record: the item_id of platform.trash.restore (POST /trash/{item_id}/restore).

trash_expires_atnumber

When the copy leaves the trash for good (epoch ms): 30 days after the deletion.

Erros

Exemplo

curl -X POST "https://api.mb-suite.com/v1/tasks/bulk/delete" \
  -H "Authorization: Bearer $MB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "task_ids": [
    "TASK_ID"
  ],
  "dry_run": true
}'

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl -X POST "https://api.mb-suite.com/v1/tasks/bulk/delete" \
  -H "Authorization: Bearer $MB_TEST_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "task_ids": [
    "TASK_ID"
  ],
  "dry_run": true
}'
POST/v1/tasks/bulk/update

Edit many tasks

task_management.tasks.bulk.update

EscritaEm massa · até 200Desde 2026-11-01

Applies the same change to up to 200 tasks, like the selection bar of the app: due_date (null clears it), assignee_id (null unassigns; the person must belong to the scope of every task: an Account's team, or the organization for a private task), priority_id, add_label_ids and remove_label_ids. Reassigning private tasks also updates their subtasks. It does not complete tasks (use task_management.tasks.complete). Ids not found or not visible are skipped and returned in not_found. Outside the app it requires a dry run and a confirm_token.

Pede confirmação: primeiro dry_run: true (prévia e confirm_token, válido por 10 minutos e por uma única execução), depois o mesmo corpo com confirm_token. Em algumas poucas, só com certos dados: a descrição diz quando. Por que e como: Prévia e confirmação.

Escopo
task_management:write
Permissão
Editar no módulo
Tool do MCP
task_management_tasks_bulk_updateNa superfície completa; na compacta, mb_execute_operation com id: "task_management.tasks.bulk.update".
Eventos que pode emitir
task_management.task.updated

Custo declarado: até 460 leituras e 400 escritas por chamada (contam na cota diária).

Parâmetros

task_idsarray<string>corpoobrigatório

The tasks' ids (1 to 200), from task_management.tasks.list.

updatesobjectcorpoobrigatório

What changes in every task (at least one field).

Resposta

updatednumber
not_foundarray<string>

Erros

Exemplo

curl -X POST "https://api.mb-suite.com/v1/tasks/bulk/update" \
  -H "Authorization: Bearer $MB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "task_ids": [
    "TASK_ID"
  ],
  "updates": {},
  "dry_run": true
}'

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl -X POST "https://api.mb-suite.com/v1/tasks/bulk/update" \
  -H "Authorization: Bearer $MB_TEST_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "task_ids": [
    "TASK_ID"
  ],
  "updates": {},
  "dry_run": true
}'
POST/v1/tasks/{task_id}/scope

Change the scope of a task

task_management.tasks.change_scope

EscritaDesde 2026-11-01

Changes who a task belongs to: the workspace (kind workspace), one of its Accounts (kind account + account_id; the task stays in the workspace classified under that Account) or private (kind private: only the creator and the assignee see it). Its subtasks follow it. Optional edits apply other field changes in the same call. An assignee who does not belong to the new scope is replaced by the caller, and watchers and alerted people outside it are dropped. Moving a task to another organization is only possible from the app; a credential works inside its own organization (leave target.org_id out). Returns changed (the scope changed), from and to, and how many subtasks followed it.

Escopo
task_management:write
Permissão
Editar no módulo
Tool do MCP
task_management_tasks_change_scopeNa superfície completa; na compacta, mb_execute_operation com id: "task_management.tasks.change_scope".

Custo declarado: até 110 leituras e 220 escritas por chamada (contam na cota diária).

Parâmetros

task_idstringrotaobrigatório

The task's id (from task_management.tasks.list, or the task_id that tasks.create returns).

targetobjectcorpoobrigatório

Where the task goes.

editsobjectcorpoopcional

Fields to change in the same call (the ones the app lets you edit while moving a task).

Resposta

task_idstring
target_org_idstring
changedboolean

true when the task's scope changed (from differs from to); false when it already was there.

movedboolean

true only when the task moved to another organization, which only the app can do: through the API and the MCP it is always false.

fromobject | null
toobject
subtasks_movednumber
comments_movednumber
cleanup_failedboolean
titlestring

Erros

Exemplo

curl -X POST "https://api.mb-suite.com/v1/tasks/{task_id}/scope" \
  -H "Authorization: Bearer $MB_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "target": {}
}'

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl -X POST "https://api.mb-suite.com/v1/tasks/{task_id}/scope" \
  -H "Authorization: Bearer $MB_TEST_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "target": {}
}'
POST/v1/tasks/bulk/scope

Change the scope of many tasks

task_management.tasks.bulk.change_scope

EscritaEm massa · até 500Desde 2026-11-01

Changes the scope (workspace, an Account, or private) of up to 500 tasks of this organization at once, with the same rules as task_management.tasks.change_scope. Each task is processed on its own: the ids that moved come back in moved and the rest in failed with their error code (a subtask, a task not found). Outside the app it requires a dry run and a confirm_token.

Pede confirmação: primeiro dry_run: true (prévia e confirm_token, válido por 10 minutos e por uma única execução), depois o mesmo corpo com confirm_token. Em algumas poucas, só com certos dados: a descrição diz quando. Por que e como: Prévia e confirmação.

Escopo
task_management:write
Permissão
Editar no módulo
Tool do MCP
task_management_tasks_bulk_change_scopeNa superfície completa; na compacta, mb_execute_operation com id: "task_management.tasks.bulk.change_scope".

Custo declarado: até 2500 leituras e 2500 escritas por chamada (contam na cota diária).

Parâmetros

task_idsarray<string>corpoobrigatório

The tasks' ids (1 to 500), from task_management.tasks.list.

targetobjectcorpoobrigatório

Where the task goes.

Resposta

movedarray<string>
failedarray<object>
target_org_idstring

Erros

Exemplo

curl -X POST "https://api.mb-suite.com/v1/tasks/bulk/scope" \
  -H "Authorization: Bearer $MB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "task_ids": [
    "TASK_ID"
  ],
  "target": {},
  "dry_run": true
}'

Testar com a sua API key de teste

Com uma API key de teste o pedido vai sempre para a sua organização de prática: dados de exemplo que você pode reiniciar.

curl -X POST "https://api.mb-suite.com/v1/tasks/bulk/scope" \
  -H "Authorization: Bearer $MB_TEST_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "task_ids": [
    "TASK_ID"
  ],
  "target": {},
  "dry_run": true
}'