Skip to content
DikoAPI
API keys

List meeting action items

Open as Markdown

Returns the manual action items of the meeting and those generated in the latest ready minutes, in one shape.

GET/meetings/{meeting_id}/action-items
Required scope
meetings:read
Authentication
Authorization: Bearer
Rate-limit policy
readaccount

Filter with source.

Parameters

Parameters
NameInTypeRequiredDefaultConstraintsDescription
meeting_idpathstringrequired–26–26 characters · pattern: ^mtg_[0-9A-Za-z]{22}$Public meeting ID (mtg_ prefix).
sourcequerystringno––Return only manual or only generated items. Allowed values: manualgenerated
limitqueryintegerno201–100 · format: int32Page size, from 1 to 100. Default 20. Follow has_more, not the page size.
cursorquerystringno–≤ 1024 charactersOpaque cursor from next_cursor of the previous page. Cursors are tied to the user, route, sort order and filters.

Response

200

A page of action items.

  • RateLimit The most restrictive policy that applied: "name";r=<requests left>;t=<seconds>, where t is the number of seconds until one more request is allowed (0 when the quota is full). Absent when no rate limiter ran for the request.
  • RateLimit-Policy The rate-limit policies that applied to the request, one "name";q=<burst>;w=<seconds> item per policy, for example "read";q=10;w=2, "account";q=20;w=2: q is the burst quota and w the seconds in which an empty quota refills. Sent on every authenticated response; absent when no rate limiter ran for the request, for example when it was rejected before the key was checked.
  • Request-Id ID of this request (req_ prefix), the same as request_id in an error body. It is also sent as X-Request-ID. Quote it when you contact support.
  • X-Client-Request-Id Your own X-Client-Request-Id request header, echoed back. It is sent only when the value you sent has 1-128 characters from A-Z a-z 0-9 . _ : -.
  • X-RateLimit-Limit Burst quota of the most restrictive policy (q in RateLimit-Policy). Absent when no rate limiter ran.
  • X-RateLimit-Remaining Requests left in the most restrictive policy (r in RateLimit). Absent when no rate limiter ran.
  • X-RateLimit-Reset Seconds until one more request is allowed in the most restrictive policy (t in RateLimit; 0 when the quota is full). It is a number of seconds, not a timestamp. Absent when no rate limiter ran.

Content type: application/json

  • objectstringrequired

    Always list.

  • dataarray<object>required

    The items of this page.

    11 fields
    • objectstringrequired

      Always action_item.

    • idstring | nullrequired

      Public ID (act_ prefix). Null for generated items.

      26–26 characters · pattern: ^act_[0-9A-Za-z]{22}$

    • sourcestringrequired

      Where the item comes from.

      Allowed values: manualgenerated

    • textstringrequired

      Task title.

    • descriptionstring | nullrequired

      Longer description, if any.

    • statusstringrequired

      Task status. Generated items are always open.

      Allowed values: openin_progressdonecanceled

    • assignee_namestring | nullrequired

      Name of the person responsible.

    • due_textstring | nullrequired

      Free-text deadline from generated minutes.

    • due_atstring | nullrequired

      Deadline of a manual item.

      ≤ 24 characters · format: date-time

    • timestamps_msarray<integer>required

      Moments in the recording the item comes from, in milliseconds.

    • created_atstring | nullrequired

      When a manual item was created. Null for generated items.

      ≤ 24 characters · format: date-time

  • has_morebooleanrequired

    Whether more items follow. Keep paging while this is true.

  • next_cursorstring | nullrequired

    Cursor for the next page, or null when has_more is false.

    ≤ 1024 characters

Examples

Request

cURL
curl "https://api.diko.app/api/v1/meetings/mtg_0aZ1bY2cX3dW4eV5fU6gT7/action-items" \
  -H "Authorization: Bearer $DIKO_API_KEY"

Example response · 200 · application/json

JSON
{
  "object": "list",
  "data": [
    {
      "object": "action_item",
      "id": "act_4VYK4CNn7WirPteKPtx17L",
      "source": "manual",
      "text": "Išsiųsti pasiūlymą",
      "description": null,
      "status": "open",
      "assignee_name": "Jonas",
      "due_text": null,
      "due_at": "2026-10-17T00:00:00.000Z",
      "timestamps_ms": [],
      "created_at": "2026-10-11T09:31:00.000Z"
    }
  ],
  "has_more": false,
  "next_cursor": null
}

Errors

This endpoint can return these errors. Every code is described in the error catalog.

HTTPCodeMeaningRetry?
400invalid_parameterA path, query or body parameter has an invalid value, a required field is missing or a field is unknown (unknown fields are rejected). `error.param` names the parameter.no
400invalid_cursorThe `cursor` is corrupted or was issued for another user, route, sort order or set of filters.no
401missing_api_keyThe request has no `Authorization` header.no
401invalid_api_keyThe header is unusable (a scheme other than `Bearer`, an empty key or more than one `Authorization` header) or the key is unknown or malformed (wrong structure or checksum). The response is identical in all these cases.no
401api_key_expiredThe key has expired.no
401api_key_revokedThe key was revoked: manually, after a rotation grace period ended, because of a leak or because the account was disabled.no
401api_key_disabledThe key is temporarily disabled.no
402subscription_requiredThe account has no active paid access.no
403ip_not_allowedThe key has an IP allowlist and the request IP is not on it, or it cannot be determined reliably.no
403account_disabledThe account is disabled.no
403email_not_verifiedThe account e-mail address is not verified.no
403api_access_suspendedA Diko administrator suspended API access for this account.no
403plan_requiredThe plan does not include the API. `error.details.required_plans` lists `verslas`.no
403insufficient_scopeThe key lacks the scope this endpoint needs. `error.details` contains `required_scopes` and `granted_scopes`.no
404not_foundThe resource does not exist, does not belong to your account or its ID is encoded incorrectly.no
429rate_limit_exceededA rate-limit policy was exceeded. `error.details.policy` names it.yes, after Retry-After
500internal_errorAn internal server error.conditionally
503service_unavailableThe service is temporarily busy, for example because of database load.yes, after Retry-After

Search for a topic, an endpoint or an error code.

Search across all documentation pagesesc close