Open Inventory / Docs
EndpointsSpatial roomsRoom scansScanidPlacementsResourceid

Create or replace an item's current indoor 3D placement

The API runs on your application instance. Schemas and field names come directly from the OpenAPI specification. Session-authenticated requests require a session on that instance.

PUT
/room-scans/{scanId}/placements/{resourceId}

The scan must still be the active revision. Coordinates use its ARKit world frame in metres.

Authorization

bearerAuth
headerAuthorizationBearer <inv_ token>

Path Parameters

scanId*string
Formatuuid
resourceId*string
Formatuuid

Header Parameters

X-Organization-ID?string

Organization membership selected for this request. User-bound credentials may select any active membership; standalone tokens may only repeat their pinned organization ID.

Formatuuid

Request Body

application/json
  1. body
position*array<>

XYZ values in metres.

Items3 <= items <= 3
orientation*array<>

Normalized XYZW quaternion.

Items4 <= items <= 4
extent?array<>
Items3 <= items <= 3
confidence*number
Range0 <= value <= 1
method*string
Value in"scene-depth""mesh-raycast""plane-raycast""manual"
anchorIdentifier?string
Formatuuid
capturedAt*string
Formatdate-time
localizationEvidence?

Response Body

Placement saved

Example Request
curl -X PUT 'https://inventory.example.com/api/v1/room-scans/497f6eca-6276-4993-bfeb-53cbbbba6f08/placements/497f6eca-6276-4993-bfeb-53cbbbba6f08' \  -H 'Content-Type: application/json' \  -d '{  "position": [    -10000,    -10000,    -10000  ],  "orientation": [    -1,    -1,    -1,    -1  ],  "confidence": 0,  "method": "scene-depth",  "capturedAt": "2019-08-24T14:15:22Z"}'
Example Response
Empty