OBJECT

Model

A digital twin, metadata and access to assets associated with a 3D model of a space.

link GraphQL Schema definition

  • type Model implements ModelSummary {
  • id: ID!
  • internalId: ID
  • organization: ID
  • created: DateTime
  • modified: DateTime
  • name: String
  • description: String
  • image: Photo
  • address: Address
  • geolocation: GeoLocation
  • # Overall state of the model
  • state: ModelState
  • # Who is allowed to see this model.
  • visibility: ModelVisibility
  • # Whether the model is a demo model. Demo models are the only models accessible in
  • # sandbox mode.
  • demo: Boolean
  • # Lists the floors associated with the model, optionally filtering by id.
  • # If any of the ids do not exist they will not appear in the returned list.
  • # The returned list may be empty if there are no matches.
  • #
  • # Arguments
  • # ids: If specified only floors with the given ids will be
  • # included.
  • floors(ids: [ID!]): [ModelFloor!]
  • # Optional MLS info associated with this model.
  • mls: ModelMlsDetails
  • # Information about additional options that may be / are enabled form this model.
  • options: ModelOptions
  • # Information about the current progress while the model is being processed.
  • # This will not be available if the model is `staging`.
  • # This will not change if the model is not `processing`.
  • processing: ModelProcessingDetails
  • # Settings displayed for public models.
  • publication: ModelPublicationDetails
  • # Lists the rooms associated with the model,
  • # optionally filtering by id and/or tags.
  • #
  • # If any of the ids do not exist they will not appear in the returned list.
  • #
  • # The returned list may be empty if there are no matches.
  • #
  • # When specifying tags rooms will be returned that
  • #
  • # * have all the listed tags
  • #
  • # * may have additional tags
  • #
  • # In order to craft a query to get all models with tag a or tag b, graph labels
  • # must be used, like:
  • #
  • # {
  • #
  • # baths: rooms(tags: "bathroom") { ... }
  • #
  • # bedrooms: rooms(tags: "bedroom") { ... }
  • # }
  • #
  • # Arguments
  • # ids: undefined
  • # tags: undefined
  • rooms(ids: [ID], tags: [String]): [ModelRoom!]
  • # Lists the Labels associated with this model.
  • #
  • # Arguments
  • # includeDisabled: Include Mattertags which are currently
  • # disabled in the public view of the model.
  • # Default: false
  • labels(includeDisabled: Boolean): [Label!]
  • # Lists the Mattertags associated with this model.
  • #
  • # Arguments
  • # includeDisabled: Include Mattertags which are currently
  • # disabled in the public view of the model.
  • # Default: false
  • mattertags(includeDisabled: Boolean): [Mattertag!]
  • # Lists the measurements associated with this model.
  • #
  • # @deprecated Use measurementPaths instead, this field is no longer populated as
  • # of v2020.11.05.
  • #
  • # Arguments
  • # includeDisabled: Include measurements which are currently
  • # disabled in the public view of the model.
  • # Default: false
  • measurements(includeDisabled: Boolean): [Measurement!]!
  • # Lists the measurement paths associated with this model.
  • #
  • # Arguments
  • # includeDisabled: Include measurement paths which are currently
  • # disabled in the public view of the model.
  • # Default: false
  • measurementPaths(includeDisabled: Boolean): [MeasurementPath!]!
  • # A container for retrieving different types of assets from the model.
  • assets: ModelAssets!
  • # Retrieve a specific bundle by id.
  • # If no such bundle exists then an
  • # error with code: 'not.found' will
  • # appear in the errors section.
  • #
  • # @error not.found: If no bundle with the given id exists.
  • #
  • # Arguments
  • # id: undefined
  • bundle(id: ID!): ModelBundle
  • # List all of the bundles that may
  • # be associated with this model.
  • #
  • # Arguments
  • # availability: If unspecified all bundles will be returned.
  • # Otherwise only bundles with the matching availability
  • # will be returned.
  • # If no bundles with the given `availability` exist
  • # an empty array will be returned.
  • bundles(availability: Availability): [ModelBundle!]
  • # Locations of interest within the model. This is generally used to render
  • # waypoints to navigate through a model.
  • #
  • # Arguments
  • # ids: If specified only locations with the given ids will be
  • # included.
  • # If the same id is repeated the location will only appear in the result list
  • # once.
  • # If no location with a given id exists there will be no corresponding entry in
  • # the list.
  • # tags: If specified only locations that contain all the
  • # specified tags will be included.
  • locations(ids: [String!], tags: [String!]): [AnchorLocation]
  • # Locations within the model that have a panoramic image associated with them.
  • # The location is the position of the camera showing the panorama and is usually
  • # associated with an anchor location that should be used for navigation.
  • #
  • # Arguments
  • # ids: If specified only locations with the given ids will be
  • # included.
  • # If the same id is repeated the location will only appear in the result list
  • # once.
  • # If no location with a given id exists there will be no corresponding entry in
  • # the list.
  • # variants: If specified only return locations that match one of
  • # the specified variants.
  • panoLocations(ids: [String!], variants: [String!]): [PanoramicImageLocation!]
  • # Fetch the active highlight reel associated with this model.
  • activeHighlightReel: HighlightReel
  • # List all highlight reels associated with this model.
  • highlightReels: [HighlightReel!]!
  • }