API Reference > imodeljs-common > RpcInterface > IModelReadRpcInterface IModelReadRpcInterface Class The RPC interface for reading from an iModel. All operations only require read-only access. This interface is not normally used directly. See IModelConnection for higher-level and more convenient API for accessing iModels from a frontend. Extends RpcInterface Methods Name Description cancelSnap(_iModelToken: IModelTokenProps, _sessionId: string): Promise<void> Beta close(_iModelToken: IModelTokenProps): Promise<boolean> getAllCodeSpecs(_iModelToken: IModelTokenProps): Promise<any[]> getClassHierarchy(_iModelToken: IModelTokenProps, _startClassName: string): Promise<string[]> getDefaultViewId(_iModelToken: IModelTokenProps): Promise<Id64String> getElementProps(_iModelToken: IModelTokenProps, _elementIds: Id64String[]): Promise<ElementProps[]> getGeoCoordinatesFromIModelCoordinates(_iModelToken: IModelTokenProps, _props: string): Promise<GeoCoordinatesResponseProps> Beta getIModelCoordinatesFromGeoCoordinates(_iModelToken: IModelTokenProps, _props: string): Promise<IModelCoordinatesResponseProps> Beta getMassProperties(_iModelToken: IModelTokenProps, _props: MassPropertiesRequestProps): Promise<MassPropertiesResponseProps> Beta getModelProps(_iModelToken: IModelTokenProps, _modelIds: Id64String[]): Promise<ModelProps[]> getToolTipMessage(_iModelToken: IModelTokenProps, _elementId: string): Promise<string[]> getViewStateData(_iModelToken: IModelTokenProps, _viewDefinitionId: string): Promise<ViewStateProps> getViewThumbnail(_iModelToken: IModelTokenProps, _viewId: string): Promise<Uint8Array> openForRead(_iModelToken: IModelTokenProps): Promise<IModelProps> queryElementProps(_iModelToken: IModelTokenProps, _params: EntityQueryParams): Promise<ElementProps[]> queryEntityIds(_iModelToken: IModelTokenProps, _params: EntityQueryParams): Promise<Id64String[]> queryModelProps(_iModelToken: IModelTokenProps, _params: EntityQueryParams): Promise<ModelProps[]> queryModelRanges(_iModelToken: IModelTokenProps, _modelIds: Id64String[]): Promise<Range3dProps[]> queryRows(_iModelToken: IModelTokenProps, _ecsql: string, _bindings?: any[] | object, _limit?: QueryLimit, _quota?: QueryQuota, _priority?: QueryPriority): Promise<QueryResponse> readFontJson(_iModelToken: IModelTokenProps): Promise<any> requestSnap(_iModelToken: IModelTokenProps, _sessionId: string, _props: SnapRequestProps): Promise<SnapResponseProps> Beta getClient(): IModelReadRpcInterface Static Returns the IModelReadRpcInterface instance for the frontend. Inherited methods Name Inherited from Description forward<T>(parameters: IArguments): Promise<T> RpcInterface Obtains the implementation result for an RPC operation. isVersionCompatible(backend: string, frontend: string): boolean Static RpcInterface Determines whether the backend version of an RPC interface is compatible (according to semantic versioning) with the frontend version of the interface. Properties Name Type Description interfaceName Static "IModelReadRpcInterface" = "IModelReadRpcInterface" The immutable name of the interface. interfaceVersion Static string The semantic version of the interface. Inherited properties Name Type Inherited from Description configuration RpcConfiguration RpcInterface The configuration for the RPC interface. Defined in core/common/src/rpc/IModelReadRpcInterface.ts Line 38 Last Updated: 13 June, 2024