Key metrics

Ready-made summaries calculated on the server: the results of a day or a period, the user's tasks, and KPI progress, both the user's own and their colleagues'. One request replaces dozens of list queries. These methods power the MCP server tools get_my_day, get_my_tasks, get_my_kpi, and get_team_kpi.

Note

All values are calculated on behalf of the token owner and respect their access rights. Dates use the YYYY-MM-DD format; when a date is omitted, today in the user's time zone is used. Amounts are in the account's base currency.

Headers

For every method in this section:

Name Type Description
Authorization* String Bearer XXXXXX.XXXXX.XXXXX

My day

GET https://do.workzeal.com/dashboard/my/day

A summary for a day or a period: companies added, tasks, deals, invoices, money, forgotten companies, and the user's KPI. Every value comes in two versions: total covers all records the user can see, and mine covers the records the user is responsible for (for tasks: as the assignee or a curator).

Query Parameters

Name Type Description
date String Start of the period. Defaults to today
date_to String End of the period. Defaults to date (a single day)
Name Description
period date_from, date_to: the period that was calculated
user id, name: the token owner
companies_added Companies added: total, mine
tasks Tasks in the period: scheduled_total, done_total, mine_scheduled, mine_done; overdue: overdue_total, mine_overdue; breakdown by task type: by_type (type, total, done, mine, mine_done)
deals_created Deals created: counts total / mine and amounts total_sum / mine_sum
invoices_issued Invoices issued (documents whose type is marked as an invoice): total, total_sum, mine, mine_sum
money Money movements: income, income_count, mine_income, expense, expense_count. Transfers between your own accounts are excluded
forgotten_companies Forgotten companies, as in the Forgotten indicator of the company list: companies of monitored types with no open tasks from the end of the period onward. total, mine
my_kpi The user's KPI: the same fields as in My KPI
{
  "status": "success",
  "error": "",
  "code": null,
  "value": "{
    \"period\": {\"date_from\": \"2026-09-29\", \"date_to\": \"2026-09-29\"},
    \"user\": {\"id\": 37, \"name\": \"Kate Smith\"},
    \"companies_added\": {\"total\": 12, \"mine\": 3},
    \"tasks\": {\"scheduled_total\": 48, \"done_total\": 30, \"mine_scheduled\": 9, \"mine_done\": 6,
                \"overdue_total\": 14, \"mine_overdue\": 2,
                \"by_type\": [{\"type\": \"Call\", \"total\": 20, \"done\": 15, \"mine\": 5, \"mine_done\": 4}]},
    \"deals_created\": {\"total\": 4, \"total_sum\": 82000, \"mine\": 1, \"mine_sum\": 25000},
    \"invoices_issued\": {\"total\": 6, \"total_sum\": 41000, \"mine\": 2, \"mine_sum\": 9500},
    \"money\": {\"income\": 39000, \"income_count\": 5, \"mine_income\": 15000, \"expense\": 4200, \"expense_count\": 3},
    \"forgotten_companies\": {\"total\": 57, \"mine\": 8},
    \"my_kpi\": {\"has_kpi\": true, \"period_progress_percent\": 64, ...}
  }"
}

My tasks

GET https://do.workzeal.com/dashboard/my/tasks

The user's tasks for the day, plus overdue ones: tasks where the user is the assignee or a curator. Overdue means due before that day and not done.

Query Parameters

Name Type Description
date String The day. Defaults to today
overdue_limit Int How many overdue tasks to list, from 1 to 100 (30 by default), most recent first. The total count is always returned
Name Description
date The day that was calculated
today total, done, and the list of the day's tasks
overdue total: how many are overdue in all, shown: how many are listed, tasks: the tasks themselves

Task fields in the lists: id, type, status, done, date_start, date_finish, company_id, company_name, deal_id, note, result.

My KPI

GET https://do.workzeal.com/dashboard/kpi/my

Progress on the user's KPI plan for a period and month to date.

Query Parameters

Name Type Description
date_from String Start of the period. Defaults to the 1st of the month of date_to
date_to String End of the period. Defaults to today
Name Description
has_kpi false if the user has no KPI plan; the other fields are then omitted
period_progress_percent Average completion of the plan items for the period
month_to_date_progress_percent The same, month to date
month_to_date date_from, date_to: the month-to-date period
month_items Plan items, month to date: name, measure (count or amount), plan (prorated to the period), actual, progress_percent

Team KPI

GET https://do.workzeal.com/dashboard/kpi/team

KPI progress by employee and by department, best first. Only employees and departments that have a KPI plan are listed.

Warning

Requires permission for the "KPI users" and/or "KPI departments" reports. Without either, the method returns an error with code 403. With only one of them, the other list comes back empty (null) and the reason is given in users_access or departments_access.

Query Parameters

Name Type Description
date_from String Start of the period. Defaults to the 1st of the month of date_to
date_to String End of the period. Defaults to today
department_id Int Only employees of this department. The department list is not returned in this case
Name Description
period date_from, date_to
users Employees: user_id, name, department_id, department, progress_percent
users_access ok, or why the list is missing
departments Departments: department_id, name, progress_percent
departments_access ok, or why the list is missing

progress_percent is the average completion of the plan items for the period: the monthly plan is prorated to the period, and each item counts for no more than 100%.

Example

curl --location --request GET 'https://do.workzeal.com/dashboard/my/day?date=2026-09-22&date_to=2026-09-28' \
--header 'Authorization: Bearer XXXX-XXXXXXX-XXXXXXX'
Previous