> How can you use external devices to control SPX?
SPX (v1.0.8+) [[Documentation/Graphics Controller/Rundown Settings|rundowns]] can be loaded and controlled with external devices using HTTP GET/POST commands. This enables integration with hardware controllers like Elgato Stream Deck, Bitfocus Companion, and custom automation systems.
---
## API Endpoint
The [[Documentation/Control Interfaces/REST/Overview of SPX API|SPX API]] is available at:
```
http://localhost:5656/api/v1
```
Visit this URL in your browser to see available API commands and documentation.
## Supported Devices
### Elgato Stream Deck
Control SPX from Elgato Stream Deck using HTTP requests. Create buttons that sends API commands to SPX.
Setup:
1. Drag "Website" from the System category to your Stream Deck
![[Screenshot 2026-03-11 at 10.52.44.png]]
2. Add the API call you want to have as the url and make sure you set the "Open with:" to "GET request in background" to avoid the browser being opened up every time you click the button. Also give the button a descriptive name.
![[Screenshot 2026-03-11 at 10.54.48.png]]
3. Repeat the process for all the API commands you want to add to your Stream Deck.
>[!IMPORTANT]- You can also use custom icons to make the look and feel of the Stream Deck look more like SPX
![[Screenshot 2026-03-11 at 10.56.57.png]]
### Bitfocus Companion
SPX can be used with Bitfocus Companion. Companion version 2 will have a built-in module with presets for SPX.
**Setup:**
1. Add HTTP request buttons in Companion
2. Configure API endpoints
3. Map to physical buttons
### Custom Automation
Build custom control systems using:
- HTTP libraries in any programming language
- REST API clients
- Webhook integrations
- Home automation systems
## API Documentation
For complete API documentation, visit:
```
http://localhost:5656/api/v1
```
Or see the [[Documentation/Control Interfaces/REST/Overview of SPX API|API Overview]] section.
## Knowledge Base Article
See the detailed article on using the SPX API:
**[[Overview of SPX API|SPX-API Documentation]]**
The article includes:
- Available API endpoints
- Request/response formats
- Example code
- Sample projects
## Common Use Cases
### Play/Stop Control
- Play selected item
- Stop current item
- Continue to next step
### Navigation
- Load specific rundown
- Navigate to next/previous item
- Jump to specific item
### Status Monitoring
- Get current item status
- Check rundown state
- Monitor playout status
## Sample Project
Download a sample project for developing your own custom SPX [[Documentation/Graphics Controller/Plugins & Extensions|Extensions]]:
Available through the Knowledge Base article or API documentation.
## OSC Protocol
> **OSC protocol** is not supported in SPX 1.0.x but will be added in a future version.
For now, use HTTP API for external control.
## Security Considerations
When exposing SPX API over network:
- Use authentication if available
- Restrict network access
- Use [[Documentation/Control Interfaces/HTTPS|HTTPS]] in production
- Monitor API usage
- Implement rate limiting if needed
---
## Read Next
- [[Documentation/Control Interfaces/REST/Overview of SPX API|REST API Overview]] - Complete API documentation
- [[Documentation/Control Interfaces/REST/Control api|Control API]] - Detailed API endpoints
- [[Documentation/Control Interfaces/TCP/Overview|TCP Protocol]] - TCP-based automation
- [[Documentation/Graphics Controller/Plugins & Extensions|Plugins & Extensions]] - Build custom extensions