Ця сторінка ще не перекладена українською. Показано англійську версію. Переглянути англійською

APS Developer Cheat Sheet

Single-page reference for Autodesk Platform Services (APS) with RAPS CLI shortcuts

Last verified: January 2026
RAPS v4.2.1+
APS APIs: Auth v2, DM v1, MD v2, OSS v2, DA v3
📄 Download PDF

🔐 Authentication

OAuth Flow Comparison

2-Legged OAuth 3-Legged OAuth RAPS Command
Use Case: Server-to-server Use Case: User-facing apps -
Context: App identity only Context: User + app identity -
BIM360/ACC: Limited access BIM360/ACC: Full project access -
Grant Type: client_credentials Grant Type: authorization_code -
Endpoint: /authentication/v2/token Endpoint: /authentication/v2/authorize + /token -
raps auth login raps auth login --3legged Default: 2-legged

Essential OAuth Scopes

Scope Purpose Required For RAPS Usage
data:read Read files/projects Download, list contents --scopes data:read
data:write Modify metadata Update file properties --scopes data:read,data:write
data:create Upload files File uploads, folder creation --scopes data:read,data:write,data:create
viewables:read View models Viewer SDK, derivatives --scopes viewables:read
code:all Design Automation All DA operations --scopes code:all

Token Lifecycle

Manual Process

  • • POST to /authentication/v2/token
  • • Store token + refresh logic
  • • Check expiry (1 hour default)
  • • Refresh when needed
  • • Handle auth errors manually

RAPS Equivalent

  • • raps auth login
  • • Automatic token management
  • • raps auth status
  • • raps auth refresh
  • • Built-in retry with refresh

📁 Data Management API

Project Hierarchy

Hub (Company/Account)
├── Project 1
│   ├── Folder A
│   │   ├── Item 1
│   │   │   ├── Version 1
│   │   │   └── Version 2 (latest)
│   │   └── Item 2
│   └── Folder B
└── Project 2

Common Endpoints

Operation Manual API Call RAPS Command
List Hubs GET /project/v1/hubs raps dm hubs
List Projects GET /project/v1/hubs/{hub_id}/projects raps dm projects
Upload File Multi-step: Create storage → Upload → Create item → Create version raps dm upload <file> --project <id>
Download File GET /data/v1/projects/{project_id}/downloads + download URL raps dm download <item_id>

URN Formats

OSS Object: urn:adsk.objects:os.object:{bucket}:{object}
Data Management: urn:adsk.wipprod:dm.lineage:{item_id}
Encoded URN: Base64 URL-safe encoding
Manual (error-prone):
echo -n "urn:adsk.objects..." | base64 | tr '+/' '-_' | tr -d '='
With RAPS:
raps urn encode "urn:adsk.objects:os.object:bucket/file.dwg"

🗄️ Object Storage Service (OSS)

Bucket Operations

Operation RAPS Command
List Buckets raps bucket list
Create Bucket raps bucket create <name>
Bucket Details raps bucket info <name>

Object Operations

Operation RAPS Command
List Objects raps oss list <bucket>
Upload Object raps oss upload <file> <bucket>
Download Object raps oss download <bucket> <object>

Bucket Naming Rules

✅ Allowed

  • • 3-128 characters
  • • Lowercase letters, numbers, hyphens
  • • Must start/end with letter or number

❌ Not Allowed

  • • Spaces, underscores, special chars
  • • Cannot look like IP address
  • • Uppercase letters

🔄 Model Derivative API

Translation Workflow

1. Upload to OSS or Data Management
2. Start Translation Job → GET Job Status (polling)
3. Translation Complete → Download Manifest
4. Extract Viewables/Properties

Translation Operations

Operation RAPS Command
Start Translation raps translate <urn> --formats svf2
Check Status raps translate status <urn>
Wait for Completion raps translate <urn> --wait
Get Properties raps translate properties <urn>

Output Formats

svf2 Web viewer (modern)
pdf 2D drawings
obj 3D meshes
stl 3D printing
ifc Industry standard

Status Codes

pending Job queued
inprogress Processing
success Completed
failed Processing failed

⚠️ Common Error Codes

Code API Cause RAPS Prevention
400 All Invalid request format Built-in validation
401 All Authentication failed raps auth refresh
403 All Insufficient permissions raps auth status --scopes
404 Model Derivative URN not found raps urn encode
429 All Rate limit exceeded Built-in rate limiting

📊 Rate Limits

API Limit Window RAPS Handling
Authentication 500 requests/min 1 minute Automatic token reuse
Data Management 100 requests/min 1 minute Intelligent batching
Model Derivative 20 concurrent jobs - Queue management
OSS 500 requests/min 1 minute Parallel optimization

🔧 Quick Setup Commands

First-Time Setup

# Install RAPS
# Windows: scoop install raps
# macOS: brew install raps
# Linux: cargo install raps-cli
# Initial authentication
raps auth login
# Test connectivity
raps auth status
raps dm projects --limit 1

Common Workflows

# File Upload → Translation → View
raps oss upload model.rvt mybucket
raps translate $(raps urn encode \
  "urn:adsk.objects:os.object:mybucket:model.rvt") --wait
# Batch Operations
raps oss upload-batch *.dwg --bucket mybucket
raps translate-batch --bucket mybucket --formats svf2

🚨 Emergency Commands

Authentication Issues

raps auth refresh
raps auth login --force
raps auth status --verbose

Operation Failures

raps health check --comprehensive
raps logs --level error --last 1h
raps config set retry.max-attempts 5

💡 Pro Tips

  • • Use raps examples to see common workflow patterns
  • • Set up multiple profiles with raps auth login --profile <name>
  • • Enable verbose output with --verbose flag for debugging
  • • Check raps health check if anything isn't working