Menu

API reference · Tasks

Tasks

task_management · tasks · 12 operations

GET/v1/tasks

List tasks

task_management.tasks.list

ReadIdempotentSince 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.

Scope
task_management:read
Permission
View the module
MCP tool
task_management_tasks_listOn the full surface; on the compact one, mb_execute_operation with id: "task_management.tasks.list".

Declared cost: up to 2216 reads and 0 writes per call (they count against the daily quota).

Parameters

limitintegerqueryoptional

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

Default: 25

cursorstringqueryoptional

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

statusenumqueryoptional

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

Values: open, done, all

querystringqueryoptional

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

assignee_idstringqueryoptional

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

account_idstringqueryoptional

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_idstringqueryoptional

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

label_idstringqueryoptional

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

parent_task_idstringqueryoptional

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

sortenumqueryoptional

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

Values: created_desc, due_asc · Default: "created_desc"

due_beforeintegerqueryoptional

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

due_afterintegerqueryoptional

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

include_subtasksbooleanqueryoptional

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

Default: false

Response

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.

Errors

Example

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

Try it with your test API key

With a test API key the request always goes to your practice organization: example data you can reset.

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

ReadIdempotentSince 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.

Scope
task_management:read
Permission
View the module
MCP tool
task_management_tasks_countOn the full surface; on the compact one, mb_execute_operation with id: "task_management.tasks.count".

Declared cost: up to 5001 reads and 0 writes per call (they count against the daily quota).

Parameters

fromintegerqueryrequired

Start of the period, epoch ms (inclusive).

tointegerqueryrequired

End of the period, epoch ms (inclusive).

byenumqueryoptional

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

Values: completed, created · Default: "completed"

statusenumqueryoptional

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

Values: open, done, all · Default: "all"

assignee_idstringqueryoptional

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

account_idstringqueryoptional

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

Response

countinteger
byenum

Values: completed, created

fromnumber
tonumber
truncatedboolean

Errors

Example

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

Try it with your test API key

With a test API key the request always goes to your practice organization: example data you can reset.

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

ReadIdempotentSince 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.

Scope
task_management:read
Permission
View the module
MCP tool
task_management_tasks_getOn the full surface; on the compact one, mb_execute_operation with id: "task_management.tasks.get".

Declared cost: up to 3 reads and 0 writes per call (they count against the daily quota).

Parameters

task_idstringpathrequired

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

Response

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

Errors

Example

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

Try it with your test API key

With a test API key the request always goes to your practice organization: example data you can reset.

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

WriteSince 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.

Scope
task_management:write
Permission
Edit in the module
MCP tool
task_management_tasks_createOn the full surface; on the compact one, mb_execute_operation with id: "task_management.tasks.create".

Declared cost: up to 60 reads and 2 writes per call (they count against the daily quota).

Parameters

titlestringbodyrequired

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

descriptionstringbodyoptional

HTML or plain text.

status_idstringbodyoptional

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

priority_idstring | nullbodyoptional
assignee_idstring | nullbodyoptional
due_dateinteger | nullbodyoptional
start_dateinteger | nullbodyoptional
account_idstring | nullbodyoptional
is_privatebooleanbodyoptional

Only its creator and its assignee see it.

label_idsarray<string>bodyoptional

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

alert_user_idsarray<string>bodyoptional

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

watcher_idsarray<string>bodyoptional

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

tagsarray<string>bodyoptional

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

project_idstring | nullbodyoptional
item_idstring | nullbodyoptional
parent_task_idstringbodyoptional

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 | nullbodyoptional

Response

task_idstring
taskobject

Errors

Example

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"
}'

Try it with your test API key

With a test API key the request always goes to your practice organization: example data you can reset.

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

WriteSince 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.

Scope
task_management:write
Permission
Edit in the module
MCP tool
task_management_tasks_updateOn the full surface; on the compact one, mb_execute_operation with id: "task_management.tasks.update".

Declared cost: up to 160 reads and 102 writes per call (they count against the daily quota).

Parameters

task_idstringpathrequired

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

updatesobjectbodyrequired

The fields to change (at least one).

Response

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.

Errors

Example

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": {}
}'

Try it with your test API key

With a test API key the request always goes to your practice organization: example data you can reset.

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

WriteIdempotentSince 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).

Instructions for agents

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.

Scope
task_management:write
Permission
Edit in the module
MCP tool
task_management_tasks_completeOn the full surface; on the compact one, mb_execute_operation with id: "task_management.tasks.complete".

Declared cost: up to 60 reads and 52 writes per call (they count against the daily quota).

Parameters

task_idstringpathrequired

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

status_idstringbodyoptional

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

Response

taskobject
changedboolean
next_task_idstring

Errors

Example

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

Try it with your test API key

With a test API key the request always goes to your practice organization: example data you can reset.

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

WriteIdempotentSince 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).

Scope
task_management:write
Permission
Edit in the module
MCP tool
task_management_tasks_reopenOn the full surface; on the compact one, mb_execute_operation with id: "task_management.tasks.reopen".

Declared cost: up to 3 reads and 1 writes per call (they count against the daily quota).

Parameters

task_idstringpathrequired

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

status_idstringbodyoptional

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

Response

taskobject
changedboolean

Errors

Example

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

Try it with your test API key

With a test API key the request always goes to your practice organization: example data you can reset.

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

IrreversibleSince 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.

With an API key, this DELETE runs directly: the record stays 30 days in the trash and the response carries its trash_item_id. With an OAuth token, and through the MCP, it needs dry_run → confirm_token.

Scope
task_management:write and “Allow deletions” (task_management:delete in OAuth)
Permission
Edit in the module
MCP tool
task_management_tasks_deleteOn the full surface; on the compact one, mb_execute_operation with id: "task_management.tasks.delete".

Declared cost: up to 103 reads and 101 writes per call (they count against the daily quota).

Parameters

task_idstringpathrequired

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

Response

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.

Errors

Example

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

Try it with your test API key

With a test API key the request always goes to your practice organization: example data you can reset.

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

IrreversibleBulk · up to 200Since 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.

Needs confirmation: first dry_run: true (preview and confirm_token, valid 10 minutes and for one run), then the same body with confirm_token. In a few operations only with certain data: the description says when. Why and how: Dry run and confirm_token.

Scope
task_management:write and “Allow deletions” (task_management:delete in OAuth)
Permission
Edit in the module
MCP tool
task_management_tasks_bulk_deleteOn the full surface; on the compact one, mb_execute_operation with id: "task_management.tasks.bulk.delete".

Declared cost: up to 800 reads and 800 writes per call (they count against the daily quota).

Parameters

task_idsarray<string>bodyrequired

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

Response

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.

Errors

Example

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
}'

Try it with your test API key

With a test API key the request always goes to your practice organization: example data you can reset.

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

WriteBulk · up to 200Since 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.

Needs confirmation: first dry_run: true (preview and confirm_token, valid 10 minutes and for one run), then the same body with confirm_token. In a few operations only with certain data: the description says when. Why and how: Dry run and confirm_token.

Scope
task_management:write
Permission
Edit in the module
MCP tool
task_management_tasks_bulk_updateOn the full surface; on the compact one, mb_execute_operation with id: "task_management.tasks.bulk.update".

Declared cost: up to 460 reads and 400 writes per call (they count against the daily quota).

Parameters

task_idsarray<string>bodyrequired

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

updatesobjectbodyrequired

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

Response

updatednumber
not_foundarray<string>

Errors

Example

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
}'

Try it with your test API key

With a test API key the request always goes to your practice organization: example data you can reset.

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

WriteSince 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.

Scope
task_management:write
Permission
Edit in the module
MCP tool
task_management_tasks_change_scopeOn the full surface; on the compact one, mb_execute_operation with id: "task_management.tasks.change_scope".

Declared cost: up to 110 reads and 220 writes per call (they count against the daily quota).

Parameters

task_idstringpathrequired

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

targetobjectbodyrequired

Where the task goes.

editsobjectbodyoptional

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

Response

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

Errors

Example

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": {}
}'

Try it with your test API key

With a test API key the request always goes to your practice organization: example data you can reset.

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

WriteBulk · up to 500Since 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.

Needs confirmation: first dry_run: true (preview and confirm_token, valid 10 minutes and for one run), then the same body with confirm_token. In a few operations only with certain data: the description says when. Why and how: Dry run and confirm_token.

Scope
task_management:write
Permission
Edit in the module
MCP tool
task_management_tasks_bulk_change_scopeOn the full surface; on the compact one, mb_execute_operation with id: "task_management.tasks.bulk.change_scope".

Declared cost: up to 2500 reads and 2500 writes per call (they count against the daily quota).

Parameters

task_idsarray<string>bodyrequired

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

targetobjectbodyrequired

Where the task goes.

Response

movedarray<string>
failedarray<object>
target_org_idstring

Errors

Example

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
}'

Try it with your test API key

With a test API key the request always goes to your practice organization: example data you can reset.

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
}'