| Crates.io | raps |
| lib.rs | raps |
| version | 3.8.0 |
| created_at | 2025-12-23 19:36:38.219334+00 |
| updated_at | 2026-01-07 07:47:32.990786+00 |
| description | 🌼 RAPS (rapeseed) — Rust Autodesk Platform Services CLI |
| homepage | https://rapscli.xyz |
| repository | https://github.com/dmytro-yemelianov/raps.git |
| max_upload_size | |
| id | 2002200 |
| size | 4,589,943 |
🌼 RAPS (rapeseed) — Rust Autodesk Platform Services CLI. A comprehensive command-line interface for Autodesk Platform Services (APS), written in Rust.
--device) for headless/server environments--token) for CI/CD scenariosauth inspect-token) - view scopes, expiry, and warningsauth whoamibucket info--batch, --parallel)translate download) - export translated modelstranslate preset) - save and reuse common configurationsitem bind) - link external uploadswebhook test) - validate with sample payloadsda activity create)da workitem run) with input/output URLsda workitem get) - download reportsissue comment) - list, add, deleteissue attachment) - upload, downloadissue transition) - change issue statusrfi list) - view all RFIs in a projectrfi get) - view full RFI informationrfi create) - submit new requests for informationrfi update) - answer RFIs, change statusacc asset list) - view project assetsacc submittal list) - view project submittalsacc checklist list) - view project checklistsacc checklist templates) - view available templatespipeline run)pipeline sample)raps-<name> executablesplugin list/enable/disable)generate) - create synthetic OBJ, IFC, and other files for testingdemo) - run end-to-end scenarios like bucket lifecycle or model pipelineserve) - Model Context Protocol server for Claude, Cursor, and other MCP clientsauth_test, auth_statusbucket_list, bucket_create, bucket_get, bucket_deleteobject_list, object_delete, object_signed_url, object_urntranslate_start, translate_statushub_list, project_listcargo install raps
Download the latest release for your platform from the Releases page:
| Platform | Architecture | File |
|---|---|---|
| Windows | x64 | raps-windows-x64.zip |
| macOS | Intel | raps-macos-x64.tar.gz |
| macOS | Apple Silicon | raps-macos-arm64.tar.gz |
| Linux | x64 | raps-linux-x64.tar.gz |
| Linux | ARM64 | raps-linux-arm64.tar.gz |
Extract and add to your PATH:
Windows (PowerShell):
# Extract to a directory in your PATH
Expand-Archive raps-windows-x64.zip -DestinationPath "$env:USERPROFILE\bin"
# Add to PATH (if not already)
$env:PATH += ";$env:USERPROFILE\bin"
macOS/Linux:
# Extract
tar -xzf raps-*.tar.gz
# Move to PATH
sudo mv raps /usr/local/bin/
chmod +x /usr/local/bin/raps
# Requires Rust 1.70 or later (https://rustup.rs/)
cd raps
cargo build --release
RAPS supports auto-completion for bash, zsh, fish, PowerShell, and elvish.
# Add to your PowerShell profile ($PROFILE)
raps completions powershell | Out-String | Invoke-Expression
# Or save to a file and source it
raps completions powershell > "$env:USERPROFILE\Documents\PowerShell\raps.ps1"
# Then add to $PROFILE: . "$env:USERPROFILE\Documents\PowerShell\raps.ps1"
# Add to ~/.bashrc
eval "$(raps completions bash)"
# Or save to completions directory
raps completions bash > ~/.local/share/bash-completion/completions/raps
# Add to ~/.zshrc (before compinit)
eval "$(raps completions zsh)"
# Or save to fpath directory
raps completions zsh > ~/.zfunc/_raps
# Add to ~/.zshrc: fpath=(~/.zfunc $fpath)
# Save to completions directory
raps completions fish > ~/.config/fish/completions/raps.fish
# Add to ~/.elvish/rc.elv
eval (raps completions elvish | slurp)
Manage multiple configurations for different environments:
# Create a profile
raps config profile create production
# Set profile values
raps config set client_id "your_client_id"
raps config set client_secret "your_client_secret"
# Switch between profiles
raps config profile use production
# List all profiles
raps config profile list
# Show current profile
raps config profile current
Config Precedence: CLI flags > Environment variables > Active profile > Defaults
# Required
$env:APS_CLIENT_ID = "your_client_id"
$env:APS_CLIENT_SECRET = "your_client_secret"
# Optional
$env:APS_CALLBACK_URL = "http://localhost:8080/callback" # For 3-legged OAuth
$env:APS_DA_NICKNAME = "your_nickname" # For Design Automation
Create a .env file in your working directory:
APS_CLIENT_ID=your_client_id
APS_CLIENT_SECRET=your_client_secret
APS_CALLBACK_URL=http://localhost:8080/callback
# Test 2-legged authentication
raps auth test
# Login with 3-legged OAuth (opens browser)
raps auth login
# Login with device code (headless/server environments)
raps auth login --device
# Login with token (CI/CD scenarios)
raps auth login --token <access_token> --refresh-token <refresh_token>
# Check authentication status (shows token expiry)
raps auth status
# Show logged-in user profile
raps auth whoami
# Logout
raps auth logout
# Create a bucket
raps bucket create
# List buckets (from all regions)
raps bucket list
# Get bucket details
raps bucket info my-bucket
# Upload a file
raps object upload my-bucket model.dwg
# Download a file
raps object download my-bucket model.dwg
# Get signed S3 download URL (direct download, expires in 2-60 minutes)
raps object signed-url my-bucket model.dwg --minutes 10
# Start translation
raps translate start <urn> --format svf2
# Check status
raps translate status <urn> --wait
# View manifest
raps translate manifest <urn>
RAPS supports multiple output formats for CI/CD integration:
# JSON output (machine-readable)
raps bucket list --output json
# YAML output
raps bucket list --output yaml
# CSV output
raps bucket list --output csv
# Table output (default, human-readable)
raps bucket list --output table
# Plain text
raps bucket list --output plain
# Disable colors
raps bucket list --no-color
# Quiet mode (only output data)
raps bucket list --quiet
# Set HTTP request timeout (seconds, default: 120)
raps bucket list --timeout 60
# Set maximum concurrent operations for bulk commands (default: 5)
raps demo batch-processing --concurrency 10
# Verbose mode (show request summaries)
raps bucket list --verbose
# Debug mode (full trace with secret redaction)
raps bucket list --debug
# Non-interactive mode (fail on prompts)
raps bucket create --non-interactive --key my-bucket
# Auto-confirm prompts
raps bucket delete my-bucket --yes
RAPS uses standardized exit codes for scripting:
0 - Success2 - Invalid arguments3 - Authentication failure4 - Not found5 - Remote/API error6 - Internal errorSee Exit Codes Documentation for details.
# List hubs
raps hub list
# List projects in a hub
raps project list <hub-id>
# List folder contents
raps folder list <project-id> <folder-id>
# View item versions
raps item versions <project-id> <item-id>
# List all webhooks
raps webhook list
# Create a webhook
raps webhook create --url https://example.com/hook --event dm.version.added
# List available events
raps webhook events
# List available engines
raps da engines
# List app bundles
raps da appbundles
# List activities
raps da activities
# Check work item status
raps da status <workitem-id> --wait
# List issues in a project
raps issue list <project-id>
# Create an issue
raps issue create <project-id> --title "My Issue"
# List issue types (categories)
raps issue types <project-id>
Note: The project-id should NOT include the "b." prefix used by the Data Management API.
# Create a photoscene
raps reality create --name "My Scene" --scene-type object --format obj
# Upload photos
raps reality upload <photoscene-id> photo1.jpg photo2.jpg photo3.jpg
# Start processing
raps reality process <photoscene-id>
# Check status
raps reality status <photoscene-id> --wait
# Get download link
raps reality result <photoscene-id>
Start the MCP server for AI assistant integration:
raps serve
Configure in Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"raps": {
"command": "raps",
"args": ["serve"],
"env": {
"APS_CLIENT_ID": "your_client_id",
"APS_CLIENT_SECRET": "your_client_secret"
}
}
}
}
Configure in Cursor (.cursor/mcp.json):
{
"mcpServers": {
"raps": {
"command": "raps",
"args": ["serve"]
}
}
}
Once configured, AI assistants can directly manage APS resources using natural language commands like:
| Command | Description |
|---|---|
auth |
Authentication (test, login, logout, status, whoami, inspect-token) |
bucket |
OSS bucket operations (create, list, info, delete) |
object |
OSS object operations (upload, download, list, delete, signed-url) |
translate |
Model Derivative (start, status, manifest, download, preset) |
hub |
List/view hubs |
project |
List/view projects |
folder |
Folder operations |
item |
Item operations (versions, bind) |
webhook |
Webhook subscriptions (create, list, delete, test) |
da |
Design Automation (engines, appbundles, activities, workitem) |
issue |
ACC/BIM 360 issues (list, create, update, comment, attachment, transition) |
acc |
ACC extended modules (assets, submittals, checklists) |
rfi |
ACC RFIs (list, get, create, update) |
reality |
Reality Capture photogrammetry |
pipeline |
Pipeline automation (run, validate, sample) |
plugin |
Plugin management (list, install, remove) |
generate |
Generate (synthetic files for testing) |
demo |
Run demo scenarios |
config |
Configuration and profile management (import, export) |
completions |
Generate shell completions (bash, zsh, fish, powershell, elvish) |
serve |
Start MCP server for AI assistant integration (v3.0.0+) |
This CLI covers the following APS APIs (validated against OpenAPI specs):
All releases include SHA256 checksums for verification. See Checksums Documentation for instructions on verifying downloads.
Contributions are welcome! Please read our Contributing Guide for details on:
Apache 2.0 License