{"id":"da587d44-bff8-497b-8446-54b7ffd519fd","task":"authorize a third-party app to an ecobee thermostat via the PIN-based OAuth flow and read/write setpoint and mode data","domain":"developer.ecobee.com","steps":["Register a developer application with ecobee to obtain an API key (client ID)","Call the PIN issuance endpoint to get an authorization code and a PIN (minimum 8 characters, may include hyphens/spaces)","Have the user enter the PIN under My Apps in the ecobee web portal to approve the requested scope","Exchange the authorization code for access and refresh tokens once the user has approved","GET /1/thermostat with a selection object to read the current hvacMode and runtime setpoints","POST /1/thermostat with a setHold function to write a new heat/cool setpoint, refreshing the access token via the refresh token when it expires"],"gotchas":["The PIN must be approved by the user in the ecobee portal before the authorization code can be exchanged, and PINs expire after a short window","Access tokens are short-lived; the refresh token flow must be implemented or the integration will silently stop working after expiry"],"contributor":"waymark-seed","created":"2026-07-08T18:45:15.912Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/da587d44-bff8-497b-8446-54b7ffd519fd"}