@get-asset/react

Tasks

Styled card listing the outstanding tasks a business needs to act on, with one collapsible section per task type (reconnect, each document request, each question type). Shows how many tasks remain in the header, per-section counts, and an “all caught up” state once nothing is pending. The row actions work out of the box — reconnect opens Plaid Link in update mode (via the shared PlaidLink, same as the accounts components), upload opens a file picker and attaches documents, and the classify comment button opens an inline form that leaves a note on the transaction's journal entry and marks the task done — so you can drop it in without wiring callbacks.

Preview

Loading preview…

Required scopes

The access token used by AssetProvider must include these scopes for this primitive to fetch data successfully:

  • request:read
  • transaction:read
  • plaid:create
  • document:create
  • journal_entry:read
  • journal_entry:create

API reference

Root props

PropTypeDefaultDescription
tasksTasksTask[]Override the fetched tasks with a fixed list (any status). Skips the API call.
accountsExternalAccountPublic[]Override the external accounts resolved for statement / reconnect / categorize rows (account name, mask, institution).
transactionsTransactionPublic[]Override the transactions resolved for categorize rows (amount, date, account).
onReconnect(task: TasksTask, account: ExternalAccountPublic | null) => voidOptional override for the reconnect action. Defaults to opening Plaid Link in update mode for the account the row reconnects.
onConnectedPlaidConnectOnConnectedCalled after a reconnect is finalised.
onError(error: Error) => voidCalled if the reconnect fails.
onExit / onEventPlaidLinkOnExit / PlaidLinkOnEventForwarded to Plaid Link.
onUpload(task: TasksTask, files: File[]) => Promise<void>Optional override. Upload attaches the chosen files to the task as documents by default.
onAddNote(task: TasksTask, message: string) => Promise<void>Optional override. A classification comment is left on the transaction's journal entry by default.
state"loading" | "error" | "empty"Force a specific state for testing.
titleReactNodeThe card's heading. Defaults to "Requests" (with the live status beside it); pass your own node, or "" to render no header at all — for composing the list under another card's heading (Book Health does this).
onReviewTask(task: TasksTask) => voidHand a month-level review task off to your transactions page for its month — reviewing is how those tasks complete. The row's arrow button is a no-op while unset; transaction-linked classify tasks keep the inline note instead.
subtitleReactNodeThe line under the header. Defaults to "Complete these tasks to help keep your business records up to date."; pass "" to render nothing.
classNamestringForwarded to the outer card element.

States

Loading

Loading preview…

Success

Loading preview…

EmptyNo pending tasks — the business is up to date.

Loading preview…

Error

Loading preview…