Configuration
RAPSπΌRAPSRust CLI for Autodesk Platform Services.View in glossary supports multiple configurationβοΈConfigurationSettings controlling application behavior.View in glossary methods: environment variables, profiles, and .env files.
Precedence: CLIπ»CLIText-based interface for running commands.View in glossary flags > Environment variables > Active profileπ€ProfileNamed set of configuration settings.View in glossary > Defaults
Required Environment Variables
APS_CLIENT_ID
Your APSβοΈAPSAutodesk Platform Services - cloud APIs for CAD/BIM automation.View in glossary application Client ID from the APS Developer Portal.
# Windows PowerShell
$env:APS_CLIENT_ID = "your_client_id_here"
# macOS/Linux
export APS_CLIENT_ID="your_client_id_here"
APS_CLIENT_SECRET
Your APS application Client SecretπSecretEncrypted sensitive configuration value.View in glossary.
# Windows PowerShell
$env:APS_CLIENT_SECRET = "your_client_secret_here"
# macOS/Linux
export APS_CLIENT_SECRET="your_client_secret_here"
Optional Environment Variables
| Variable | Description | Default |
|---|---|---|
APS_ACCOUNT_ID | ACCποΈACCAutodesk's construction management platform.View in glossary account ID β enables raps admin commands without --account flagπ©FlagOptional parameter modifying command behavior.View in glossary. Find it in ACC Custom Integrations or via raps hub list. | - |
APS_CALLBACK_URL | Callback URL for 3-legged OAuthπ€3-legged authUser-authorized authentication with browser login.View in glossary | http://localhost:8080/callback |
APS_DA_NICKNAME | Design Automationπ€Design AutomationRun Autodesk desktop apps in the cloud.View in glossary nickname | - |
RAPS_TIMEOUT | Request timeout in seconds | 120 |
RAPS_CONCURRENCY | Max parallel operations | 5 |
RAPS_USE_FILE_STORAGE | Use plaintext file storage instead of OS keychainπKeychainSecure OS storage for credentials.View in glossary β recommended for headless servers and CI/CDπCI/CDAutomated build, test, and deployment pipelines.View in glossary | false |
Using .env File
Create a .env file in your working directory:
APS_CLIENT_ID=your_client_id_here
APS_CLIENT_SECRET=your_client_secret_here
APS_CALLBACK_URL=http://localhost:8080/callback
# Required for raps admin commands (ACC account admin)
# Find this in ACC β Account Admin β Custom Integrations, or copy from raps hub list
APS_ACCOUNT_ID=your_account_id_here
# Recommended on headless servers (no OS keychain available)
RAPS_USE_FILE_STORAGE=true
RAPS automatically loads from .env files in current and parent directories.
Security: Never commit
.envfiles to version control. Add.envto.gitignore.
Profile Management
Profiles allow managing multiple environments (dev, staging, production).
# Create a profile
raps config profile create production
# Set values
raps config set client_id "your_production_client_id"
raps config set client_secret "your_production_client_secret"
# Switch profiles
raps config profile use production
# List all profiles
raps config profile list
# Export/import profiles
raps config profile export production --output ./prod-profile.json
raps config profile import ./prod-profile.json --name backup
Profile Storage Locations
- Windows:
%APPDATA%\raps\profiles.json - macOS:
~/Library/Application Support/raps/profiles.json - Linux:
~/.config/raps/profiles.json
Sticky Context (New in v4.5)
Set default context values to avoid repeating --account, --hub, or --project flags on every commandβΆοΈCommandInstruction executed by a CLI tool.View in glossary.
# Set default account and project
raps config context set account_id abc-123
raps config context set project_id proj-456
# Show current context
raps config context show
# Clear all context
raps config context clear
Available keys:
hub_idβ Default hubπ’HubTop-level container in Data Management (company/account).View in glossary IDproject_idβ Default projectπProjectContainer for folders and files within a hub.View in glossary IDaccount_idβ Default account ID
Precedence: explicit flag > environment variableπEnvironment VariableConfiguration value passed to applications.View in glossary > profile context > none
Example workflowπWorkflowAutomated process triggered by events.View in glossary:
# Set context once
raps config context set account_id "b.acc-123"
# Now these commands auto-resolve the account
raps admin user list
raps report issues-summary
raps admin company-list
Secure Token Storage (v3.7.0+)
RAPS now defaults to secure OS keychain storage for authentication tokens instead of plaintext files.
# Enable/disable keychain storage per profile
raps config set use_keychain true # Default: true (secure)
raps config set use_keychain false # Use plaintext files (insecure)
# Migrate existing tokens to keychain
raps config migrate-tokens
TokenποΈTokenCredential for API authentication.View in glossary Storage Locations:
- Keychain (Secure): OS-managed secure storage
- Windows: Windows Credential Manager
- macOS: macOS Keychain
- Linux: Secret Service (gnome-keyring, kwallet)
- File (Insecure):
~/.config/raps/tokens.json(β οΈ plaintext)
π Security Best Practice: Use keychain storage (default). File storage stores tokens in plaintext and should only be used in secure environments.
Shell Completions
RAPS supports auto-completion for bash, zsh, fish, PowerShell, and elvish.
PowerShell
# Add to your PowerShell profile ($PROFILE)
raps completions powershell | Out-String | Invoke-Expression
Bash
# Add to ~/.bashrc
eval "$(raps completions bash)"
Zsh
# Add to ~/.zshrc
eval "$(raps completions zsh)"
Fish
raps completions fish > ~/.config/fish/completions/raps.fish
Test Configuration
Verify your setup:
raps auth test
If successful, youβre ready to use RAPS!