LIFX Developer Zone

Improving our Group/Location documentation


Hi everyone,

A while ago we released documentation for reading Groups and Locations from LIFX Bulbs. Today we are extending this to support to allow you to use the SetGroup and SetLocation message to alter the groups set on the our devices. These message will work on all LIFX bulbs that use a cloud aware firmware.

We are excited to see what you develop now these new features are available. As usual we are happy to answer any questions about these message on the forums in this thread or in your own threads.



While I appreciate the continued development, some of us find using UDP way too complicated for simple use cases and simple scripts, and not at all useful for web development. When are we going to see some updates or new features in the HTTP API?


dougc84 - I highly recommend using this friendly python library to abstract you from the complexity. It’s constantly being updated, has a large userbase, and it’s very easy to use:


A python library is all great and good, but UDP limits yourself to local
network development, and python limits you to, well, python. I’m a ruby and
node dev, so python isn’t an acceptable option.

  • doug


What about ?


I know that’s available (and there is no actively-maintained Ruby library
available, which is flat-out depressing), but you’re missing the point.
UDP is great for local networking, not web development. The HTTP API
hasn’t seen an update in a long, long time, since before the Z strips came
out. I would love to build a web interface but Lifx is making it
increasingly difficult to support their products remotely.


The last update to the HTTP API added waveforms for support of the LIFX Z.

We currently do not have any updates to the HTTP API planned but I would love to hear what features you need to be able to implement a LIFX web interface?


Adding ability to rename bulbs over HTTP and move them around groups would be fantastic! It’d give a lot of power to another app that currently, only the mobile app has available.


This is a bit different than writing a web interface, but I was programming some spooky light randomizations for Halloween, and I need access to the schedule for when the front porch lights come on.

Either I need access to the scheduled tasks, or I need access to the service you’re using to determine sunrise and sunset.

Now, I might be getting ahead of myself here since it might not matter. If I use the breathe effect for example, I could just make sure power_on is set to false, and it’ll only trigger when the lights are on.

Another thing cool would be the ability to mimic the app effects such as Spooky. My implementation is pretty jarring. From what I’m seeing, it looks to be using Breathe, but I have no clue exactly how it does it so it looks that good.


Anything can do with the LAN protocol should be possible with the http api.