Skip to main content

Overview

The Speckle Server provides a comprehensive GraphQL API that powers most interactions with your data. The complete, up-to-date API reference is available through Apollo Studio.

Documentation

Access the full GraphQL API reference at: Apollo Studio - Speckle Server API This interactive documentation provides:
  • Complete Schema: Browse the entire GraphQL schema with detailed descriptions for all types, queries, mutations, and subscriptions
  • Field Documentation: Inline documentation for every field, argument, and return type
  • Interactive Explorer: Test queries directly in your browser with the built-in GraphQL explorer
  • Type Definitions: Full type definitions and relationships between objects

Changelog

The Apollo Studio reference also includes a changelog that tracks all changes to the GraphQL API. This allows you to:
  • Stay informed about new features and capabilities
  • Track breaking changes and deprecations
  • Plan updates to your integrations
  • Review the evolution of the API over time
Access the full changelog at: Apollo Studio - API Changelog

Using the API

Authentication

To authenticate your GraphQL requests, you’ll need a personal access token. Include it in your requests:

Endpoint

The GraphQL endpoint for app.speckle.systems is:
For self-hosted instances, replace the domain with your server’s address.

Example Query

Here’s a simple example query to get started:

Query user data

Query workspace projects data

Variable: workspace ID. You can find it under Workspace Settings > General.

Query object data:

In this example, we query the children of a specific object, using the GraphQL arguments select and query to filter and return specific fields. We filter for objects with the category “Structural Columns” and retrieve the following information for each child: category, level, name, element ID, length dimension
Variables: Project ID & Object ID
  • Project ID: This identifies your project. Find it in the project URL:: https://app.speckle.systems/projects/{projectId}/
  • Object ID: Unique identifier for the object. To find it: open Dev Mode in the Speckle Web App, then inspect the object’s data.
The root object ID is the first ID shown in Dev Mode. Use it to query the full model.

Additional Resources

Last modified on July 18, 2026