iTwin Saved Views API

Persist and share saved iModel viewer states — camera positions, display styles, category visibility, model selections, and viewport overrides. 22 operations covering groups, tags, images, and extensions.

iTwin Saved Views API is one of 32 APIs that Bentley Systems publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Saved Views, Visualization, Camera, Display Styles, and Collaboration. The published artifact set on APIs.io includes API documentation, an API reference, and an OpenAPI specification.

OpenAPI Specification

itwin-saved-views-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: iTwin Saved Views API
  description: "Persist and share saved iModel viewer states \u2014 camera positions, display styles, category visibility."
  version: '1.0'
  contact:
    name: Bentley Developer Relations
    url: https://developer.bentley.com/apis/saved-views/
  license:
    name: Bentley Developer Portal Terms
    url: https://developer.bentley.com/legal/
servers:
- url: https://api.bentley.com/savedviews
  description: iTwin Platform Production
externalDocs:
  description: iTwin Saved Views API Documentation
  url: https://developer.bentley.com/apis/saved-views/
tags:
- name: Saved Views
  description: Saved Views resources for the iTwin Saved Views API.
- name: Images
  description: Images resources for the iTwin Saved Views API.
- name: Tags
  description: Tags resources for the iTwin Saved Views API.
- name: Groups
  description: Groups resources for the iTwin Saved Views API.
security:
- OAuth2: []
paths:
  /:
    get:
      tags:
      - Saved Views
      summary: Get Saved Views
      operationId: GetSavedViews
      responses:
        '200':
          description: List of Saved Views
          content:
            application/json:
              schema:
                type: object
    post:
      tags:
      - Saved Views
      summary: Create Saved View
      operationId: CreateSavedView
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '201':
          description: Saved View created
          content:
            application/json:
              schema:
                type: object
  /{savedViewId}:
    parameters:
    - name: savedViewId
      in: path
      required: true
      schema:
        type: string
        format: uuid
    get:
      tags:
      - Saved Views
      summary: Get Saved Views
      operationId: GetSavedViews
      responses:
        '200':
          description: List of Saved Views
          content:
            application/json:
              schema:
                type: object
    patch:
      tags:
      - Saved Views
      summary: Update Saved View
      operationId: UpdateSavedView
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Saved View updated
    delete:
      tags:
      - Saved Views
      summary: Delete Saved View
      operationId: DeleteSavedView
      responses:
        '204':
          description: Saved View deleted
  /{savedViewId}/image:
    parameters:
    - name: savedViewId
      in: path
      required: true
      schema:
        type: string
        format: uuid
    get:
      tags:
      - Images
      summary: Get Images
      operationId: GetImages
      responses:
        '200':
          description: List of Images
          content:
            application/json:
              schema:
                type: object
    post:
      tags:
      - Images
      summary: Create Image
      operationId: CreateImage
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '201':
          description: Image created
          content:
            application/json:
              schema:
                type: object
  /{savedViewId}/tags:
    parameters:
    - name: savedViewId
      in: path
      required: true
      schema:
        type: string
        format: uuid
    get:
      tags:
      - Tags
      summary: Get Tags
      operationId: GetTags
      responses:
        '200':
          description: List of Tags
          content:
            application/json:
              schema:
                type: object
    post:
      tags:
      - Tags
      summary: Create Tag
      operationId: CreateTag
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '201':
          description: Tag created
          content:
            application/json:
              schema:
                type: object
  /groups:
    get:
      tags:
      - Groups
      summary: Get Groups
      operationId: GetGroups
      responses:
        '200':
          description: List of Groups
          content:
            application/json:
              schema:
                type: object
    post:
      tags:
      - Groups
      summary: Create Group
      operationId: CreateGroup
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '201':
          description: Group created
          content:
            application/json:
              schema:
                type: object
  /groups/{groupId}:
    parameters:
    - name: groupId
      in: path
      required: true
      schema:
        type: string
        format: uuid
    get:
      tags:
      - Groups
      summary: Get Groups
      operationId: GetGroups
      responses:
        '200':
          description: List of Groups
          content:
            application/json:
              schema:
                type: object
    patch:
      tags:
      - Groups
      summary: Update Group
      operationId: UpdateGroup
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Group updated
    delete:
      tags:
      - Groups
      summary: Delete Group
      operationId: DeleteGroup
      responses:
        '204':
          description: Group deleted
components:
  securitySchemes:
    OAuth2:
      type: oauth2
      description: "iTwin Platform OAuth2 \u2014 Bentley IMS"
      flows:
        authorizationCode:
          authorizationUrl: https://ims.bentley.com/connect/authorize
          tokenUrl: https://ims.bentley.com/connect/token
          scopes:
            itwin-platform: Full access to iTwin Platform APIs
  schemas:
    Error:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
            message:
              type: string
            details:
              type: array
              items:
                type: object