---
title: "Create Fan Hold"
method: POST
path: "/thermostats/{thermostatId}/fanHold"
tags: ["thermostats"]
---

# Create Fan Hold

`POST /thermostats/{thermostatId}/fanHold`

## Request

- Base URL: `https://api.sb.ecobee.com/api/v2`
- URL: `https://api.sb.ecobee.com/api/v2/thermostats/{thermostatId}/fanHold`
- Auth: OAuth 2
  - Client credentials
  - Token URL: `https://api.sb.ecobee.com/api/v2/token` scopes: `write:thermostat`

Creates a fan-only hold on the thermostat

## Request body

- FanHoldRequestBody
  - `fan` 'on' | 'auto', required
  - `type` 'indefinite' | 'nextTransition', required: An 'indefinite' hold indicates that the hold will continue until cancelled. A 'nextTransition' hold indicates that the hold will continue only until the next climate change on the thermostat schedule, eg, when the thermostat switches from 'away' to 'home'

## Response `201`

Success

- FanHoldResponse
  - `status` 'success'
  - `data` object
    - `fan` 'on' | 'auto'
    - `type` 'indefinite' | 'nextTransition': An 'indefinite' hold indicates that the hold will continue until cancelled. A 'nextTransition' hold indicates that the hold will continue only until the next climate change on the thermostat schedule, eg, when the thermostat switches from 'away' to 'home'

## Other responses

- `401`: Not authenticated
- `403`: Not authorized
- `404`: Not found
- `422`: Validation Failed
- `429`: Too many requests
- `500`: Internal server error
- `default`: Unexpected error

---

[API](https://skmtc.dev/ecobee/apis/ecobee-smartbuildings-public-api.md) - [All operations](https://skmtc.dev/ecobee/apis/ecobee-smartbuildings-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/ecobee/apis/ecobee-smartbuildings-public-api/revisions/d78d4fd5e1c6?raw)
