APS Automation SDK
A Python SDK that wraps the Autodesk Platform Services (APS) Design Automation API, making it faster and easier to automate Revit and AutoCAD workflows in the cloud.
Installation
Get started in seconds with pip:
pip install aps-automation-sdk
Capabilities
Currently, the SDK supports AutoCAD and Revit.
- Export data from AutoCAD: Extract information from DWG files and save to various formats
- Create and update AutoCAD files: Modify DWG files programmatically in the cloud
- Export data from Revit files: Extract data from RVT files (IFC, schedules, parameters, etc.)
- Create and update Revit files: Modify RVT files (add/delete elements, change parameters, etc.)
- Run complex automation: Execute workflows with multiple inputs and outputs, combining JSON configurations with CAD/BIM files
- Sign public activities for ACC workflows: Use built in helpers to generate keys, upload public key, sign activity IDs, and submit signed public workitems
- Mint SSA based 3lo tokens: Use SSA helpers to authenticate ACC and Design Automation flows with robot users
Start Right Away
Test the SDK with our ready-to-use examples in the examples folder:
- AutoCAD_01_list_layers: Extract layer names from a DWG file
- Revit_01_delete_walls: Remove walls from a Revit model
- Revit_02_export_to_ifc: Export IFC files from Revit with custom settings
- Revit_03_create_structural_elements: Create structural beam elements from JSON configuration
- Revit_04_change_global_params: Modify global parameters in Revit models
- Common_05_workitem_signing: Generate signing keys, upload public key, and sign a Design Automation activity
- Common_06_workitem_signing_cli: Run the same signing flow with the
aps-automationCLI commands - Common_07_ssa_create_and_token: Set up SSA inputs and mint a 3lo token for ACC and Design Automation flows
Each example includes a Jupyter notebook with step-by-step instructions and sample files.
Before running the examples, create a .env file in the project root with your APS credentials:
CLIENT_ID=your_client_id_here
CLIENT_SECRET=your_client_secret_here
You can use .env.sample as a reference. To get your credentials, create an Autodesk Platform Services application at: https://get-started.aps.autodesk.com/
For Agents
This repository provides agent context files for developers:
AGENTS.mdCLAUDE.mdllms-full.txt
This repository also publishes the following skills:
.agents/skills/aps-acc-public-activity-signing/.agents/skills/full-llm-export/
Use this skill to run APS public activity signing workflows end-to-end:
- generate RSA keys
- export and upload public key to
forgeapps/me - sign activity IDs
- connect signatures to ACC/public workitem execution flows
For Codex
Codex reads project skills from .agents/skills/.
Install this skill into your local repo:
npx skills add https://github.com/viktor-platform/aps-automation-sdk \
--skill aps-acc-public-activity-signing \
--copy \
-a codex \
-y
This copies the skill into: .agents/skills/
For Claude Code
Install this skill for Claude Code:
npx skills add https://github.com/viktor-platform/aps-automation-sdk \
--skill aps-acc-public-activity-signing \
--copy \
-a claude-code \
-y
This copies the skill into: .claude/skills
Contribute
For contributing and local installation instructions, see CONTRIBUTING.md.
Release files for aps-automation-sdk 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| aps_automation_sdk-0.1.2.tar.gz | 64.1 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| aps_automation_sdk-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 64.2 MB
Release files / aps_automation_sdk-0.1.2.tar.gz
| Download URL | aps_automation_sdk-0.1.2.tar.gz |
|---|---|
| Size | 64.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
55eb3a9de967746a8f0b5d0fe489b914546432adac930f199559ed0e809ffb20
|
|
BLAKE2b-256 checksum How to use checksums |
819104014af0a16372c2938d1df916012c052e7303d5f771d0f659ad3e243990
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.7
|
Release files / aps_automation_sdk-0.1.2-py3-none-any.whl
| Download URL | aps_automation_sdk-0.1.2-py3-none-any.whl |
|---|---|
| Size | 25.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d3804d958bce940e8654bd9ba051cf3601717f799f41de1b965704bedc467162
|
|
BLAKE2b-256 checksum How to use checksums |
78e49165f30dadf722869c6b750346e831acc04b80e09646b9e8f6ae7dfce16d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.7
|