Siemens MindSphere Aspect Types API

Aspect type (data model template) management

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

siemens-mindsphere-aspect-types-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Siemens MindSphere Asset Management Aspect Types API
  description: The MindSphere Asset Management API enables creating and managing assets, defining aspect types and asset types, configuring data models, and handling connectivity for IoT devices. Supports hierarchical asset structures for digital twin modeling of industrial equipment.
  version: '3.0'
  contact:
    name: Siemens MindSphere Developer Support
    url: https://documentation.mindsphere.io/MindSphere/apis/advanced-assetmanagement/api-assetmanagement-overview.html
servers:
- url: https://gateway.eu1.mindsphere.io/api/assetmanagement/v3
  description: MindSphere Asset Management EU1
security:
- BearerAuth: []
tags:
- name: Aspect Types
  description: Aspect type (data model template) management
paths:
  /aspecttypes:
    get:
      operationId: listAspectTypes
      summary: List aspect types
      description: Returns all aspect type definitions (data model templates).
      tags:
      - Aspect Types
      parameters:
      - name: page
        in: query
        schema:
          type: integer
      - name: size
        in: query
        schema:
          type: integer
          default: 10
      responses:
        '200':
          description: List of aspect types
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AspectTypeListResponse'
    post:
      operationId: createAspectType
      summary: Create an aspect type
      description: Creates a new aspect type defining a group of related variables for telemetry data. Variables are typed (DOUBLE, LONG, BOOLEAN, STRING, etc.) with optional units and default values.
      tags:
      - Aspect Types
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AspectTypeCreate'
      responses:
        '201':
          description: Aspect type created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AspectType'
components:
  schemas:
    VariableDefinition:
      type: object
      required:
      - name
      - dataType
      properties:
        name:
          type: string
        dataType:
          type: string
          enum:
          - BOOLEAN
          - INT
          - LONG
          - DOUBLE
          - STRING
          - BIG_STRING
          - TIMESTAMP
        unit:
          type: string
          description: Unit of measurement (e.g., "°C", "bar", "rpm")
        searchable:
          type: boolean
          default: false
        length:
          type: integer
          description: Max length for STRING type
        defaultValue:
          description: Default value for the variable
          oneOf:
          - type: number
          - type: string
          - type: boolean
          - type: 'null'
        qualityCode:
          type: boolean
          description: Whether OPC-UA quality codes are supported
    AspectTypeCreate:
      type: object
      required:
      - name
      - category
      - variables
      properties:
        name:
          type: string
        description:
          type: string
        category:
          type: string
          enum:
          - static
          - dynamic
        scope:
          type: string
          enum:
          - private
          - public
          default: private
        variables:
          type: array
          minItems: 1
          items:
            $ref: '#/components/schemas/VariableDefinition'
    PageMetadata:
      type: object
      properties:
        size:
          type: integer
        totalElements:
          type: integer
        totalPages:
          type: integer
        number:
          type: integer
    AspectTypeListResponse:
      type: object
      properties:
        _embedded:
          type: object
          properties:
            aspectTypes:
              type: array
              items:
                $ref: '#/components/schemas/AspectType'
        page:
          $ref: '#/components/schemas/PageMetadata'
    AspectType:
      type: object
      properties:
        id:
          type: string
          description: Aspect type identifier (tenant.name)
        name:
          type: string
        description:
          type: string
        category:
          type: string
          enum:
          - static
          - dynamic
          description: static=configuration data, dynamic=time-series telemetry
        scope:
          type: string
          enum:
          - private
          - public
        variables:
          type: array
          items:
            $ref: '#/components/schemas/VariableDefinition'
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT