CubeCom Pro Docs
Concepts

Assets & revisions

ObjectAsset is the library identity. ObjectAssetRevision is the immutable pin used by ProductModel.

An ObjectAsset is a 3D object in the library — a named entity that contains revisions.

An ObjectAssetRevision is an immutable snapshot of a specific upload. Published ProductModels pin exact ObjectAssetRevisions so that history does not drift.

ObjectAsset status

StatusMeaning
PROCESSINGUpload is being processed
READYAvailable for use
FAILEDProcessing failed
ARCHIVEDRetained but not available for new use

ObjectAsset purpose

PurposeMeaning
MODELPrimary 3D model
COMPONENTSwappable component for REPLACE_COMPONENT

Schema

type ObjectAssetModel {
  id: ID!
  name: String!
  currentRevisionId: String
  status: ObjectAssetStatus!
  purpose: ObjectAssetPurpose!
  # ... additional fields
}

type ObjectAssetRevisionModel {
  id: ID!
  objectAssetId: String!
  contentHash: String!
  frozenAt: DateTime!
  version: Float!
  # ... additional fields
}

Invariants

  • Uploading a new revision to an ObjectAsset does not change published ProductModels. They pin specific ObjectAssetRevisions by ID.
  • The library currentRevisionId is separate from what published products pin.
  • Archiving an ObjectAsset is blocked while non-archived products pin any of its revisions. The error names the blocking products.
  • Archiving a product may cascade-archive unused pinned objects.

Next

On this page