Skip to main content

Autodesk Platform Service APIs Python SDK

Project description

py-aps

Python SDK for Autodesk Platform Service APIs

Installation

pip install py-aps

Overview

py-aps is a Python SDK that provides a simple and intuitive interface for interacting with Autodesk Platform Services (formerly known as Forge) APIs. This SDK simplifies authentication, data management, and automation workflows for APS-powered applications.

Features

  • Authentication: Easy OAuth2 authentication flow
  • Data Management: Access and manage files in BIM 360, ACC, and other Autodesk cloud storage
  • Automation: Automate design and engineering workflows

Quick Start

Authentication

from pyaps.auth import AuthClient, Scopes

# 2-legged OAuth
client = AuthClient(client_id="...", client_secret="...")
token = client.two_legged.get_token([Scopes.DATA_READ])

Data Management

from pyaps.datamanagement import DataManagementClient

dm = DataManagementClient(token_provider=lambda: token.access_token)

# List hubs and projects
hubs = list(dm.hubs.list())
projects = list(dm.hubs.list_projects(hub_id))

# Browse folders
contents = list(dm.folders.contents(project_id, folder_id))

Design Automation

from pyaps.automation import AutomationClient

auto = AutomationClient(token_provider=lambda: token.access_token)

# List engines
engines = auto.list_engines()

# Create and execute workitem
workitem = auto.start_workitem({
    'activityId': 'Owner.MyActivity+prod',
    'arguments': {...}
})

For more examples, see src/pyaps/auth/example.py, src/pyaps/datamanagement/example.py, and src/pyaps/automation/example.py.

Project Status

Current version: v0.0.4 - Design Automation API support added

This package is currently in early development. Active development is underway by voidbox.

Version History
  • v0.0.4 - Added Design Automation API client (Engines, AppBundles, Activities, WorkItems)
  • v0.0.3 - Added Data Management API client (Hubs, Projects, Folders, Items, Versions, Buckets, Objects)
  • v0.0.2 - Added OAuth 2.0 authentication client with 2-legged/3-legged flows, PKCE support, and token management
  • v0.0.1 - Initial package release (placeholder)

Contributing

We welcome bug reports and feature requests through GitHub Issues.

This project is primarily developed by voidbox. External pull requests have limited review capacity.

License

Apache-2.0 License - see the LICENSE file for details.

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py_aps-0.0.5.tar.gz (36.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

py_aps-0.0.5-py3-none-any.whl (42.5 kB view details)

Uploaded Python 3

File details

Details for the file py_aps-0.0.5.tar.gz.

File metadata

  • Download URL: py_aps-0.0.5.tar.gz
  • Upload date:
  • Size: 36.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.2

File hashes

Hashes for py_aps-0.0.5.tar.gz
Algorithm Hash digest
SHA256 3b57a4fbe9494e2db9c548fcf18d6e419dcd8a925b6cfa828691b769363a7e49
MD5 6d04339d898b694d1aa1cf58e5a78bcf
BLAKE2b-256 cc8cf0b9dd90d469148d1b145f500d99c5cc1c7d117b6b0f220410954dd0736a

See more details on using hashes here.

File details

Details for the file py_aps-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: py_aps-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 42.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.2

File hashes

Hashes for py_aps-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 d52d84decbf51790943823b69891234fb530589122a7ee57354c6112e47203bd
MD5 15b4091a6f2a0523918f567905e887e9
BLAKE2b-256 2e0b7b0f78439abdb40dd00f5d0ed2bcbe92b66c74f7db1423357727a54ca6e3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page