Power Off

Power off your AC

Request Headers

Accept

application/json

Request Parameters

room_name

string

The name of the room where the Ambi Climate device resides.


location_name

string

The name of the location where the room_name exists.


multiple

boolean

Turn off all devices at specified location_name. Defaults to 'False'.


GET /api/v1/device/power/off

        curl "https://api.ambiclimate.com/api/v1/device/power/off" \
  -X GET -G \
  -H "Accept: application/json" \
  -H "Authorization: Bearer <Your Authorization Token>" \
  -d 'room_name=Living%20Room' \
  -d 'location_name=Home' \
  -d 'multiple=True' \
  
      

Example Response

        {
  "status": "ok"
}

      

Comfort Mode

Enable Comfort mode on your AC

Request Headers

Accept

application/json

Request Parameters

room_name

string

The name of the room where the Ambi Climate device resides.


location_name

string

The name of the location where the room_name exists.


multiple

boolean

Turn on Comfort mode for all devices at specified location_name. Defaults to 'False'.


GET /api/v1/device/mode/comfort

        curl "https://api.ambiclimate.com/api/v1/device/mode/comfort" \
  -X GET -G \
  -H "Accept: application/json" \
  -H "Authorization: Bearer <Your Authorization Token>" \
  -d 'room_name=Master%20Bedroom' \
  -d 'location_name=Home' \
  -d 'multiple=True' \
  
      

Example Response

        {
  "status": "ok"
}

      

Comfort Mode Feedback

Send feedback for Comfort mode

Request Headers

Accept

application/json

Request Parameters

room_name

string

The name of the room where the Ambi Climate device resides.


location_name

string

The name of the location where the room_name exists.


value

integer

Send any of the following comfort values: too_hot | too_warm | bit_warm | comfortable | bit_cold | too_cold | freezing


GET /api/v1/user/feedback

        curl "https://api.ambiclimate.com/api/v1/user/feedback" \
  -X GET -G \
  -H "Accept: application/json" \
  -H "Authorization: Bearer <Your Authorization Token>" \
  -d 'room_name=Master%20Bedroom' \
  -d 'location_name=Home' \
  -d 'value=comfortable' \
  
      

Example Response

        {
  "status": "ok"
}

      

Away_Temperature_Lower

Enable Away mode and set an lower bound for temperature. Ambi will try to keep temperature above the lower bound.

Request Headers

Accept

application/json

Request Parameters

room_name

string

The name of the room where the Ambi Climate device resides.


location_name

string

The name of the location where the room_name exists.


value

integer

Target value in celsius


multiple

boolean

Turn on Comfort mode for all devices at specified location_name. Defaults to 'False'.


GET /api/v1/device/mode/away_temperature_lower

        curl "https://api.ambiclimate.com/api/v1/device/mode/away_temperature_lower" \
  -X GET -G \
  -H "Accept: application/json" \
  -H "Authorization: Bearer <Your Authorization Token>" \
  -d 'room_name=Master%20Bedroom' \
  -d 'location_name=Home' \
  -d 'value=27' \
  -d 'multiple=True' \
  
      

Example Response

        {
  "status": "ok"
}

      

Away_Temperature_Upper

Enable Away mode and set an upper bound for temperature. Ambi will try to keep temperature below the upper bound.

Request Headers

Accept

application/json

Request Parameters

room_name

string

The name of the room where the Ambi Climate device resides.


location_name

string

The name of the location where the room_name exists.


value

integer

Target value in celsius


multiple

boolean

Turn on Comfort mode for all devices at specified location_name. Defaults to 'False'.


GET /api/v1/device/mode/away_temperature_upper

        curl "https://api.ambiclimate.com/api/v1/device/mode/away_temperature_upper" \
  -X GET -G \
  -H "Accept: application/json" \
  -H "Authorization: Bearer <Your Authorization Token>" \
  -d 'room_name=Master%20Bedroom' \
  -d 'location_name=Home' \
  -d 'value=23' \
  -d 'multiple=True' \
  
      

Example Response

        {
  "status": "ok"
}

      

Away_Humidity_Upper

Enable Away mode and set an upper bound for humidity. Ambi will try to keep humidity below the upper bound.

Request Headers

Accept

application/json

Request Parameters

room_name

string

The name of the room where the Ambi Climate device resides.


location_name

string

The name of the location where the room_name exists.


value

integer

Target value in percent relative humidity


multiple

boolean

Turn on Comfort mode for all devices at specified location_name. Defaults to 'False'.


GET /api/v1/device/mode/away_humidity_upper

        curl "https://api.ambiclimate.com/api/v1/device/mode/away_humidity_upper" \
  -X GET -G \
  -H "Accept: application/json" \
  -H "Authorization: Bearer <Your Authorization Token>" \
  -d 'room_name=Master%20Bedroom' \
  -d 'location_name=Home' \
  -d 'value=70' \
  -d 'multiple=True' \
  
      

Example Response

        {
  "status": "ok"
}

      

Temperature Mode

Enable Temperature mode on your AC

Request Headers

Accept

application/json

Request Parameters

room_name

string

The name of the room where the Ambi Climate device resides.


location_name

string

The name of the location where the room_name exists.


value

integer

Target value in celsius


multiple

boolean

Turn on Comfort mode for all devices at specified location_name. Defaults to 'False'.


GET /api/v1/device/mode/temperature

        curl "https://api.ambiclimate.com/api/v1/device/mode/temperature" \
  -X GET -G \
  -H "Accept: application/json" \
  -H "Authorization: Bearer <Your Authorization Token>" \
  -d 'room_name=Master%20Bedroom' \
  -d 'location_name=Home' \
  -d 'value=24' \
  -d 'multiple=True' \
  
      

Example Response

        {
  "status": "ok"
}

      

Sensor Temperature

Get latest sensor temperature data

Request Headers

Accept

application/json

Request Parameters

room_name

string

The name of the room where the Ambi Climate device resides.


location_name

string

The name of the location where the room_name exists.


GET /api/v1/device/sensor/temperature

        curl "https://api.ambiclimate.com/api/v1/device/sensor/temperature" \
  -X GET -G \
  -H "Accept: application/json" \
  -H "Authorization: Bearer <Your Authorization Token>" \
  -d 'room_name=Master%20Bedroom' \
  -d 'location_name=Home' \
  
      

Example Response

        [
  {
    "created_on": "2016-08-19T08:08:01+00:00",
    "value": 28.970001220703125
  }
]

      

Sensor Humidity

Get latest sensor humidity data

Request Headers

Accept

application/json

Request Parameters

room_name

string

The name of the room where the Ambi Climate device resides.


location_name

string

The name of the location where the room_name exists.


GET /api/v1/device/sensor/humidity

        curl "https://api.ambiclimate.com/api/v1/device/sensor/humidity" \
  -X GET -G \
  -H "Accept: application/json" \
  -H "Authorization: Bearer <Your Authorization Token>" \
  -d 'room_name=Master%20Bedroom' \
  -d 'location_name=Home' \
  
      

Example Response

        [
  {
    "created_on": "2016-08-19T08:09:01+00:00",
    "value": 68.08000183105469
  }
]

      

Mode

Get Ambi Climate's current working mode

Request Headers

Accept

application/json

Request Parameters

room_name

string

The name of the room where the Ambi Climate device resides.


location_name

string

The name of the location where the room_name exists.


Remarks

Available modes are:
Away_Humidity_Upper: Away mode, keep humidity below value(0 - 100, float).
Away_Temperature_Lower: Away mode, keep temperature above value(float, Celsius).
Away_Temperature_Upper: Away mode, keep temperature below value(float, Celsius).
Comfort: Comfort mode, the value field should be ignored.
Manual: Manual mode, the value field should be ignored.
Off: A/C was turned off by timer, the value field should be ignored.
Temperature: Temperature mode, keep temperature at value (float, Celsius).

GET /api/v1/device/mode

        curl "https://api.ambiclimate.com/api/v1/device/mode" \
  -X GET -G \
  -H "Accept: application/json" \
  -H "Authorization: Bearer <Your Authorization Token>" \
  -d 'room_name=Master%20Bedroom' \
  -d 'location_name=Home' \
  
      

Example Response

        {
  "mode": "Comfort",
  "value": null
}

      

Appliance States

Get Ambi Climate's last N appliance states

Request Headers

Accept

application/json

Request Parameters

room_name

string

The name of the room where the Ambi Climate device resides.


location_name

string

The name of the location where the room_name exists.


limit

integer

Number of appliance states return from the server.


offset

integer

Shift n slots of appliance state from the result


GET /api/v1/device/appliance_states

        curl "https://api.ambiclimate.com/api/v1/device/appliance_states" \
  -X GET -G \
  -H "Accept: application/json" \
  -H "Authorization: Bearer <Your Authorization Token>" \
  -d 'room_name=Master%20Bedroom' \
  -d 'location_name=Home' \
  -d 'limit=5' \
  -d 'offset=0' \
  
      

Example Response

        {
  "paging": {
    "limit": 5,
    "offset": 0
  }
  "data": [
    {
       "created_on": "2016-08-19T08:08:01+00:00",
       "fan": "Auto",
       "mode": "Cool",
       "power": "On",
       "swing": "",
       "temperature": 26
    },
    ...
  ],
  "error": null
}

      

Devices

Get users Ambi Climate device information

Request Headers

Accept

application/json

Request Parameters

GET /api/v1/devices

        curl "https://api.ambiclimate.com/api/v1/devices" \
  -X GET -G \
  -H "Accept: application/json" \
  -H "Authorization: Bearer <Your Authorization Token>" \
  
      

Example Response

        {
  "paging": null,
  "data": [
    {
      "device_id": "device id",
      "room_name": "Master Bedroom",
      "location_name": "Home"
    },
    ...
  ],
  "error": null
}

      

IR Feature

Get Ambi Climate's appliance IR feature

Request Headers

Accept

application/json

Request Parameters

room_name

string

The name of the room where the Ambi Climate device resides.


location_name

string

The name of the location where the room_name exists.


GET /api/v1/device/ir_feature

        curl "https://api.ambiclimate.com/api/v1/device/ir_feature" \
  -X GET -G \
  -H "Accept: application/json" \
  -H "Authorization: Bearer <Your Authorization Token>" \
  -d 'room_name=Master%20Bedroom' \
  -d 'location_name=Home' \
  
      

Example Response

        {
  "data": {
    "auto": {
      "fan": {
        "ftype": "select_option",
        "value": ["auto-auto"]
      },
      "louver": {
        "ftype": "select_option",
        "value": ["auto", "off"]
      },
      "temperature": {
        "ftype": "select_option",
        "value": ["17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30"]
      }
    },
    "cool": {
      "fan": {
        "ftype": "select_option",
          "value": ["auto", "high", "med", "low"]
      },
      "louver": {
        "ftype": "select_option",
          "value": ["auto", "off"]
      },
      "temperature": {
        "ftype": "select_option",
          "value": ["17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30"]
      }
    },
    "dry": {
      "fan": {
        "ftype": "select_option",
        "value": ["auto-auto"]
      },
      "louver": {
        "ftype": "select_option",
        "value": ["auto", "off"]
      },
      "temperature": {
        "ftype": "select_option",
        "value": ["17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30"]
      }
    },
  },
  "error": null,
  "paging": null
}

      

Deployment

Create deployment for appliance with Ambi Climate

Request Headers

Accept

application/json

Request Parameters

json

room_name, location_name, mode, power, feature (select from GET /ir_feature)


POST /api/v1/device/deployments

        curl "https://api.ambiclimate.com/api/v1/device/deployments" \
  -X POST -G \
  -H "Accept: application/json" \
  -H "Authorization: Bearer <Your Authorization Token>" \
  -d '{
  "room_name": "Master Bedroom",
  "location_name": "Home",
  "mode": "cool",
  "power": "on",
  "feature": {
    "temperature": 18,
    "fan": "med",
    "louver": "off"
  }
}
'
  
      

Example Response

        {
  "data": "success",
  "error": null,
  "paging": null
}