!!! hint While this API is not deprecated, it is highly recommended to use the JSON API instead of the HTTP API for new integrations, as it is structured in a better way and allows efficient use of newer features like segments, presets, and playlists.

WLED’s HTTP API allows you to set many properties of your lights, even more than the index page UI supports, via a simple GET web request.

!!! help Unsure how all this API stuff works? Check out this amazing guide by tynick!

The basic URL scheme is: [ipaddress]/win. This will return an XML file with some current values (see bottom of page). Parameters can be added to control some of the variables.

  • Example (AP): 192.168.4.1/win&A=255 sets the brightness to maximum
  • Example (mdns): led.local/win&A=128&FX=0 sets the brightness to half and the effect to Solid

In conjunction with a router port forwarding this can be used to automate WLED, for example via IFTTT.

Add one or multiple of the following parameters after the base URL/IP to change values: (if the parameter is unknown or the value illegal nothing will happen)

LED control

Parameter Value Range Description Since Version
&A= 0 to 255 Master brightness 0.2
&T= 0, 1, or 2 Master Off/On/Toggle 0.3
&R= 0 to 255 Primary Red value 0.2
&G= 0 to 255 Primary Green value 0.2
&B= 0 to 255 Primary Blue value 0.2
&W= 0 to 255 Primary White value 0.4
&FX= 0 to 101 LED Effect Index 0.3
&SX= 0 to 255 Effect Speed 0.3
&IX= 0 to 255 Effect Intensity 0.5.0
&FP= 0 to 46 FastLED Palette 0.8.0
&NL= 0 to 255 Nightlight active and duration in minutes 0.3
&ND none Toggles nightlight on but uses default duration 0.6.3
&NT= 0 to 255 Nightlight target brightness 0.5.0
&NF= 0 to 2 Fade Nightlight, 1 = fade brightness only, 2 = additionaly fade color from primary to secondary color 0.5.0

Advanced

Parameter Value Range Description Since Version
&CL= HEX/DEC Primary color 0.8.0
&C2= HEX/DEC Secondary color 0.8.0
&C3= HEX/DEC Third color 0.8.0
&R2= 0 to 255 Secondary Red value 0.4
&G2= 0 to 255 Secondary Green value 0.4
&B2= 0 to 255 Secondary Blue value 0.4
&W2= 0 to 255 Secondary White value 0.4
&HU= 0 to 65535 Hue 0.5.1
&SA= 0 to 255 Saturation (only in conjunction with Hue) 0.5.1
&H2 none Hue + Saturation will set secondary color 0.5.1
&SR= 0 or 1 Set Primary/Secondary color to random hue 0.4
&SC none Swap primary and secondary color 0.4

Use of hex values

Hex values need to be prefaced with the character h or H. The normal format is RRGGBB. If the led strip is RGBW, the hex format is WWRRGGBB. Note: In the UI the format is RRGGBBWW, so the values cannot be copied without a transformation.

Loxone commands

Loxone offers two commands. One for RGB values and one for brightness and color temperature.

Parameter Syntax Range Description Since Version
&LX= BBBGGGRRR 0 - 100100100 Loxone RGB value for primary color. Each color (RRR,GGG,BBB) is specified in the range from 0 to 100%. 0.11
&LX= 20bbbtttt 200002700 - 201006500 Loxone brightness and color temperature values for primary color. Brightness bbb is specified in the range 0 to 100%. tttt defines the color temperature in the range from 2700 to 6500 Kelvin. 0.11
&LY= BBBGGGRRR 0 - 100100100 Loxone RGB value for secondary color. Each color (RRR,GGG,BBB) is specified in the range from 0 to 100%. 0.11
&LY= 20bbbtttt 200002700 - 201006500 Loxone brightness and color temperature values for secondary color. Brightness bbb is specified in the range 0 to 100%. tttt defines the color temperature in the range from 2700 to 6500 Kelvin. 0.11

Notifications

Parameter Value Range Description Since Version
&RN= 0 or 1 Receive UDP Notifications 0.3
&SN= 0 or 1 Send UDP Notifications 0.3
&NN none No notification for this request 0.3
&HP= 0 to 99 Sets Hue polling light ID (0 is off) 0.5.1

Presets

Parameter Value Range Description Since Version
&PS= 1 to 16 Saves current setup to preset. Preset 255 can be used and is temporary/not persistent. 0.4
&PL= 1 to 250 Applies entire preset 0.4
&P1= 1 to 249 First cycle preset 0.6.3
&P2= 2 to 250 Last cycle preset 0.6.3
&TT= 0 to 65000 Set transition time (ms) 0.6.3

Macros

Parameter Value Range Description Since Version
&M= 1 to 16 Apply macro (deprecated, added for compatibility with pre-0.11 automations) 0.5.0

Segments

It is highly recommended to use the JSON API when dealing with Segments.

Parameter Value Range Description Since Version
&SM= 0 to 9 Set the main segment (values are reported to XML) 0.9.0
&SS= 0 to 9 Select segment to apply THIS api call to 0.9.0
&SV= 0, 1, or 2 Set segment selected (2 unselects others) 0.9.0
&S= 0 to ledcount-1 Set segment start 0.9.0
&S2= 0 to ledcount Set segment stop 0.9.0
&GP= 1 to 255 Set segment grouping 0.9.1
&SP= 0 to 255 Set segment spacing 0.9.1
&RV= 0 or 1 Reverse/Flip Segment direction 0.9.1
&SB= 0 to 255 Segment brightness 0.10.0

General and Experimental

Parameter Value Range Description Since Version
&RB none Reboot WLED 0.10.0 (?)
&ST= 32bit Current UTC time in Unix epoch 0.4
&CT= 32bit UTC time for countdown end 0.4
&MD= 0 or 1 Set slider mode to RGB/HSB 0.3
&AX= 0 to 255 Debug feature, can be configured for general IO 0.3
&IN none Server will not respond to this request (internal) 0.3
&OL= 0 to 255 Experimental overlays 0.3
&L= 0 to 255 Lock pixel 0.4
&L2= 0 to 255 Lock pixel range L to L2 0.4
&UL none Unlock instead (used in conjunction with L and L2) 0.4
&NX= String 1..6 Cronixie clockface 0.4
&NM= 0 or 1 Cronixie Time or Countdown mode 0.4
&NB= 0 or 1 Cronixie Backlight 0.4
&IT none Include UI color theme in API response 0.8.2
&RD= 0 or 1 Toggle realtime UDP 0.8.4
&LO= 0-2 Live data override. 0 is off, 1 is override until live data ends, 2 is override until ESP reboot 0.10.2
&NP none Advance to the next preset in a playlist 0.15

XML response

This is the XML file sent as response to every API call.

Parameter Value Range Description
ac 0 to 255 Master Brightness
cl 3x 0..255 Primary Color RGB
cs 3x 0..255 Secondary RGB
ns 0 or 1 Notification Sending on
nr 0 or 1 Notification Receive on
nl 0 or 1 Nightlight active
nf 0 or 2 Nightlight Fade type
nd 0 to 255 Nightlight delay
nt 0 to 255 Nightlight target brightness
fx 0 to 73 Effect index
sx 0 to 255 Effect speed
ix 0 to 255 Effect intensity
fp 0 to 43 FastLED palette
wv -1 to 255 Primary White value
ws 0 to 255 Secondary White
ps 0 to 255 Current Preset
cy 0 or 1 Preset Cycling enabled
md 0 or 1 RGB or HSB UI mode
ds String 0..32 Server description
ss 0 to 12 Segment ID

In-/decrementing values

You can use the ~ character to easily set values relative to their current value.
This is currently supported for the following parameters:
A, R, G, B, W, R2, G2, B2, W2, FX, SX, IX, FP, PL

For example, use PL=~ to go to the next preset. Using just ~ without a number will increase the value by 1, ~- will decrease it by 1. The value will then wrap around, so using A=~- when A is 0 will set A to 255.

You can also specify by how much to change the value. For example, using A=~10 will increase the brightness by 10. In case of using a number behind ~, the value will clip (so it will not wrap around, if the maximum brightness is set, A=~10 will not have any effect)

To setup a Macro for a Button to advance to the next Preset, use win&P1=1&P2=30&PL=~
P1 will equal the first Preset of the rotation while P2 will be the last Preset.