Dust Identity Threads API

Create and manage threads

Operations 30

GET /api/v1/assemblies List the assembly Threads the caller can view #
GET /api/v1/assemblies/{assembly_id}/parts List the direct Parts of an assembly Thread #
POST /api/v1/assemblies/{assembly_id}/parts Attach a Part to an assembly Thread #
DELETE /api/v1/assemblies/{assembly_id}/parts Detach a Part from an assembly Thread #
PATCH /api/v1/assemblies/{assembly_id}/parts/protection Set Part protection relation #
PUT /api/v1/assemblies/{assembly_id}/thread-fields Set or clear a thread-valued assembly field #
PATCH /api/v1/assemblies/{assembly_id}/kind Convert a Thread between unit and assembly kind #
GET /api/v1/assemblies/{assembly_id}/rolled-up-parts List transitive Parts for an assembly Thread #
POST /api/v1/threads Create one or more threads #
GET /api/v1/threads List threads with cursor pagination. #
GET /api/v1/threads/count Count threads with optional filters. #
POST /api/v1/threads/permissions Get user permissions on threads. #
POST /api/v1/threads/{thread_id} Update thread field data #
GET /api/v1/threads/{thread_id} Get thread data. #
POST /api/v1/threads/{thread_id}/data Update thread field data #
GET /api/v1/threads/{thread_id}/data/archived List archived thread field data #
POST /api/v1/threads/{thread_id}/data/restore Restore archived thread field data #
POST /api/v1/threads/{thread_id}/presence Heartbeat presence and list the current viewers of a thread #
GET /api/v1/threads/{thread_id}/access List access contexts for threads. #
PATCH /api/v1/threads/archive Archive a set of threads. #
PATCH /api/v1/threads/restore Restore archived threads. #
PATCH /api/v1/threads/{thread_id}/thumbnail Set thread's thumbnail #
POST /api/v1/threads/{thread_id}/thumbnail Upload thread thumbnail. #
GET /api/v1/threads/{thread_id}/shared Thread shared with #
GET /api/v1/threads/{thread_id}/files List resources for a Thread #
GET /api/v1/threads/{thread_id}/files/{res_id} Get a file resource for a Thread #
POST /api/v1/threads/{thread_id}/files/{res_id} Update a thread resource #
GET /api/v1/threads/{thread_id}/links List thread links #
POST /api/v1/imports/plan Dry-run an Assembly Import Package into an Import Plan #
POST /api/v1/imports/commit Commit an Assembly Import Package all-or-nothing #

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/dust-identity-threads-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

dust-identity-threads-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: DUST Threads API
  description: DUST Platform API
  version: 2026.7.4
servers:
- url: https://apid.dustid.io
  description: DUST API for trusted provenance.
security:
- Bearer: []
tags:
- name: Threads
  description: Create and manage threads
paths:
  /api/v1/assemblies:
    get:
      operationId: assembly.list
      parameters:
      - in: query
        name: includeArchived
        schema:
          anyOf:
          - const: 'false'
          - const: 'true'
          - type: boolean
      - in: query
        name: q
        schema:
          type: string
      summary: List the assembly Threads the caller can view
      tags:
      - Threads
      responses:
        '200':
          description: Assemblies
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssemblyListResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: UNAUTHORIZED
                  message:
                    type: string
                  status:
                    const: 401
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
  /api/v1/assemblies/{assembly_id}/parts:
    get:
      operationId: assembly.children
      parameters:
      - in: path
        name: assembly_id
        schema:
          anyOf:
          - type: string
            description: a UUID
            format: uuid
            pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
          - const: 00000000-0000-0000-0000-000000000000
            description: a UUID
            format: uuid
          - const: ffffffff-ffff-ffff-ffff-ffffffffffff
            description: a UUID
            format: uuid
          format: uuid
        required: true
        description: a UUID
      summary: List the direct Parts of an assembly Thread
      tags:
      - Threads
      responses:
        '200':
          description: Direct Parts
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssemblyChildrenResponse'
        '400':
          description: Invalid Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: INVALID_REQUEST
                  message:
                    type: string
                  status:
                    const: 400
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: UNAUTHORIZED
                  message:
                    type: string
                  status:
                    const: 401
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: NOT_FOUND
                  message:
                    type: string
                  status:
                    const: 404
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
    post:
      operationId: assembly.attach_part
      parameters:
      - in: path
        name: assembly_id
        schema:
          anyOf:
          - type: string
            description: a UUID
            format: uuid
            pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
          - const: 00000000-0000-0000-0000-000000000000
            description: a UUID
            format: uuid
          - const: ffffffff-ffff-ffff-ffff-ffffffffffff
            description: a UUID
            format: uuid
          format: uuid
        required: true
        description: a UUID
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AttachPartRequest'
      summary: Attach a Part to an assembly Thread
      tags:
      - Threads
      responses:
        '200':
          description: Attached
          content:
            application/json:
              schema:
                type: boolean
        '400':
          description: Invalid Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: INVALID_REQUEST
                  message:
                    type: string
                  status:
                    const: 400
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: UNAUTHORIZED
                  message:
                    type: string
                  status:
                    const: 401
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: NOT_FOUND
                  message:
                    type: string
                  status:
                    const: 404
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
    delete:
      operationId: assembly.detach_part
      parameters:
      - in: path
        name: assembly_id
        schema:
          anyOf:
          - type: string
            description: a UUID
            format: uuid
            pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
          - const: 00000000-0000-0000-0000-000000000000
            description: a UUID
            format: uuid
          - const: ffffffff-ffff-ffff-ffff-ffffffffffff
            description: a UUID
            format: uuid
          format: uuid
        required: true
        description: a UUID
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DetachPartRequest'
      summary: Detach a Part from an assembly Thread
      tags:
      - Threads
      responses:
        '200':
          description: Detached
          content:
            application/json:
              schema:
                type: boolean
        '400':
          description: Invalid Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: INVALID_REQUEST
                  message:
                    type: string
                  status:
                    const: 400
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: UNAUTHORIZED
                  message:
                    type: string
                  status:
                    const: 401
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: NOT_FOUND
                  message:
                    type: string
                  status:
                    const: 404
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
  /api/v1/assemblies/{assembly_id}/parts/protection:
    patch:
      operationId: assembly.set_part_protection
      parameters:
      - in: path
        name: assembly_id
        schema:
          anyOf:
          - type: string
            description: a UUID
            format: uuid
            pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
          - const: 00000000-0000-0000-0000-000000000000
            description: a UUID
            format: uuid
          - const: ffffffff-ffff-ffff-ffff-ffffffffffff
            description: a UUID
            format: uuid
          format: uuid
        required: true
        description: a UUID
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SetPartProtectionRequest'
      summary: Set Part protection relation
      tags:
      - Threads
      responses:
        '200':
          description: Updated
          content:
            application/json:
              schema:
                type: boolean
        '400':
          description: Invalid Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: INVALID_REQUEST
                  message:
                    type: string
                  status:
                    const: 400
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: UNAUTHORIZED
                  message:
                    type: string
                  status:
                    const: 401
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: NOT_FOUND
                  message:
                    type: string
                  status:
                    const: 404
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
  /api/v1/assemblies/{assembly_id}/thread-fields:
    put:
      operationId: assembly.set_thread_field
      parameters:
      - in: path
        name: assembly_id
        schema:
          anyOf:
          - type: string
            description: a UUID
            format: uuid
            pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
          - const: 00000000-0000-0000-0000-000000000000
            description: a UUID
            format: uuid
          - const: ffffffff-ffff-ffff-ffff-ffffffffffff
            description: a UUID
            format: uuid
          format: uuid
        required: true
        description: a UUID
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SetThreadFieldRequest'
      summary: Set or clear a thread-valued assembly field
      tags:
      - Threads
      responses:
        '200':
          description: Updated
          content:
            application/json:
              schema:
                type: boolean
        '400':
          description: Invalid Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: INVALID_REQUEST
                  message:
                    type: string
                  status:
                    const: 400
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: UNAUTHORIZED
                  message:
                    type: string
                  status:
                    const: 401
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: NOT_FOUND
                  message:
                    type: string
                  status:
                    const: 404
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
  /api/v1/assemblies/{assembly_id}/kind:
    patch:
      operationId: assembly.convert
      parameters:
      - in: path
        name: assembly_id
        schema:
          anyOf:
          - type: string
            description: a UUID
            format: uuid
            pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
          - const: 00000000-0000-0000-0000-000000000000
            description: a UUID
            format: uuid
          - const: ffffffff-ffff-ffff-ffff-ffffffffffff
            description: a UUID
            format: uuid
          format: uuid
        required: true
        description: a UUID
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConvertThreadKindRequest'
      summary: Convert a Thread between unit and assembly kind
      tags:
      - Threads
      responses:
        '200':
          description: Converted
          content:
            application/json:
              schema:
                type: boolean
        '400':
          description: Invalid Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: INVALID_REQUEST
                  message:
                    type: string
                  status:
                    const: 400
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: UNAUTHORIZED
                  message:
                    type: string
                  status:
                    const: 401
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: NOT_FOUND
                  message:
                    type: string
                  status:
                    const: 404
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
  /api/v1/assemblies/{assembly_id}/rolled-up-parts:
    get:
      operationId: assembly.rolled_up_parts
      parameters:
      - in: path
        name: assembly_id
        schema:
          anyOf:
          - type: string
            description: a UUID
            format: uuid
            pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
          - const: 00000000-0000-0000-0000-000000000000
            description: a UUID
            format: uuid
          - const: ffffffff-ffff-ffff-ffff-ffffffffffff
            description: a UUID
            format: uuid
          format: uuid
        required: true
        description: a UUID
      summary: List transitive Parts for an assembly Thread
      tags:
      - Threads
      responses:
        '200':
          description: Rolled-up Parts
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RolledUpPartsResponse'
        '400':
          description: Invalid Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: INVALID_REQUEST
                  message:
                    type: string
                  status:
                    const: 400
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: UNAUTHORIZED
                  message:
                    type: string
                  status:
                    const: 401
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: NOT_FOUND
                  message:
                    type: string
                  status:
                    const: 404
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
  /api/v1/threads:
    post:
      operationId: threads.create
      summary: Create one or more threads
      description: Create multiple threads in a single request. Allows for key-value thread objects and automatically build the necessary thread field data structure for each thread.
      tags:
      - Threads
      responses:
        '201':
          description: Created threads
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThreadCreateResponse'
        '400':
          description: Invalid Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: INVALID_REQUEST
                  message:
                    type: string
                  status:
                    const: 400
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: UNAUTHORIZED
                  message:
                    type: string
                  status:
                    const: 401
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
      requestBody:
        required: true
        content:
          application/json:
            schema:
              anyOf:
              - $ref: '#/components/schemas/ThreadCreateManyRawRequest'
              - $ref: '#/components/schemas/ThreadCreateSingleRequest'
              - $ref: '#/components/schemas/ThreadCreateManyRequest'
    get:
      operationId: threads.list
      summary: List threads with cursor pagination.
      tags:
      - Threads
      responses:
        '200':
          description: List of threads
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThreadQueryResponse'
        '400':
          description: Invalid Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: INVALID_REQUEST
                  message:
                    type: string
                  status:
                    const: 400
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: UNAUTHORIZED
                  message:
                    type: string
                  status:
                    const: 401
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
      parameters:
      - in: query
        name: archivedOnly
        schema:
          anyOf:
          - const: 'false'
          - const: 'true'
          - type: boolean
      - in: query
        name: bundleId
        schema:
          anyOf:
          - type: string
            description: Search within a bundle, or use 'none' for threads without a bundle
            format: uuid
            pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
          - const: 00000000-0000-0000-0000-000000000000
            description: Search within a bundle, or use 'none' for threads without a bundle
            format: uuid
          - const: ffffffff-ffff-ffff-ffff-ffffffffffff
            description: Search within a bundle, or use 'none' for threads without a bundle
            format: uuid
          - const: none
            description: Search within a bundle, or use 'none' for threads without a bundle
        description: Search within a bundle, or use 'none' for threads without a bundle
      - in: query
        name: createdBy
        schema:
          anyOf:
          - type: string
            description: Filter by creator user ID
            format: uuid
            pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
          - const: 00000000-0000-0000-0000-000000000000
            description: Filter by creator user ID
            format: uuid
          - const: ffffffff-ffff-ffff-ffff-ffffffffffff
            description: Filter by creator user ID
            format: uuid
          format: uuid
        description: Filter by creator user ID
      - in: query
        name: cursor
        schema:
          anyOf:
          - type: string
          - type: 'null'
      - in: query
        name: excludeTransferred
        schema:
          anyOf:
          - const: 'false'
          - const: 'true'
          - type: boolean
      - in: query
        name: hasResources
        schema:
          anyOf:
          - const: 'false'
          - const: 'true'
          - type: boolean
      - in: query
        name: includeArchived
        schema:
          anyOf:
          - const: 'false'
          - const: 'true'
          - type: boolean
      - in: query
        name: order
        schema:
          enum:
          - asc
          - desc
      - in: query
        name: orderCol
        schema:
          enum:
          - createdAt
          - name
          - updatedAt
      - in: query
        name: ownedByTeam
        schema:
          type: string
      - in: query
        name: pageSize
        schema:
          anyOf:
          - type: number
          - type: string
            pattern: ^(?:(?!^-0\.?0*$)(?:-?(?:(?:0|[1-9]\d*)(?:\.\d+)?)|\.\d+?))$
      - in: query
        name: q
        schema:
          type: string
        description: Search query string. Searches over name and description by default.
      - in: query
        name: queryCol
        schema:
          enum:
          - description
          - name
      - in: query
        name: tagType
        schema:
          enum:
          - BAR_CODE
          - DATA_MATRIX
          - DUST
          - NFC
          - QR
      - in: query
        name: templateId
        schema:
          anyOf:
          - type: string
            description: Filter by thread template
            format: uuid
            pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
          - const: 00000000-0000-0000-0000-000000000000
            description: Filter by thread template
            format: uuid
          - const: ffffffff-ffff-ffff-ffff-ffffffffffff
            description: Filter by thread template
            format: uuid
          format: uuid
        description: Filter by thread template
      - in: query
        name: threadIds
        schema:
          anyOf:
          - type: string
            description: Filter to this set of thread IDs (repeatable query param). Non-UUID values are ignored; threads the caller cannot see are silently omitted.
          - type: array
            description: Filter to this set of thread IDs (repeatable query param). Non-UUID values are ignored; threads the caller cannot see are silently omitted.
            items:
              type: string
        description: Filter to this set of thread IDs (repeatable query param). Non-UUID values are ignored; threads the caller cannot see are silently omitted.
      - in: query
        name: transferredOnly
        schema:
          anyOf:
          - const: 'false'
          - const: 'true'
          - type: boolean
      - in: query
        name: withActiveShipment
        schema:
          anyOf:
          - const: 'false'
          - const: 'true'
          - type: boolean
  /api/v1/threads/count:
    get:
      operationId: threads.count
      summary: Count threads with optional filters.
      description: Returns the exact total for the same filter set used by `threads.list`. Use this to compute totals or total pages when the list endpoint is using cursor pagination.
      tags:
      - Threads
      responses:
        '200':
          description: Total threads
          content:
            application/json:
              schema:
                type: object
                properties:
                  total:
                    type: number
                required:
                - total
        '400':
          description: Invalid Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: INVALID_REQUEST
                  message:
                    type: string
                  status:
                    const: 400
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    const: UNAUTHORIZED
                  message:
                    type: string
                  status:
                    const: 401
                  detail:
                    type: object
                    description: Extra context information specific to this error
                required:
                - code
                - message
                - status
      parameters:
      - in: query
        name: archivedOnly
        schema:
          anyOf:
          - const: 'false'
          - const: 'true'
          - type: boolean
      - in: query
        name: bundleId
        schema:
          anyOf:
          - type: string
            description: Search within a bundle, or use 'none' for threads without a bundle
            format: uuid
            pattern: '[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}'
          - const: 00000000-0000-0000-0000-000000000000
            description: Search within a bundle, or use 'none' for threads without a bundle
            format: uuid
          - const: ffffffff-ffff-ffff-ffff-ffffffffffff
            description: Search within a bundle, or use 'none' for threads without a bundle
            format: uuid
          - const: none
            description: Search within a bundle, or use 'none' for threads without a bundle
        description: Search within a bundle, or use 'none' for threads without a bundle
      - in: query
        name: createdBy
        schema:
          anyOf:
          - type: string
            description: Filter by creator us

# --- truncated at 32 KB (367 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/dust-identity/refs/heads/main/openapi/dust-identity-threads-api-openapi.yml