# API Two API architectures are supported: WebSocket and REST. Both can be used with the same set of fields. Everything is propagated to the mesh network automatically. As everything can be controlled with topics, only two fields are required: - topic - payload ## Topics All functionality can be used by sending messages to these topics. | topic | type | payload | | ----- | ---- | ---- | | pixels/colorWheel | Integer | Value from 0 to 255 to cycle through all colors | | pixels/color | Integer | RGB color as integer. By calling this topic, all LEDs of the strip are set synchronously, stopping current running animation. | | pixels/color2 | Integer |RGB color as integer. Sets the second color used in animations. Does not stop current running animation. | | pixels/pattern | Integer | Value from 0 to 5 to set the current animation. Available animations: { NONE = 0, RAINBOW_CYCLE = 1, THEATER_CHASE = 2, COLOR_WIPE = 3, SCANNER = 4, FADE = 5 } | | pixels/totalSteps | Integer | Number of steps of an animation. | | pixels/brightness | Integer | Integer from 0 to 255 to set the overall brightness of the strip by bitshifting the current colors in memory. Use with caution as running the LEDs on full brightness requires a lot of power. | ## WebSocket Endpoint: /pixel Send a JSON String containing the mandatory fields. Example: ``` json { "topic": "pixels/color", "payload": 13505813 } ``` ## REST #### Endpoints Content-Type: application/x-www-form-urlencoded POST /pixel/api Request: Form post with topic and payload as fields Response: 200 + JSON message that was used to notify the topics