listTasks method

Future<TaskListEnvelope?> listTasks({
  1. String? accountId,
  2. String? provider,
  3. String? xWorkspaceID,
  4. bool? completed,
  5. List<String>? labels,
  6. String? parentTaskId,
  7. String? type,
  8. String? sourcePlatform,
  9. String? sourceId,
  10. int? limit,
  11. int? offset,
})

List tasks across connected accounts.

Fan-out list. Returns every task visible to the caller across every connected tasks provider. Pass ?accountId= or ?provider= to scope to a single source.

Parameters:

  • String accountId: Connected-account row id. Selects which provider account this request targets when more than one is connected. Mutually exclusive with provider. If omitted on a list endpoint the call fans out across every connected account.

  • String provider: Provider id (e.g. native-notes, notion). Selects every connected account for the provider. Mutually exclusive with accountId.

  • String xWorkspaceID: Workspace scope for unscoped tokens. Workspace-scoped PATs and OAuth tokens carry this implicitly; for session/JWT auth without a scoped PAT, pass it explicitly.

  • bool completed: Include completed tasks. Default false (active tasks only).

  • List<String> labels: Repeatable. Filter to tasks carrying every label listed.

  • String parentTaskId: Filter to subtasks of this parent.

  • String type: Discriminator filter (todo, reminder, issue).

  • String sourcePlatform: Filter to tasks linked to a given source platform.

  • String sourceId: Filter to tasks linked to a specific source artifact id. Pair with sourcePlatform for an exact match.

  • int limit:

  • int offset:

Implementation

Future<TaskListEnvelope?> listTasks({ String? accountId, String? provider, String? xWorkspaceID, bool? completed, List<String>? labels, String? parentTaskId, String? type, String? sourcePlatform, String? sourceId, int? limit, int? offset, }) async {
  final response = await listTasksWithHttpInfo( accountId: accountId, provider: provider, xWorkspaceID: xWorkspaceID, completed: completed, labels: labels, parentTaskId: parentTaskId, type: type, sourcePlatform: sourcePlatform, sourceId: sourceId, limit: limit, offset: offset, );
  if (response.statusCode >= HttpStatus.badRequest) {
    throw ApiException(response.statusCode, await _decodeBodyBytes(response));
  }
  // When a remote server returns no body with a status of 204, we shall not decode it.
  // At the time of writing this, `dart:convert` will throw an "Unexpected end of input"
  // FormatException when trying to decode an empty string.
  if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) {
    return await apiClient.deserializeAsync(await _decodeBodyBytes(response), 'TaskListEnvelope',) as TaskListEnvelope;

  }
  return null;
}