Skip to content

Sensor Attributes

tempus2016 edited this page Oct 3, 2026 · 13 revisions

TaskMate exposes one primary overview sensor and a set of per-child sensors. Automations, templates, and custom cards can read from these.

TaskMate entity attributes in Developer Tools → States

sensor.taskmate_overview

State: number of children.

This is the main sensor. Its extra_state_attributes contain everything most cards and automations need.

Top-level attributes

Attribute Type Description
total_children int Number of children
total_chores int Number of defined chores
total_rewards int Number of defined rewards
total_points_available int Sum of all children's points
total_chores_completed int Lifetime chore completions
total_completions_all_time int Lifetime chore completion records
total_pending_completions int Chore completions awaiting approval
today_day_of_week string Lowercase day name, e.g. "friday"
points_name string Customisable points currency name
points_icon string MDI icon string
card_design string (v4.1.0) Global default card design style — classic / playroom / console / cleanpro / accessible (default classic); cards apply it when they have no per-card override
children list Per-child objects (see below)
chores list Per-chore objects
rewards list Per-reward objects (see below)
todays_completions list Chore completions logged today
pending_reward_claims list Reward claims awaiting approval
pool_allocations list (v3.0+) Raw PoolAllocation records
time_boundaries dict Legacy fixed time-window map (morning_start/morning_end/…) in HH:MM
time_periods list (v4.0+) Custom time-of-day periods — each id, label, start, end, icon. See Settings
vacation_active / vacation_name / vacation_end bool / string (v4.0+) Active vacation period state
vacation_periods list (v4.0+) All configured vacation periods (id, name, start, end)
family_goal object (v4.4.0) Shared co-op family goal state (enabled, name, target, progress, reward, achieved)
season_month string (v4.4.0) Current leaderboard season month, YYYY-MM. See Leaderboard Seasons
season_champions list (v4.4.0) Past monthly leaderboard champions (newest first, up to 12)
companion_entities dict (v6.1.0) Where each companion sensor really lives: role (chores, rewards, activity, bounties, auctions, chore_board, …) → entity ID. Cards use it to find sensors that Home Assistant created with an area prefix or that you renamed. Not recorded in history
badge_entities dict (v6.1.0) Child ID → that child's badges sensor entity ID. Not recorded in history
Settings mirrors various streak_reset_mode, weekend_multiplier, streak_milestones_enabled, streak_milestones, perfect_week_enabled, perfect_week_bonus, and (v6.0.0) streak_freeze_max, streak_freeze_earn_every

Note: Heavy lists (chores, rewards, todays_completions, recent_completions, recent_transactions, pending_reward_claims, pool_allocations) have been moved to companion sensors (sensor.taskmate_chores, sensor.taskmate_rewards, sensor.taskmate_activity). Cards merge them transparently via the __taskmate_attrs helper. See Sensor Reference for full details.

children[] entries

Field Type Description
id string Stable child ID
name string Display name
avatar string MDI icon (currently selected avatar)
level int (v4.0+) XP level derived from total_points_earned. See Levels and XP
level_progress int (v4.0+) XP into the current level band
level_target int (v4.0+) XP per level (level_xp_step, default 100)
points int Gross balance (after pool deposits have been subtracted)
pending_points int Points earned from approved chores not yet applied
committed_points int Points tied up in pending reward claims
spendable_balance int (v3.0+) points − committed_points — what the child can spend or deposit now
allocated_points int (v3.0+) Total points the child has deposited across all pools
total_points_earned int Lifetime points earned
total_chores_completed int Lifetime chores completed
current_streak int Current consecutive-day streak
best_streak int Highest streak achieved
season_points int (v4.4.0) Points earned this leaderboard season (current month). See Leaderboard Seasons
last_completion_date string | null ISO date of last completion
streak_paused bool true if streak is currently paused
streak_milestones_achieved list[int] Streak milestones unlocked
awarded_perfect_weeks list[string] ISO Monday dates of perfect weeks
chore_order list[string] Custom ordering of chore IDs
career_score int Long-term performance metric (total_points_earned − total_penalties_received)
total_penalties_received int Lifetime count of penalties applied
quests list (v4.0+) Per-child quest progress (quest_id, name, icon, total_steps, step, done, times_completed, bonus_points, next_chore_id)
challenges list (v4.0+) Per-child challenge progress (challenge_id, name, icon, scope, metric, target, progress, value, bonus_points, complete, awarded)
avatar_options list (v4.0+) Avatar catalogue for this child (id, label, icon, unlocked, requirement)
birthday object (v6.0.0) Only on the child's birthday: multiplier, age (when the year is known), chores_off
streak_freezes int (v6.0.0) Streak freeze tokens held. Only present while streak freezes are on
rejections list (v6.0.0) Items sent back with a reason in the last 24 hours (kind, id, reason, at). Only present when there is one
inspections list (v6.0.0) Today's inspection banners (id, chore_id, name, status, plus bonus / until / points / note where relevant). Only present when there is one

Full field-by-field tables for quests, challenges, and avatar_options are in the Sensor Reference.

rewards[] entries

Field Type Description
id string Stable reward ID
name string Display name
description string Optional description
icon string MDI icon
cost int Points cost
assigned_to list[string] Child IDs the reward applies to (empty = all)
is_jackpot bool Community goal — pools across all assigned children
pool_enabled bool (v3.0+) When true, this reward uses savings-jar semantics
calculated_costs {child_id: int} Per-child cost (currently static; all equal cost)
pool_allocations {child_id: int} (v3.0+) Points each assigned child has deposited
jackpot_pool_total int | null (v3.0+) Combined pool for jackpot rewards; null otherwise
quantity int | null Remaining stock (null = unlimited)
expires_at string | null ISO date expiry deadline (null = never)
is_sold_out bool true when quantity has reached 0
is_expired bool true when past the expiry date
is_available bool true when not sold out and not expired
days_until_expiry int | null Days remaining until expiry (null if no expiry set)
streak_freeze bool (v6.0.0) true on a Streak freeze reward. Only present when set

chores[] entries

Field Type Description
id string Stable chore ID
name, description string Display
points int Base points awarded on approval
difficulty string (v4.0+) easy/medium/hard — only present when not medium. See Difficulty Tiers
effective_points int (v4.0+) Points after the difficulty multiplier — present only when it differs from points
mandatory bool (v4.2.0) true for a mandatory chore — only present when set
mandatory_penalty_points int (v4.2.0) Penalty deducted if missed — only present when mandatory is set and the penalty is non-zero. See Mandatory Chores
assigned_to list[string] Child IDs (empty = all)
time_category string morning / afternoon / evening / night / anytime
daily_limit int Max completions per child per day
completion_sound string Sound identifier
schedule_mode string specific_days, recurring, or one_shot
assignment_mode string everyone / alternating / random / balanced / first_come / unassigned
due_days list[string] Used in specific_days mode
recurrence / recurrence_day / recurrence_start — Used in recurring mode
first_occurrence_mode string available_immediately / wait_for_first_occurrence
visibility_entity / visibility_state / visibility_operator — Optional dynamic visibility guard
enabled bool False = soft-disabled (one-shot completed or expired)
disabled_for list[string] Child IDs this chore is disabled for
created_date string ISO date for one-shot chore expiry
last_completed_at {child_id: iso} Most recent completion per child
is_available {child_id: bool} Whether chore shows for each child today
task_type string standard or timed
timed_rate_points int Points per rate window (timed chores)
timed_rate_minutes int Rate window in minutes (timed chores)
timed_max_daily_minutes int Daily cap in minutes; 0 = unlimited (timed chores)
bonus_subtasks list[dict] Embedded subtasks — each has id, name, points, description
require_availability bool Skip unavailable children in rotation
manual_start_child_id string Forced rotation start child ID (if set)
publish_calendar_entities list[string] HA calendar entity IDs for publishing
team object (v6.0.0) Teamwork chores only: size, joined (child IDs), split
occ_today bool (v6.0.0) Overrides whether the chore is due today — after a calendar move or skip, or for a one-off dated another day
moved_occurrences {iso: iso} (v6.0.0) Calendar moves, original date → new date (empty = skipped)
auction_wins / auction_prices / auction dict / dict / object (v6.0.0) Auction results this week: winner and price per day, and today's {child_id, points}

pending_reward_claims[] entries

Field Type Description
claim_id string Claim ID
reward_id string Reward ID
child_id string Child ID
child_name string Display name
child_avatar string MDI icon
reward_name string Display name
reward_icon string MDI icon
cost int Points cost
claimed_at string ISO datetime

sensor.taskmate_pending_approvals

State: total pending (chores + claims).

Attributes include pending_chore_completions, pending_reward_claims, pending_mandatory_misses (count), chore_completions (enriched list; a finished bounty carries bounty_id), reward_claims (enriched list; a wish being redeemed appears here like a reward), quality_rating (v6.0.0, present only while quality ratings are on — multipliers for ★, ★★, ★★★), and mandatory_misses (enriched list of mandatory-miss review items — each has id, chore_id, child_id, chore_name, child_name, due_date, period_id, penalty_points, postpone_count, created_at). See Sensor Reference and Mandatory Chores.

Per-child sensors

Each child gets two sensors created at onboarding:

  • sensor.taskmate_<child_name>_points — state is current gross balance; attributes include child_id, child_name, avatar, total_points_earned, total_chores_completed, current_streak, best_streak
  • sensor.taskmate_<child_name>_stats — state is total chores completed; attributes include child_id, child_name, avatar, points, total_points_earned, total_chores_completed, current_streak, best_streak, assigned_chores (list of today's assigned chores), chore_order

(v6.0.0) Two more per child:

  • sensor.taskmate_<child_name>_wishlist — state is the number of wishes on the go; attributes wishlist_child_id, wish_max_open and wishes (each id, name, target, status, and when set saved, pledged, pledges, link, image_url, decline_reason). See Wishlist
  • sensor.taskmate_<child_name>_watch — state is a short phrase such as 3 left, All done or No chores, in Home Assistant's language; attributes child_id, status (to_do / all_done / no_chores), left, done, total, progress (0–1), points, streak, next_chore. See Watch Complications

Companion sensors

The overview sensor's heavy data has been split across companion sensors to stay under the 16KB recorder limit:

Sensor State Key attributes
sensor.taskmate_chores Chore count chores, todays_completions
sensor.taskmate_chore_availability Available chore/child pairs chore_availability (matrix {chore_id: {child_id: bool}})
sensor.taskmate_rewards Reward count rewards, pending_reward_claims, pool_allocations
sensor.taskmate_activity All-time completion count recent_completions (max 35), recent_transactions (max 20), career_score_history, photo_gallery (v4.4.0, max 40)
sensor.taskmate_incentives Penalty + bonus count penalties, bonuses, task_groups
sensor.taskmate_bounties Open bounty count (v6.0.0) bounties — the bounty board: live bounties plus the last 24 hours' completed ones
sensor.taskmate_auctions Open auction count (v6.0.0) auctions — open and recently closed auctions: bid counts and results only, never bid amounts
sensor.taskmate_chore_board Chores still to do today (v6.1.0) chore_board — today's board for every child, as shown on the panel's Today page and the Chore Board card. Not recorded in history

See Sensor Reference for full attribute details.

Attributes and the recorder (v5.3.0+)

The large list attributes above — chores, recent_completions, mandatory_misses, children, the badge earned / available lists and so on — are declared unrecorded.

They are still published on the live state, so cards, state_attr(), templates and automation conditions read them exactly as before. Only Home Assistant's recorder skips them, which keeps the database small and prevents this warning:

WARNING (Recorder) State attributes for sensor.taskmate_activity exceed
maximum size of 16384 bytes. This can cause database performance issues;
Attributes will not be stored

Scalar attributes (counts, totals, settings) stay recorded, so history and statistics on them keep working. The practical difference is that you cannot look up a past value of one of the big lists in history — the current value is always available on the state.

Calendar entities

(v4.2.0) One calendar entity per child — calendar.taskmate_<child> (friendly name TaskMate <child>). It projects the child's upcoming chore occurrences and shows away periods as all-day "Away" events; the state is the next upcoming event. Since v6.0.0 parents and admins can add, move and skip chores in it — see Two-Way Calendar. See Calendar and Sensor Reference.

To-do and configuration entities

(v4.4.0) TaskMate also creates:

  • todo.taskmate_<child> — one to-do list per child of the chores they still need to do today; checking an item off completes that chore.
  • number.taskmate_weekend_multiplier, number.taskmate_perfect_week_bonus, select.taskmate_streak_reset_mode, select.taskmate_card_design — key settings surfaced as entities, in sync with the admin panel.

See Sensor Reference and Configuration Entities.

Related

Clone this wiki locally