Object types
| Type | Description |
|---|---|
| Platform (CC0) | Open-license objects shared across all orgs |
| Org-private | Objects uploaded by a specific org, visible only to that org |
Supported formats
Org admins can upload models in any of these formats:| Format | Notes |
|---|---|
| GLB | Primary format, no conversion needed |
| USDZ | Converted to GLB post-upload; USDZ retained for AR |
| OBJ | Converted to GLB via Blender Lambda post-upload |
| FBX | Converted to GLB via Blender Lambda post-upload |
Making an object trackable
For an object to be tracked during a capture session, it needs a.referenceobject file — an Apple ML-trained descriptor of its geometry, generated from the USDZ mesh.
The platform handles this as a processing request. When an admin links a non-trackable object to a skill, a request is automatically filed. The Holos team processes it and uploads the resulting .referenceobject file.
Key fields
| Field | Description |
|---|---|
name | Display name |
tags | Searchable labels |
source.glb | S3 key for the GLB mesh |
source.usdz | S3 key for the USDZ mesh |
source.referenceObject | S3 key for the .referenceobject AR descriptor |
glbUrl | Presigned download URL for GLB |
usdzUrl | Presigned download URL for USDZ |
referenceObjectUrl | Presigned download URL for .referenceobject |
thumbnailUrl | Presigned URL for the thumbnail image |
approvalStatus | pending · approved · rejected |
conversionStatus | pending · processing · complete · failed |
Endpoints
GET /api/org/:orgId/objects— list objects (platform + org-private)GET /api/org/:orgId/objects/by-ids/:ids— batch fetch by_idPOST /api/org/:orgId/objects/upload— initiate an org object uploadPATCH /api/org/:orgId/objects/:objectId— update name, tags, approval status
