I found some older posts that were never resolved, so taking another shot.
I’m using this setup for Uber Eats notifications. The problem is this sensor:
- platform: rest
name: Uber Eats Orders JSON
unique_id: uber_eats_orders_json
json_attributes:
- feedCards
- activeOrderOverview
- contacts
- backgroundFeedCards
json_attributes_path: "$.data.orders[0]"
resource: https://www.ubereats.com/api/getActiveOrdersV1
method: POST
headers:
Content-Type: application/json
X-CSRF-Token: x
Cookie: !secret uberCookie
payload: '{"timezone":"America/New_York"}'
force_update: true
value_template: >-
{{ now() }}
scan_interval: 86400
The issue is that when an order is placed, the API returns valid JSON and everything is great. However, when no order is in progress, the API returns this:
{
"status": "success",
"data": {
"orders": []
}
}
So ever time the scan interval comes up for a refresh or HA is restarted, I end up with errors in the logs.
2024-05-29 19:18:31.435 WARNING (MainThread) [homeassistant.components.rest.util] JSON result was not a dictionary or list with 0th element a dictionary
So, it’s a minor thing, but hoping someone can help nudge me along.