OAuth Connections
OAuth provides secure access to external services without sharing passwords. Users authorize access through the service's login page.
How OAuth Works
The Flow
- You click Connect on a service
- Redirected to service's auth page
- Log in and approve permissions
- Redirected back with access token
- Token stored securely
Token Management
- Access Token: Used for API calls
- Refresh Token: Gets new access tokens
- Tokens refresh automatically
Connecting OAuth Services
Built-in Integrations
- Go to Plugins
- Find the service (Slack, Google, etc.)
- Click Connect
- Authorize in popup
- Connection saved
Custom OAuth
For custom API imports:
- Import or create the API
- Go to Authentication
- Select OAuth 2.0
- Enter OAuth details:
- Authorization URL
- Token URL
- Client ID
- Client Secret
- Scopes
OAuth Configuration
Required Settings
| Setting | Description | |---------|-------------| | Auth URL | Where users authorize | | Token URL | Where tokens are exchanged | | Client ID | Your app identifier | | Client Secret | Your app secret |
Scopes
Scopes define what access you're requesting:
read:user
write:messages
admin:org
Request only scopes you need.
Redirect URI
Use our callback URL:
https://api.specway.com/oauth/callback
Register this in the external service's developer console.
Managing Connections
View Status
- Go to Settings > Integrations
- See connection status
- Green = active, Red = needs attention
Refresh Connection
If a connection fails:
- Find the connection
- Click Refresh
- Re-authorize if prompted
Disconnect
- Find the connection
- Click Disconnect
- Confirm removal
Note: Disconnect from the external service too for full revocation.
Team Connections
Personal vs Shared
Personal: Only you can use Shared: Team members can use in their workflows
Creating Shared Connections
- Connect the service
- Go to connection settings
- Enable Share with team
- Set permission level
Using Shared Connections
Team members see shared connections:
- In workflow, add action
- Select the integration
- Choose shared connection
- No additional auth needed
Security
Token Storage
- Encrypted at rest
- Never logged
- Secure vault storage
Scope Minimization
Request minimum necessary scopes:
- Read-only when possible
- Specific resources only
- Avoid admin scopes
Audit
Track connection usage:
- Go to Settings > Audit Log
- Filter by integration
- See all access events
Troubleshooting
Token Expired
Tokens auto-refresh, but if issues:
- Click Refresh on connection
- Re-authorize if needed
Insufficient Permissions
Error indicates missing scopes:
- Disconnect
- Reconnect with additional scopes
- Approve new permissions
Connection Failed
Common causes:
- Popup blocked
- Service down
- Invalid credentials
See Troubleshooting Auth.
Next Steps
- API Key Management - Alternative auth
- Credential Management - Manage all creds
- Troubleshooting Auth - Fix issues