Skip to content

Platform

Information about the SketchUp platform the extension is running on — desktop, web, or iPad.

Access it from SketchUpApi.platform after connecting. Use it to write platform-specific code or gate features on the SketchUp version.

let { platform } = SketchUpApi;
console.log(platform.platform);
// => 'WEB', 'Desktop', or 'iPad'
console.log(platform.isDesktop);
// => false (on web)
console.log(platform.majorVersion);
// => 2026

Sketchup.platform

readonly isDesktop: boolean

true when running inside SketchUp Desktop (Windows or Mac).


readonly isIpad: boolean

true when running inside SketchUp for iPad.


readonly isWeb: boolean

true when running inside SketchUp Web (the browser app).


readonly majorVersion: number

The parsed major version number, like 2026.


readonly platform: string

The platform identifier — 'WEB', 'Desktop', 'DesktopRuby', or 'iPad'.


readonly platformFeatures: string[]

The list of feature flags enabled for this platform.


readonly SketchUpVersion: Version

The full semantic version as a Version object — useful for comparing against a minimum required version.


readonly supportsAmbientOcclusionColor: boolean

true if the ambient occlusion color property is supported. Requires Desktop 2026 or later; always true on web and iPad.


readonly supportsConsistentUndoRevisions: boolean

true if undo history is consistent between operations. false on DesktopRuby where the Ruby backend handles undo.


readonly supportsCreateDuplicateStyle: boolean

true if styles can be duplicated. Requires Desktop 26.2.0 or later; always true on web and iPad.


readonly supportsCRSLocation: boolean

true if CRS (Coordinate Reference System) location is supported on this platform.


readonly supportsPBR: boolean

true if physically-based rendering (PBR) is available. Requires SketchUp Desktop 2025 or later; always true on web and iPad.


readonly supportsRemoveStyle: boolean

true if styles can be removed. Requires Desktop 25.1.0 or later; always true on web and iPad.


readonly supportsSceneGetActiveSectionPlanes: boolean

true if scene.getActiveSectionPlanes() is supported. Requires Desktop 2026 or later; always true on web and iPad.


readonly supportsSceneReordering: boolean

true if scenes can be reordered. Requires Desktop 2025 or later; always true on web and iPad.


readonly supportsScreenshotRenderOptions: boolean

true if screenshot render options (like scale) are supported. false on DesktopRuby.


readonly supportsSnaps: boolean

true if snap-point queries are supported. Requires Desktop 2025 or later; always true on web and iPad.


readonly uniqueSceneNames: boolean

true if scene names must be unique. Requires Desktop 2026 or later; always true on web and iPad.


readonly version: string

The SketchUp version string, like '2026.0'.

ensureSupportsPBR(): void

Throws if PBR is not supported on this platform and version. Use before calling PBR-related API methods.

void


supportsColorizedImageType(dataType): dataType is ImageFileType

Returns true if the given image format is supported for colorized screenshots. JPEG is not supported on SketchUp Web.

Parameter Type Description

dataType

string

image format string, e.g. 'png' or 'jpg'

dataType is ImageFileType


supportsImageType(dataType): dataType is ImageFileType

Returns true if the given image format is supported for screenshots. GIF is not supported on SketchUp Web.

Parameter Type Description

dataType

string

image format string, e.g. 'png' or 'gif'

dataType is ImageFileType


toString(): string

string

readonly isP11: boolean

true when running inside SketchUp Web (the browser app).