HoloBridge can be configured to expose its API on your local network, allowing access from other devices such as phones, tablets, or other computers on the same network.
Navigation: Home | Getting Started | API Reference | WebSocket | Plugins | Security | Network
By default, HoloBridge binds to 0.0.0.0, which means it listens on all available network interfaces. This allows the API to be accessed from:
192.168.1.x)The HOST environment variable controls which network interface(s) the server binds to:
# Bind to all interfaces (accessible from network) - DEFAULT
HOST=0.0.0.0
# Bind to localhost only (not accessible from network)
HOST=127.0.0.1
# Bind to a specific IP address
HOST=192.168.1.100
| Value | Description | Network Access |
|---|---|---|
0.0.0.0 |
All interfaces (default) | ✅ Yes |
127.0.0.1 |
Localhost only | ❌ No |
localhost |
Localhost only | ❌ No |
| Specific IP | Single interface | ✅ Yes (from that network) |
# Default port
PORT=3000
# Custom port
PORT=8080
When HoloBridge starts, it displays all available access URLs:
🌐 API server listening on 0.0.0.0:3000
Local: http://localhost:3000/api
Network: http://192.168.1.100:3000/api
API Docs: http://192.168.1.100:3000/api/docs
Plugin API: http://192.168.1.100:3000/api/plugins
WebSocket: ws://192.168.1.100:3000
Health: http://192.168.1.100:3000/health
The Network URL shows your local network IP address, which other devices on your network can use to access the API.
From another device on your network:
# Replace with your HoloBridge server's IP
curl -H "X-API-Key: your_api_key" http://192.168.1.100:3000/api/guilds
Connect to the WebSocket from any device:
import { io } from 'socket.io-client';
// Use the network IP address
const socket = io('http://192.168.1.100:3000', {
auth: {
apiKey: 'your_api_key'
}
});
socket.on('connect', () => {
console.log('Connected from remote device!');
});
Access the interactive API documentation from any browser on your network:
http://192.168.1.100:3000/api/docs
HoloBridge automatically detects and displays your local network IP. If you need to find it manually:
ipconfig
Look for "IPv4 Address" under your active network adapter.
# macOS
ipconfig getifaddr en0
# Linux
hostname -I | awk '{print $1}'
⚠️ Warning: Exposing the API on your network means any device on that network can potentially access it.
API_KEY requirementTo restrict access to localhost only:
HOST=127.0.0.1
To use scoped API keys with limited permissions:
API_KEYS=[
{"id":"mobile","name":"Mobile App","key":"mobile_xxx","scopes":["read:guilds","read:messages"]},
{"id":"admin","name":"Admin Only","key":"admin_xxx","scopes":["admin"]}
]
See the Security documentation for more details on API scopes.
When running in Docker, ensure port mapping is configured:
# docker-compose.yml
services:
holobridge:
ports:
- "3000:3000" # Maps host:container
environment:
- HOST=0.0.0.0
- PORT=3000
To restrict to localhost when using Docker:
services:
holobridge:
ports:
- "127.0.0.1:3000:3000" # Only accessible from host machine
0.0.0.0 or a specific network IP127.0.0.1X-API-Key header.env configurationAccess HoloBridge from your phone while developing a mobile Discord client:
// In your React Native / Flutter app
const API_URL = 'http://192.168.1.100:3000/api';
fetch(`${API_URL}/guilds`, {
headers: { 'X-API-Key': 'your_api_key' }
});
Run a Discord dashboard on multiple screens in your home or office, all connecting to a single HoloBridge instance.
Test your Discord integration from different devices without deploying to a server.