How can we integrate SketchUp with our custom application?

We are developing a custom software product where we want our public customers to use Sketch Up to draw their homes and submit for review.

Does SketchUp APIs provide enough support to integrate with our custom application? Will they store the developed 3D building in our database? Which license we need to take to use this?


I don’t think there is any simple way to integrate with a running instance of SketchUp. It would require some kind of inter-process communication that could be quite difficult to get working reliably. But if your customers use pure SketchUp to create a model and save it as skp, your program could use the SketchUp SDK to read that skp file and import its data into your program. The file format itself is proprietary.

Do they draw from scratch? Or do you provide some configurations?
Between ‘I want this’ and the definitive proposal lies an enormous amount of variety and (mis)interpretations.
If a picture says more than a thousand words and a 3D model says more than a thousand pictures, you need a whole lot of words…

Anyone can use SketchUp Free, it comes with one project in Trimble Connect cloud and one can edit models in the browser.

SketchUp Pro comes with unlimited projects and storage and you can invite possible clients by inviting them to the project.

Trimble connect has it’s own API but if you want to run extensions for automated process and datamanagement you need to have a Trimble Connect business Premium plan on top of the SketchUp Pro plan.

Beyond what was said about importing SKP files into your application, please be aware that your company cannot sublicense it’s license to anyone else.

See section 2 of the End User License Agreement …

… and the Trimble APIs Developer Agreement …

The SketchUp APIs for working with the “live” application provide mechanisms for extensions (aka “plugins”) that run within the SketchUp application process. This is meant primarily to extend the user’s modeling workflow.

But the APIs also have import from and export to file capabilities (as mentioned above.)

In addition the SketchUp Ruby API has HTTP request and response classes that can be used to send or receive data from a remote website or network location.

So, basically you are thinking of using SketchUp backwards. SketchUp cannot be subservient to your application. But you can have users install a SketchUp extension that shares model data or files with another application.

As this is a commercial use, your “public users” will need to purchase a subscription license to SketchUp Pro desktop edition in order to install and run extensions. The web editions do not have an extension API.

No. Not by default. But you can have an extension send data to a website, or export to a special data format file (JSON, etc.) and have your application import this.

Can you elaborate a bit more on what “integrate” means in your context?

Not sure what this means. But if you need to sync model data with your application that’s something you’d have to do as part of an extension running in SketchUp.

Do you want users to interact with your application while using SketchUp? Or are you looking to add support for the SKP file format so that users can load SKP files into your application?