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.4.tar.gz (28.1 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.4-py3-none-any.whl (33.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: py_aps-0.0.4.tar.gz
  • Upload date:
  • Size: 28.1 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.4.tar.gz
Algorithm Hash digest
SHA256 9743f595a4278a2c82f3e81f1427c7d296858e1cc73254b24ccef9f1faee20e3
MD5 17792dda3ff5e7c461ee8af3748a0af3
BLAKE2b-256 14577069f5d27a748968a6728e3e731bcbad0ae85d737f6b322611c828ff7a59

See more details on using hashes here.

File details

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

File metadata

  • Download URL: py_aps-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 33.0 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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 e0959068ca8812764ea786b7bab0e253d65c5b53ece029628ca0d9c3aa4eec4c
MD5 949685c781b73cb8e615cb9dffe6c84e
BLAKE2b-256 75fdaf66eda6c559eb1d830a4dc1e1afd5c98f305449ddaa125f94fbb4a83158

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