SmartDraw's Open API

The SmartDraw Open API allows you to create extensions that let you skip the drawing process and generate diagrams from data automatically.

You can generate diagrams from data like these:

Class diagram example

Build a class diagram from the source code

Decision tree example

Show decisions in your project as a decision tree

Database diagram

Visualize relationships in your database

What Makes SmartDraw's API Easy

Other diagramming API's, like Visio's for example, require you to specify the coordinates of every shape and line in the diagram. This makes generating a diagram with code tedious and complex.

The SmartDraw API is very different because it leverages SmartDraw's intelligent formatting engine, the ability to automatically format and connect shapes on a page based on their relationships.

SmartDraw uses a markup language based on JSON to translate intelligent formatting into code. This markup language is called VisualScript and it is the foundation of SmartDraw's Open API. Learn more about VisualScript.

SmartDraw simple to use API

Using VisualScript, you can build your own extensions that represent data as a diagram.

You add these applications as Extensions that are incorporated into the user interface. Learn more about Extensions.

SmartDraw Extensions


VisualScript is a markup language used to describe diagrams and the foundation of SmartDraw's Open API. It's easy to use because it leverages SmartDraw's intelligent formatting to make specifying a tree or a flow as simple as specifying the parents and children. No positioning information is needed because the intelligent formatting engine knows how to lay them out perfectly on the page.

This simple VisualScript markup creates a tree with two child shapes connected to in a hierarchy arrangement.

The markup:

{"Shape": {"ShapeConnector": ["ShapeConnectorType": "Hierarchy", {"Shapes": [{}, {}]}]}}

The generated visual:

Simple org chart described using VisualScript

Without this power it would not be practical to generate the kind of diagrams you need with code.

But VisualScript does more than just lay out shapes on the page. You can add labels, shape data, tables inside shapes, and much more. Learn more about VisualScript.

Documentation for VisualScript

Learn how to write VisualScript the foundation for SmartDraw's API.

VisualScript SDK
VisualScript SDK

Learn the methods for building VisualScript. Learn how to use the SDK.

VisualScript cookbook
VisualScript Cookbook

Learn how to build diagrams using VisualScript markup. Learn more.

VisualScript cookbook
VisualScript Markup Reference

An overview of all the objects and constants available in the VisualScript markup language. Learn more.

Documentation for Extensions

There are three ways to create an extension in SmartDraw using VisualScript markup.

JavaScript extension tutorial
JavaScript Extension

Generate code and the related UI directly in the SmartDraw app using a built-in editor. Learn more.

REST extension tutorial
REST Extension

Build an end-user UI to access your extension, but generate VisualScript at an external point. Learn more.

Server Extension tutorial
Server Extension

Build a completely custom web app hosted independent of SmartDraw. Learn more.

Click Here to Get Expert Help

Contact Us