Today we launched LIFX Developer Zone! This opens our latest firmware versions and cloud control for 3rd-party app and hardware developers.
We know that the most amazing ideas for LIFX are the ones we've not yet imagined. To make a light truly smart it's got to connect to the rest of the Internet - all of the Internet of Things. That's why we've devoted much effort to-date supporting the AllSeen Alliance and launching our successful Works With Nest and IFTTT integrations. We're now renewing our commitment to developers at large.
We know first hand how fun it is building new and exciting lighting experiences and we want everyone to be able to do the same.
So, what's new?
We believe in giving developers the raw tools you need to make your own experiences.
We've launched a cloud HTTP API service and open-sourced our LAN protocol docs. We're also devoting some resources to actively supporting the developer community. By tackling the top layer (a cloud API) in a nice & easy package and exposing the low-level packet format used to control our bulbs over Wi-Fi (LAN protocol), we're giving you the tools to build the rest: SDKs for every language under the sun.
Cloud HTTP API
In version 2 of our apps and firmware early this year we moved LIFX to full cloud connectivity. This allowed us to build a HTTP API that we make use of for things like IFTTT. We also started to slowly give people personal access to this HTTP API and eventually their own OAuth applications. The HTTP API gives developers a super easy way to integrate with LIFX lights with the only downside being the latency of the trip to and from the cloud.
See the HTTP API docs for more details. The docs include live API endpoint samples to control your own bulbs once you've generated a free access token. When you're ready to publish your own app for others to control their lights with you can request to setup an OAuth account with us.
Local LAN Protocol
When we re-engineered our internal SDKs fornew releases of our apps we realised that everyone has very different needs when it comes to SDKs. We didn't feel confident that there was a one size fits all solution possible and so instead we made plans to publicly release our LAN protocol documentation. We are really excited by this because for the first time it gives everyone the ability to write their own custom integration with LIFX lights. In the short time this documentation has been publicly available we have already seen several code implementations appear in different languages.
Supporting Developers
We have also launchedLIFX Developer Zone as the central point to find and discuss our dev documentation. Its there we'll publish all developer news and updates.
We will devote resources to handling incoming developer queries around our HTTP API and LAN protocol on LIFX Developer Zone forums. This will include simple questions like how does a specific command work all the way through to getting some advice on structuring your code to get the most out of LIFX lights.
We will be shutting down the @LIFXLabs Twitter account in favor of people using public forums at LIFX Developer Zone. We will not actively update our Android and iOS SDKs. We recognise there may be value in providing a light-weight wrapper around the protocol and API as reference implementations. The hot topic of debate is which language should we do this in to start with. We'd love to hear your opinion at LIFX Developer Zone!
We can't wait to see what you build. And we're really looking forward to supporting you along the way!