Microsoft Visio API website screenshot

Microsoft Visio API

Microsoft Visio provides APIs for creating, editing, and managing Visio diagrams and drawings. The Visio JavaScript API enables developers to build Office Add-ins that interact with Visio diagrams embedded in SharePoint Online pages, accessing document elements such as pages, shapes, hyperlinks, comments, and shape data. Visio APIs support programmatic diagram manipulation, visual overlay creation, mouse event handling, and data visualization workflows.

2 APIs 0 Features
Business ProcessCollaborationDiagramsEnterpriseFlowchartsMicrosoft 365Visualization

APIs

Visio JavaScript API

The Visio JavaScript API enables building Office Add-ins that interact with Visio diagrams embedded in classic SharePoint Online pages. The API provides access to document eleme...

Microsoft Graph Visio API

Access and manipulate Visio files stored in OneDrive and SharePoint through Microsoft Graph. While direct Visio-specific REST endpoints are limited, Microsoft Graph provides fil...

Collections

Pricing Plans

Visio Plans Pricing

3 plans

PLANS

Rate Limits

Visio Rate Limits

5 limits

RATE LIMITS

FinOps

Visio Finops

FINOPS

Semantic Vocabularies

Visio Context

35 classes · 8 properties

JSON-LD

API Governance Rules

Microsoft Visio API API Rules

10 rules · 2 errors 6 warnings

SPECTRAL

JSON Structure

Visio Shape Structure

0 properties

JSON STRUCTURE

Example Payloads

Resources

📜
TermsOfService
TermsOfService
📜
PrivacyPolicy
PrivacyPolicy
🌐
DeveloperPortal
DeveloperPortal
🟢
StatusPage
StatusPage
💰
Pricing
Pricing
📰
Blog
Blog
📄
ChangeLog
ChangeLog
🔗
OpenAPI
OpenAPI
🔗
JSONSchema
JSONSchema
🔗
JSONSchema
JSONSchema
🔗
JSONStructure
JSONStructure
🔗
JSONLD
JSONLD
🔗
Vocabulary
Vocabulary
🔗
SpectralRules
SpectralRules

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Visio JavaScript API
  version: '1.1'
request:
  auth:
    type: apikey
    key: X-Embedded-Session
    value: '{{X-Embedded-Session}}'
    placement: header
items:
- info:
    name: Documents
    type: folder
  items:
  - info:
      name: Get Document
      type: http
    http:
      method: GET
      url: https://appsforoffice.microsoft.com/embedded/1.0/document
    docs: Returns the current Visio document loaded in the embedded session, including its properties and view settings.
- info:
    name: Pages
    type: folder
  items:
  - info:
      name: List Pages
      type: http
    http:
      method: GET
      url: https://appsforoffice.microsoft.com/embedded/1.0/document/pages
    docs: Returns all pages in the current Visio document. Each page includes its name, index, background status, and view
      settings.
  - info:
      name: Get Page
      type: http
    http:
      method: GET
      url: https://appsforoffice.microsoft.com/embedded/1.0/document/pages/:pageName
      params:
      - name: pageName
        value: ''
        type: path
        description: Name of the Visio page to retrieve
    docs: Returns a specific page from the Visio document by its name. Includes page properties, view configuration, and associated
      shapes.
  - info:
      name: Get Active Page
      type: http
    http:
      method: GET
      url: https://appsforoffice.microsoft.com/embedded/1.0/document/getActivePage
    docs: Returns the currently active page in the Visio document embedded in the SharePoint page. Includes all shapes and
      view configuration for the page.
  - info:
      name: Update Page View
      type: http
    http:
      method: PATCH
      url: https://appsforoffice.microsoft.com/embedded/1.0/document/pages/:pageName/view
      params:
      - name: pageName
        value: ''
        type: path
        description: Name of the Visio page
      body:
        type: json
        data: '{}'
    docs: Updates the view settings for a specific Visio page, including zoom level and scroll position.
- info:
    name: Shapes
    type: folder
  items:
  - info:
      name: List Shapes
      type: http
    http:
      method: GET
      url: https://appsforoffice.microsoft.com/embedded/1.0/document/pages/:pageName/shapes
      params:
      - name: pageName
        value: ''
        type: path
        description: Name of the Visio page
    docs: Returns all shapes on the specified Visio page. Each shape includes its name, text, ID, selection state, bounding
      box, and associated data.
  - info:
      name: Get Shape
      type: http
    http:
      method: GET
      url: https://appsforoffice.microsoft.com/embedded/1.0/document/pages/:pageName/shapes/:shapeId
      params:
      - name: pageName
        value: ''
        type: path
        description: Name of the Visio page
      - name: shapeId
        value: ''
        type: path
        description: Numeric ID of the shape
    docs: Returns a specific shape on the Visio page identified by its shape ID. Includes shape text, data items, hyperlinks,
      and visual view properties.
  - info:
      name: Update Shape View
      type: http
    http:
      method: PATCH
      url: https://appsforoffice.microsoft.com/embedded/1.0/document/pages/:pageName/shapes/:shapeId/view
      params:
      - name: pageName
        value: ''
        type: path
        description: Name of the Visio page
      - name: shapeId
        value: ''
        type: path
        description: Numeric ID of the shape
      body:
        type: json
        data: '{}'
    docs: Updates the visual presentation of a shape, including highlight color, tooltip text, and overlay content for the
      specified shape.
- info:
    name: Shape Data
    type: folder
  items:
  - info:
      name: List Shape Data Items
      type: http
    http:
      method: GET
      url: https://appsforoffice.microsoft.com/embedded/1.0/document/pages/:pageName/shapes/:shapeId/shapeDataItems
      params:
      - name: pageName
        value: ''
        type: path
        description: Name of the Visio page
      - name: shapeId
        value: ''
        type: path
        description: Numeric ID of the shape
    docs: Returns all structured data items associated with a specific shape. Shape data items contain label-value pairs that
      store business data linked to diagram elements.
- info:
    name: Hyperlinks
    type: folder
  items:
  - info:
      name: List Shape Hyperlinks
      type: http
    http:
      method: GET
      url: https://appsforoffice.microsoft.com/embedded/1.0/document/pages/:pageName/shapes/:shapeId/hyperlinks
      params:
      - name: pageName
        value: ''
        type: path
        description: Name of the Visio page
      - name: shapeId
        value: ''
        type: path
        description: Numeric ID of the shape
    docs: Returns all hyperlinks attached to a specific shape in the Visio diagram. Hyperlinks may point to external URLs,
      other pages, or diagram elements.
- info:
    name: Comments
    type: folder
  items:
  - info:
      name: List Shape Comments
      type: http
    http:
      method: GET
      url: https://appsforoffice.microsoft.com/embedded/1.0/document/pages/:pageName/shapes/:shapeId/comments
      params:
      - name: pageName
        value: ''
        type: path
        description: Name of the Visio page
      - name: shapeId
        value: ''
        type: path
        description: Numeric ID of the shape
    docs: Returns all comments attached to a specific shape in the Visio diagram. Comments contain author, date, and text
      content.
- info:
    name: Application
    type: folder
  items:
  - info:
      name: Get Application
      type: http
    http:
      method: GET
      url: https://appsforoffice.microsoft.com/embedded/1.0/document/application
    docs: Returns the Visio application host settings for the embedded session, including toolbar visibility and other UI
      configuration options.
  - info:
      name: Update Application Settings
      type: http
    http:
      method: PATCH
      url: https://appsforoffice.microsoft.com/embedded/1.0/document/application
      body:
        type: json
        data: '{}'
    docs: Updates Visio application settings such as toolbar visibility for the current embedded session.
bundled: true