Formlabs Groups API

The Groups API from Formlabs — 5 operation(s) for groups.

Operations 9

GET /groups/ List printer groups #
POST /groups/ Create a printer group #
PATCH /groups/{group_id}/ Update a printer group #
DELETE /groups/{group_id}/ Delete a printer group #
POST /groups/bulk-add-printers/ Move printers into a group #
POST /groups/{group_id}/members/ Invite a user to a group #
PUT /groups/{group_id}/members/ Update a group membership #
DELETE /groups/{group_id}/members/ Remove a group member #
GET /groups/{group_id}/queue/ List group queue items #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/formlabs-groups-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

formlabs-groups-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Formlabs Web Consumables Groups API
  description: The Formlabs Web API (Dashboard Developer API) provides remote monitoring and management of Internet-connected Formlabs products registered to a Dashboard account. It exposes read access to printers, prints, resin tanks, and cartridges, an event history feed, and full CRUD management of printer groups and their print queues. Typical use cases include automated reports on printer and material usage, job history exports, and integration of printer status into ERP / MES / custom systems.
  termsOfService: https://formlabs.com/terms-of-service/
  contact:
    name: Formlabs Developer Support
    url: https://support.formlabs.com/s/topic/Developer-Portal
  version: '1.0'
servers:
- url: https://api.formlabs.com/developer/v1
  description: Formlabs Web API (Dashboard Developer API)
security:
- OAuth2ClientCredentials: []
tags:
- name: Groups
paths:
  /groups/:
    get:
      operationId: listGroups
      tags:
      - Groups
      summary: List printer groups
      description: List all printer groups the authenticated account can access.
      responses:
        '200':
          description: A list of printer groups.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GroupList'
    post:
      operationId: createGroup
      tags:
      - Groups
      summary: Create a printer group
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GroupWrite'
      responses:
        '201':
          description: The created group.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Group'
  /groups/{group_id}/:
    patch:
      operationId: updateGroup
      tags:
      - Groups
      summary: Update a printer group
      parameters:
      - name: group_id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GroupWrite'
      responses:
        '200':
          description: The updated group.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Group'
    delete:
      operationId: deleteGroup
      tags:
      - Groups
      summary: Delete a printer group
      parameters:
      - name: group_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '204':
          description: The group was deleted.
  /groups/bulk-add-printers/:
    post:
      operationId: bulkAddPrintersToGroup
      tags:
      - Groups
      summary: Move printers into a group
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                group:
                  type: string
                printers:
                  type: array
                  items:
                    type: string
      responses:
        '200':
          description: Printers were moved to the group.
  /groups/{group_id}/members/:
    post:
      operationId: inviteGroupMember
      tags:
      - Groups
      summary: Invite a user to a group
      parameters:
      - name: group_id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GroupMemberWrite'
      responses:
        '201':
          description: The user was invited.
    put:
      operationId: updateGroupMember
      tags:
      - Groups
      summary: Update a group membership
      parameters:
      - name: group_id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GroupMemberWrite'
      responses:
        '200':
          description: The membership was updated.
    delete:
      operationId: removeGroupMember
      tags:
      - Groups
      summary: Remove a group member
      parameters:
      - name: group_id
        in: path
        required: true
        schema:
          type: string
      - name: user
        in: query
        schema:
          type: string
      responses:
        '204':
          description: The member was removed.
  /groups/{group_id}/queue/:
    get:
      operationId: listGroupQueue
      tags:
      - Groups
      summary: List group queue items
      description: List queued print jobs for a printer group.
      parameters:
      - name: group_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: A list of queue items for the group.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QueueItemList'
components:
  schemas:
    GroupMemberWrite:
      type: object
      required:
      - email
      properties:
        email:
          type: string
        role:
          type: string
    QueueItemList:
      type: object
      properties:
        count:
          type: integer
        results:
          type: array
          items:
            $ref: '#/components/schemas/QueueItem'
    GroupWrite:
      type: object
      required:
      - name
      properties:
        name:
          type: string
    Group:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        members:
          type: array
          items:
            $ref: '#/components/schemas/GroupMember'
    GroupMember:
      type: object
      properties:
        user:
          type: string
        email:
          type: string
        role:
          type: string
    QueueItem:
      type: object
      properties:
        guid:
          type: string
        name:
          type: string
        material:
          type: string
        position:
          type: integer
        status:
          type: string
    GroupList:
      type: object
      properties:
        count:
          type: integer
        results:
          type: array
          items:
            $ref: '#/components/schemas/Group'
  securitySchemes:
    OAuth2ClientCredentials:
      type: oauth2
      description: OAuth 2.0 Client Credentials flow. Exchange a client_id and client_secret at the token endpoint for a Bearer access token valid for 24 hours, scoped to developer-api. The Formlabs identity provider also supports OpenID Connect for interactive sign-in via PreForm / Local API.
      flows:
        clientCredentials:
          tokenUrl: https://api.formlabs.com/developer/v1/o/token/
          scopes:
            developer-api: Access the Formlabs Dashboard Developer API