get_price: fields: entry_id: required: false example: "1234567890abcdef" selector: config_entry: integration: tibber_prices start_time: required: true example: "2025-11-01T00:00:00+01:00" selector: datetime: end_time: required: true example: "2025-11-02T00:00:00+01:00" selector: datetime: get_apexcharts_yaml: fields: entry_id: required: false example: "1234567890abcdef" selector: config_entry: integration: tibber_prices day: required: false example: today selector: select: options: - yesterday - today - tomorrow - rolling_window - rolling_window_autozoom translation_key: day level_type: required: false default: rating_level example: rating_level selector: select: options: - rating_level - level translation_key: level_type resolution: required: false default: interval example: interval selector: select: options: - interval - hourly translation_key: resolution price_source: required: false default: total example: energy selector: select: options: - total - energy - tax translation_key: price_source highlight_best_price: required: false default: true example: true selector: boolean: highlight_peak_price: required: false example: false selector: boolean: get_chartdata: fields: general: fields: entry_id: required: false example: "1234567890abcdef" selector: config_entry: integration: tibber_prices selection: collapsed: true fields: day: required: false selector: select: options: - yesterday - today - tomorrow multiple: true translation_key: day resolution: required: false default: interval example: hourly selector: select: options: - interval - hourly translation_key: resolution price_source: required: false default: total example: energy selector: select: options: - total - energy - tax translation_key: price_source filters: collapsed: true fields: level_filter: required: false selector: select: options: - very_cheap - cheap - normal - expensive - very_expensive multiple: true translation_key: level_filter rating_level_filter: required: false selector: select: options: - low - normal - high multiple: true translation_key: rating_level_filter period_filter: required: false selector: select: options: - best_price - peak_price translation_key: period_filter transformation: collapsed: true fields: subunit_currency: required: false example: true selector: boolean: round_decimals: required: false example: 2 selector: number: min: 0 max: 10 mode: box insert_nulls: required: false default: none selector: select: options: - none - segments - all translation_key: insert_nulls connect_segments: required: false selector: boolean: add_trailing_null: required: false selector: boolean: format: collapsed: true fields: output_format: required: false default: array_of_objects example: array_of_objects selector: select: options: - array_of_objects - array_of_arrays translation_key: output_format data_key: required: false example: prices selector: text: metadata: required: false default: include selector: select: options: - include - only - none translation_key: metadata arrays_of_objects: collapsed: true fields: include_level: required: false example: true selector: boolean: include_rating_level: required: false example: true selector: boolean: include_average: required: false selector: boolean: include_energy: required: false selector: boolean: include_tax: required: false selector: boolean: start_time_field: required: false example: time selector: text: end_time_field: required: false example: end selector: text: price_field: required: false example: price selector: text: level_field: required: false selector: text: rating_level_field: required: false selector: text: average_field: required: false selector: text: energy_field: required: false selector: text: tax_field: required: false selector: text: arrays_of_arrays: collapsed: true fields: array_fields: required: false selector: text: refresh_user_data: fields: entry_id: required: false example: "1234567890abcdef" selector: config_entry: integration: tibber_prices find_cheapest_block: fields: entry_id: required: false example: "1234567890abcdef" selector: config_entry: integration: tibber_prices duration: required: true selector: duration: search_scope: required: false selector: select: options: - today - tomorrow - remaining_today - next_24h - next_48h translation_key: search_scope include_current_interval: required: false default: true selector: boolean: search_range: collapsed: true fields: search_start: required: false example: "2026-04-11T06:00:00+02:00" selector: datetime: search_end: required: false example: "2026-04-12T00:00:00+02:00" selector: datetime: must_finish_by: required: false example: "2026-04-12T07:00:00+02:00" selector: datetime: time_alternatives: collapsed: true fields: search_start_time: required: false example: "06:00:00" selector: time: search_start_day_offset: required: false default: 0 selector: number: min: -7 max: 2 mode: box search_end_time: required: false example: "23:00:00" selector: time: search_end_day_offset: required: false default: 0 selector: number: min: -7 max: 2 mode: box search_start_offset_minutes: required: false example: 60 selector: number: min: -10080 max: 10080 unit_of_measurement: min mode: box search_end_offset_minutes: required: false example: 480 selector: number: min: -10080 max: 10080 unit_of_measurement: min mode: box price_filter: collapsed: true fields: max_price_level: required: false selector: select: options: - very_cheap - cheap - normal - expensive - very_expensive translation_key: level_filter min_price_level: required: false selector: select: options: - very_cheap - cheap - normal - expensive - very_expensive translation_key: level_filter search_tuning: collapsed: true fields: smooth_outliers: required: false default: true selector: boolean: min_distance_from_avg: required: false selector: number: min: 0.1 max: 50.0 step: 0.1 unit_of_measurement: "%" mode: box allow_relaxation: required: false default: true selector: boolean: duration_flexibility_minutes: required: false selector: number: min: 0 max: 120 step: 15 unit_of_measurement: "min" mode: box cost_estimation: collapsed: true fields: power_profile: required: false selector: object: output: collapsed: true fields: include_comparison_details: required: false selector: boolean: use_base_unit: required: false selector: boolean: find_most_expensive_block: fields: entry_id: required: false example: "1234567890abcdef" selector: config_entry: integration: tibber_prices duration: required: true selector: duration: search_scope: required: false selector: select: options: - today - tomorrow - remaining_today - next_24h - next_48h translation_key: search_scope include_current_interval: required: false default: true selector: boolean: search_range: collapsed: true fields: search_start: required: false example: "2026-04-11T06:00:00+02:00" selector: datetime: search_end: required: false example: "2026-04-12T00:00:00+02:00" selector: datetime: must_finish_by: required: false example: "2026-04-12T07:00:00+02:00" selector: datetime: time_alternatives: collapsed: true fields: search_start_time: required: false example: "06:00:00" selector: time: search_start_day_offset: required: false default: 0 selector: number: min: -7 max: 2 mode: box search_end_time: required: false example: "23:00:00" selector: time: search_end_day_offset: required: false default: 0 selector: number: min: -7 max: 2 mode: box search_start_offset_minutes: required: false example: 60 selector: number: min: -10080 max: 10080 unit_of_measurement: min mode: box search_end_offset_minutes: required: false example: 480 selector: number: min: -10080 max: 10080 unit_of_measurement: min mode: box price_filter: collapsed: true fields: max_price_level: required: false selector: select: options: - very_cheap - cheap - normal - expensive - very_expensive translation_key: level_filter min_price_level: required: false selector: select: options: - very_cheap - cheap - normal - expensive - very_expensive translation_key: level_filter search_tuning: collapsed: true fields: smooth_outliers: required: false default: true selector: boolean: min_distance_from_avg: required: false selector: number: min: 0.1 max: 50.0 step: 0.1 unit_of_measurement: "%" mode: box allow_relaxation: required: false default: true selector: boolean: duration_flexibility_minutes: required: false selector: number: min: 0 max: 120 step: 15 unit_of_measurement: "min" mode: box cost_estimation: collapsed: true fields: power_profile: required: false selector: object: output: collapsed: true fields: include_comparison_details: required: false selector: boolean: use_base_unit: required: false selector: boolean: find_cheapest_hours: fields: entry_id: required: false example: "1234567890abcdef" selector: config_entry: integration: tibber_prices duration: required: true selector: duration: min_segment_duration: required: false selector: duration: search_scope: required: false selector: select: options: - today - tomorrow - remaining_today - next_24h - next_48h translation_key: search_scope include_current_interval: required: false default: true selector: boolean: search_range: collapsed: true fields: search_start: required: false example: "2026-04-11T06:00:00+02:00" selector: datetime: search_end: required: false example: "2026-04-12T00:00:00+02:00" selector: datetime: must_finish_by: required: false example: "2026-04-12T07:00:00+02:00" selector: datetime: time_alternatives: collapsed: true fields: search_start_time: required: false example: "06:00:00" selector: time: search_start_day_offset: required: false default: 0 selector: number: min: -7 max: 2 mode: box search_end_time: required: false example: "23:00:00" selector: time: search_end_day_offset: required: false default: 0 selector: number: min: -7 max: 2 mode: box search_start_offset_minutes: required: false example: 60 selector: number: min: -10080 max: 10080 unit_of_measurement: min mode: box search_end_offset_minutes: required: false example: 480 selector: number: min: -10080 max: 10080 unit_of_measurement: min mode: box price_filter: collapsed: true fields: max_price_level: required: false selector: select: options: - very_cheap - cheap - normal - expensive - very_expensive translation_key: level_filter min_price_level: required: false selector: select: options: - very_cheap - cheap - normal - expensive - very_expensive translation_key: level_filter search_tuning: collapsed: true fields: smooth_outliers: required: false default: true selector: boolean: min_distance_from_avg: required: false selector: number: min: 0.1 max: 50.0 step: 0.1 unit_of_measurement: "%" mode: box allow_relaxation: required: false default: true selector: boolean: duration_flexibility_minutes: required: false selector: number: min: 0 max: 120 step: 15 unit_of_measurement: "min" mode: box cost_estimation: collapsed: true fields: power_profile: required: false selector: object: output: collapsed: true fields: include_comparison_details: required: false selector: boolean: use_base_unit: required: false selector: boolean: find_most_expensive_hours: fields: entry_id: required: false example: "1234567890abcdef" selector: config_entry: integration: tibber_prices duration: required: true selector: duration: min_segment_duration: required: false selector: duration: search_scope: required: false selector: select: options: - today - tomorrow - remaining_today - next_24h - next_48h translation_key: search_scope include_current_interval: required: false default: true selector: boolean: search_range: collapsed: true fields: search_start: required: false example: "2026-04-11T06:00:00+02:00" selector: datetime: search_end: required: false example: "2026-04-12T00:00:00+02:00" selector: datetime: must_finish_by: required: false example: "2026-04-12T07:00:00+02:00" selector: datetime: time_alternatives: collapsed: true fields: search_start_time: required: false example: "06:00:00" selector: time: search_start_day_offset: required: false default: 0 selector: number: min: -7 max: 2 mode: box search_end_time: required: false example: "23:00:00" selector: time: search_end_day_offset: required: false default: 0 selector: number: min: -7 max: 2 mode: box search_start_offset_minutes: required: false example: 60 selector: number: min: -10080 max: 10080 unit_of_measurement: min mode: box search_end_offset_minutes: required: false example: 480 selector: number: min: -10080 max: 10080 unit_of_measurement: min mode: box price_filter: collapsed: true fields: max_price_level: required: false selector: select: options: - very_cheap - cheap - normal - expensive - very_expensive translation_key: level_filter min_price_level: required: false selector: select: options: - very_cheap - cheap - normal - expensive - very_expensive translation_key: level_filter search_tuning: collapsed: true fields: smooth_outliers: required: false default: true selector: boolean: min_distance_from_avg: required: false selector: number: min: 0.1 max: 50.0 step: 0.1 unit_of_measurement: "%" mode: box allow_relaxation: required: false default: true selector: boolean: duration_flexibility_minutes: required: false selector: number: min: 0 max: 120 step: 15 unit_of_measurement: "min" mode: box cost_estimation: collapsed: true fields: power_profile: required: false selector: object: output: collapsed: true fields: include_comparison_details: required: false selector: boolean: use_base_unit: required: false selector: boolean: find_cheapest_schedule: fields: entry_id: required: false example: "1234567890abcdef" selector: config_entry: integration: tibber_prices tasks: required: true example: '[{"name": "dishwasher", "duration": "02:00:00"}, {"name": "washing_machine", "duration": "01:30:00"}]' selector: object: gap_minutes: required: false default: 0 selector: number: min: 0 max: 120 unit_of_measurement: min mode: box sequential: required: false default: false selector: boolean: search_scope: required: false selector: select: options: - today - tomorrow - remaining_today - next_24h - next_48h translation_key: search_scope include_current_interval: required: false default: true selector: boolean: search_range: collapsed: true fields: search_start: required: false example: "2026-04-11T06:00:00+02:00" selector: datetime: search_end: required: false example: "2026-04-12T00:00:00+02:00" selector: datetime: must_finish_by: required: false example: "2026-04-12T07:00:00+02:00" selector: datetime: time_alternatives: collapsed: true fields: search_start_time: required: false example: "06:00:00" selector: time: search_start_day_offset: required: false default: 0 selector: number: min: -7 max: 2 mode: box search_end_time: required: false example: "23:00:00" selector: time: search_end_day_offset: required: false default: 0 selector: number: min: -7 max: 2 mode: box search_start_offset_minutes: required: false example: 60 selector: number: min: -10080 max: 10080 unit_of_measurement: min mode: box search_end_offset_minutes: required: false example: 480 selector: number: min: -10080 max: 10080 unit_of_measurement: min mode: box price_filter: collapsed: true fields: max_price_level: required: false selector: select: options: - very_cheap - cheap - normal - expensive - very_expensive translation_key: level_filter min_price_level: required: false selector: select: options: - very_cheap - cheap - normal - expensive - very_expensive translation_key: level_filter search_tuning: collapsed: true fields: smooth_outliers: required: false default: true selector: boolean: allow_relaxation: required: false default: true selector: boolean: duration_flexibility_minutes: required: false selector: number: min: 0 max: 120 step: 15 unit_of_measurement: "min" mode: box output: collapsed: true fields: include_comparison_details: required: false selector: boolean: use_base_unit: required: false selector: boolean: plan_charging: fields: entry_id: required: false example: "1234567890abcdef" selector: config_entry: integration: tibber_prices battery: collapsed: false fields: max_charge_power_w: required: true example: 11000 selector: number: min: 1 max: 100000 step: 100 unit_of_measurement: "W" mode: box battery_capacity_kwh: required: false example: 50.0 selector: number: min: 0.1 max: 1000 step: 0.1 unit_of_measurement: "kWh" mode: box current_soc_percent: required: false example: 20 selector: number: min: 0 max: 100 step: 0.1 unit_of_measurement: "%" mode: box current_soc_kwh: required: false example: 10.0 selector: number: min: 0 max: 1000 step: 0.1 unit_of_measurement: "kWh" mode: box target_soc_percent: required: false example: 80 selector: number: min: 0 max: 100 step: 0.1 unit_of_measurement: "%" mode: box target_soc_kwh: required: false example: 40.0 selector: number: min: 0 max: 1000 step: 0.1 unit_of_measurement: "kWh" mode: box charging_efficiency: required: false default: 1.0 selector: number: min: 0.5 max: 1.0 step: 0.01 mode: box charging: collapsed: true fields: min_charge_power_w: required: false example: 1400 selector: number: min: 1 max: 100000 step: 100 unit_of_measurement: "W" mode: box charge_power_steps_w: required: false example: [1380, 4140, 11000] selector: object: grid_import_limit_w: required: false example: 16000 selector: number: min: 1 max: 100000 step: 100 unit_of_measurement: "W" mode: box min_charge_duration_minutes: required: false example: 30 selector: number: min: 15 max: 240 step: 15 unit_of_measurement: "min" mode: box max_cycles_per_day: required: false example: 2 selector: number: min: 1 max: 20 step: 1 mode: box search_scope: required: false selector: select: options: - today - tomorrow - remaining_today - next_24h - next_48h translation_key: search_scope include_current_interval: required: false default: true selector: boolean: search_range: collapsed: true fields: search_start: required: false example: "2026-04-11T06:00:00+02:00" selector: datetime: search_end: required: false example: "2026-04-12T00:00:00+02:00" selector: datetime: must_finish_by: required: false example: "2026-04-12T07:00:00+02:00" selector: datetime: deadline: collapsed: true fields: must_reach_soc_percent: required: false example: 50 selector: number: min: 0 max: 100 step: 0.1 unit_of_measurement: "%" mode: box must_reach_soc_kwh: required: false example: 25.0 selector: number: min: 0 max: 1000 step: 0.1 unit_of_measurement: "kWh" mode: box must_reach_by: required: false example: "2026-04-11T17:00:00+02:00" selector: datetime: must_reach_by_event: required: false selector: select: options: - midnight - next_peak_period - next_best_period_end translation_key: charging_deadline_event time_alternatives: collapsed: true fields: search_start_time: required: false example: "06:00:00" selector: time: search_start_day_offset: required: false default: 0 selector: number: min: -7 max: 2 mode: box search_end_time: required: false example: "23:00:00" selector: time: search_end_day_offset: required: false default: 0 selector: number: min: -7 max: 2 mode: box search_start_offset_minutes: required: false example: 60 selector: number: min: -10080 max: 10080 unit_of_measurement: min mode: box search_end_offset_minutes: required: false example: 480 selector: number: min: -10080 max: 10080 unit_of_measurement: min mode: box price_filter: collapsed: true fields: max_price_level: required: false selector: select: options: - very_cheap - cheap - normal - expensive - very_expensive translation_key: level_filter min_price_level: required: false selector: select: options: - very_cheap - cheap - normal - expensive - very_expensive translation_key: level_filter search_tuning: collapsed: true fields: smooth_outliers: required: false default: true selector: boolean: min_distance_from_avg: required: false selector: number: min: 0.1 max: 50.0 step: 0.1 unit_of_measurement: "%" mode: box allow_relaxation: required: false default: true selector: boolean: duration_flexibility_minutes: required: false selector: number: min: 0 max: 120 step: 15 unit_of_measurement: "min" mode: box economics: collapsed: true fields: discharging_efficiency: required: false default: 1.0 selector: number: min: 0.5 max: 1.0 step: 0.01 mode: box expected_discharge_price: required: false example: 0.28 selector: number: min: 0 max: 100000 step: 0.0001 mode: box reserve_for_discharge: required: false default: false selector: boolean: max_cost_per_kwh: required: false example: 0.18 selector: number: min: 0 max: 100000 step: 0.0001 mode: box output: collapsed: true fields: include_comparison_details: required: false selector: boolean: use_base_unit: required: false selector: boolean: debug_clear_tomorrow: fields: entry_id: required: false example: "1234567890abcdef" selector: config_entry: integration: tibber_prices