Quick-lookup table for every exported AutoDeskR function. Click the Chapter link to jump to full documentation and worked examples.
Authentication
getToken(id, secret, scope)
—
id, secret, scope (space-separated string)
$content$access_token, $content$expires_in
Data Management
makeBucket(token, bucket, policy)
bucket:create
bucket (globally unique key), policy ("transient" / "temporary" / "persistent")
$content$bucketKey, $content$policyKey
checkBucket(token, bucket)
bucket:read
bucket
$content$bucketKey, $content$policyKey
deleteBucket(token, bucket)
bucket:delete
bucket (must be empty)
$status_code 200
uploadFile(file, token, bucket)
data:write
file (local path, ≤ 100 MB), bucket
$content$objectId (URN), $content$size
uploadFileSigned(file, token, bucket)
data:write
file (local path, > 100 MB), bucket
$content$objectId (URN)
listBuckets(token, limit, startAt, region)
bucket:read
limit (default 10), startAt (pagination key), region ("US" / "EMEA")
$content$items data frame
listObjects(token, bucket, limit)
data:read
bucket, limit
$content$items data frame
deleteObject(token, bucket, object)
data:write
bucket, object (filename)
$status_code 200
downloadFile(urn, output_urn, token, destfile)
data:read
urn (encoded source), output_urn (encoded output), destfile
$status_code 200
Model Derivative
translateObj(urn, token)
data:read data:write
urn (Base-64 encoded)
$content$result ("created"), $content$urn
translateStl(urn, token)
data:read data:write
urn (Base-64 encoded)
$content$result, $content$urn
translateSvf(urn, token)
data:read data:write
urn (Base-64 encoded)
$content$result, $content$urn
checkFile(urn, token)
data:read
urn (Base-64 encoded)
$content$status ("pending" / "inprogress" / "success"), $content$progress
getOutputUrn(urn, token)
data:read
urn (raw, not encoded)
$content$derivatives[[1]]$children[[1]]$urn
getMetadata(urn, token)
data:read
urn (Base-64 encoded)
$content$data$metadata[[1]]$guid, $content$data$metadata[[1]]$name
getObjectTree(guid, urn, token)
data:read
guid, urn (Base-64 encoded)
$content$data$objects (nested list)
getData(guid, urn, token)
data:read
guid, urn (Base-64 encoded)
$content$data$collection (list of objects with properties)
Design Automation
makePdf(source, destination, token)
code:all
source (public URL to DWG), destination (public URL for output)
$content$id (WorkItem ID), $content$status
checkPdf(id, token)
code:all
id (WorkItem ID from makePdf())
$content$status ("pending" / "inprogress" / "success"), $content$stats
Reality Capture
createPhotoscene(name, format, token)
data:read data:write
name (scene label), format ("rcm" / "rcs" / "obj" / "ortho" / "report")
$content$photoscene$photosceneid
uploadImages(photoscene_id, files, token)
data:read data:write
photoscene_id, files (character vector of local JPEG/PNG paths)
$content$Files$file (list of uploaded file records)
processPhotoscene(photoscene_id, token)
data:read data:write
photoscene_id
$content$photoscene$progress ("0" on submission)
checkPhotoscene(photoscene_id, token)
data:read data:write
photoscene_id
$content$photoscene$progress (string "0"–"100"), $content$photoscene$progressmsg
waitForPhotoscene(photoscene_id, token, interval, timeout, verbose)
data:read data:write
interval (seconds between polls, default 30), timeout (max wait in seconds, default 1800)
Final checkPhotoscene response when progress == "100"
Viewer
viewer3D(urn, token, viewerType)
data:read
urn (Base-64 encoded), viewerType ("header" / "headless" / "vr")
Opens viewer in browser / Shiny
viewerUI(id, urn, token, viewerType)
data:read
id (Shiny module ID), urn, token, viewerType
Shiny UI element for use in fluidPage()
Scope Quick Reference
data:read
Model Derivative, Viewer, Reality Capture (read)
data:write
Data Management (upload/delete), Model Derivative (translate), Reality Capture
bucket:create
Data Management (makeBucket)
bucket:read
Data Management (checkBucket, listBuckets)
bucket:delete
Data Management (deleteBucket)
code:all
Design Automation
Common Patterns
Base-64 encode a URN
The Model Derivative and Viewer APIs require the URN to be Base-64 encoded. Use jsonlite::base64_enc():
myEncodedUrn <- jsonlite:: base64_enc (myUrn)
Poll until a job finishes
All async jobs (translateObj, translateSvf, makePdf, processPhotoscene) follow the same pattern:
repeat {
status <- checkFile (urn = myEncodedUrn, token = myToken)
if (status$ content$ status == "success" ) break
Sys.sleep (10 )
}
Use waitForPhotoscene() as a ready-made equivalent for Reality Capture jobs.
Supporting Packages
The chapters outside the Core APIs part rely on the following R packages. This section lists the key functions used in the book and the chapter where each appears.
httr2
Used for direct Tandem REST API calls in the Digital Twins chapters, and as the underlying HTTP engine for AutoDeskR.
jsonlite
base64_enc(x)
Base-64 encode a string (required for APS URNs)
Model Derivative , Case Study
fromJSON(txt)
Parse a JSON string into an R list
General
Rvcg
Mesh processing — surface area, volume, smoothing, and surface distance. (Schlager 2024 )
dplyr
Data manipulation — filtering, grouping, joining. Used throughout the DWG Analytics and Digital Twins chapters.
ggplot2
Data visualisation. Used in DWG Analytics, Digital Twins, and the Case Study.
shiny
Interactive web applications and dashboards.
xts
Time-series objects required by dygraphs.
xts(data, order.by)
Create an extensible time-series object
Live Dashboards
quarto
Programmatic report rendering.
quarto_render(input, execute_params)
Render a .qmd file with injected parameters
Drawing Reports
Adler, Daniel, Duncan Murdoch, et al. 2024.
Rgl: 3D Visualization Using OpenGL .
https://dmurdoch.github.io/rgl/ .
Iannone, Richard, Joe Cheng, Barret Schloerke, Ellis Hughes, Alexandra Lauer, JooYoung Seo, Ken Brevoort, and Olivier Roy. 2024.
Gt: Easily Create Presentation-Ready Display Tables .
https://gt.rstudio.com .
Morgan-Wall, Tyler. 2024.
Rayshader: Create Maps and Visualize Data in 2D and 3D .
https://www.rayshader.com .
Roussel, Jean-Romain, David Auty, Nicholas C. Coops, Piotr Tompalski, Tristan R. H. Goodbody, Alexis Sanchez Meador, Jean-François Bourdon, Florian de Boissieu, and Alexis Achim. 2020.
“lidR: An r Package for Analysis of Airborne Laser Scanning (ALS) Data.” Remote Sensing of Environment 251: 112061.
https://doi.org/10.1016/j.rse.2020.112061 .
Roussel, Jean-Romain, David C. Sterratt, et al. 2024.
Geometry: Mesh Generation and Surface Tessellation .
https://davidcsterratt.github.io/geometry/ .
Schlager, Stefan. 2024.
Rvcg: Manipulations of Triangular Meshes Based on the ’VCGLIB’ API .
https://CRAN.R-project.org/package=Rvcg .
Vanderkam, Dan, JJ Allaire, Jonathan Owen, Daniel Gromer, and Benoit Thieurmel. 2018.
Dygraphs: Interface to ’Dygraphs’ Interactive Time Series Charting Library .
https://CRAN.R-project.org/package=dygraphs .