Authentication
Learn how to authenticate and manage your Signaloid CLI credentials.
Authentication Methods
Signaloid CLI supports two authentication methods:
- API Key (Recommended) - Use a Signaloid API key
- Email/Password - Use your Signaloid account credentials
API Key Authentication
Getting an API Key
- Log in to signaloid.io
- Navigate to Settings → Cloud Engine API
- Click "Generate New Key"
- Copy the key immediately (you won't be able to see it again)
Login with API Key
signaloid-cli auth login --api-key YOUR_API_KEY
Example:
signaloid-cli auth login --api-key scce_1234567890abcdef
Output:
✔ API key authenticated
Hello!
API keys are the recommended authentication method because they:
- Don't require storing passwords
- Can be easily revoked if compromised
- Are more secure for automation and CI/CD
Email/Password Authentication
Provide credentials via command-line options:
signaloid-cli auth login --email john.doe@example.com --password YOUR_PASSWORD
Using passwords in command-line arguments may expose them in shell history. Use API keys for better security, especially in scripts.
Managing Authentication
Check Current User
Verify who you're logged in as:
signaloid-cli auth whoami
Output:
{
"id": "user_abc123",
"name": "John Doe",
"email": "john.doe@example.com",
"created": "2025-01-01T00:00:00Z"
}
Logout
Clear your local authentication:
signaloid-cli auth logout
Output:
✔ Logged out locally
- API key mode: Removes stored API key from config
- User/password mode: Logs out from server AND removes local config
Environment Variables
Override Config Directory
Set a custom location for the config file:
export SIGNALOID_CONFIG_DIR=/path/to/config
signaloid-cli auth login --api-key YOUR_KEY
Use API Key from Environment
Store your API key in an environment variable:
export SIGNALOID_API_KEY="scce_1234567890abcdef"
signaloid-cli auth login --api-key $SIGNALOID_API_KEY
Multiple Accounts
Switching Between Accounts
To switch accounts, simply log out and log back in:
# Logout from current account
signaloid-cli auth logout
# Login with different credentials
signaloid-cli auth login --api-key DIFFERENT_API_KEY
Security Best Practices
Do ✅
- ✅ Use API keys instead of passwords for automation
- ✅ Store API keys in environment variables or secrets managers
- ✅ Rotate API keys regularly
- ✅ Use different API keys for different environments (dev/staging/prod)
- ✅ Revoke unused or old API keys
Don't ❌
- ❌ Don't commit API keys to version control
- ❌ Don't share API keys in chat or email
- ❌ Don't use production API keys in development
- ❌ Don't log API keys in application output
- ❌ Don't store API keys in plain text files
Revoking API Keys
If an API key is compromised:
- Go to signaloid.io/settings/api
- Find the compromised key
- Click "Revoke"
- Generate a new key
- Update all systems using the old key
Config File Structure
The config file contains:
{
"profile": "default",
"env": "production",
"apiEndpoint": "https://api.signaloid.io",
"auth": {
"mode": "apikey",
"apiKey": "scce_1234567890abcdef"
}
}
Never manually edit the config file unless you know what you're doing. Use the auth commands instead.
Next Steps
- Quick Start Guide → - Start using authenticated commands
- Command Reference → - Explore all commands
If you're having authentication issues, contact support at developer-support@signaloid.com.