Compatible with Speckle Object Model v3
Quick Start
Get up and running in 5 minutes
Core Concepts
Understand the fundamentals
API Reference
Explore the complete API
Examples
See it in action
What is specklepy?
specklepy is a comprehensive Python library that provides:- Object-based data exchange - Send and receive geometry and BIM data without files
- GraphQL API client - Full access to Speckle Server’s API
- Extensible object model - Create custom objects that inherit from
Base - Multiple transport options - Store data locally (SQLite), in-memory, or on Speckle Server
- Geometry support - Rich geometric primitives (Point, Line, Mesh, Brep, etc.)
- Structural analysis - Complete FEA/FEM object types
specklepy v3 requires Python 3.10+ and supports Windows, macOS, and Linux.
Key Features
Object-Based, Not File-Based
Forget about files. Speckle uses objects as the fundamental unit of data exchange.Instead of files, Speckle stores sets of objects in Models. Models are contained
within Projects. Projects are contained within Workspaces. Learn more about
organising your data in Speckle in the User Guide.
Version Control for AEC Data
Every change creates a new version (commit), giving you full history and traceability.The
object_id here is of a Speckle object that has already been sent to the Speckle server. Sending will register it in the database, but visibility of it is within the scope of a version.Objects not associated with a Model Version are considered as “Zombie objects” or “Orphans” other than keeping a record of
object_ids they will be irretrievable.Real-Time Collaboration
Subscribe to changes and get notified when new data arrives.Subscriptions may not make sense if the script is not running continuously. Consider using a webhook or a scheduled task instead.
Common Use Cases
Custom Python backed web applications
Extract data from one application (e.g., Revit) and load it into another that may have a python scripting interface and no Speckle Connector.
Automated Workflows
Within Speckle Automation or your own automation pipelines that process AEC data, run analyses, or generate reports.
Custom Integrations
Connect Speckle to your internal tools, databases, applications with a python scripting environment, or third-party services.
Structural Analysis
Work with FEA/FEM models using the built-in structural object types.
Installation
Install specklepy using pip:For detailed installation instructions, see the Installation Guide.
Quick Example
Here’s a complete example of sending geometry to Speckle:Next Steps
Installation
Install specklepy and set up your environment
Authentication
Learn how to authenticate with Speckle Server
Quickstart
Build your first integration
Core Concepts
Understand how specklepy works