naftiko: 1.0.0-alpha2 info: label: Siemens MindSphere IoT Time Series API — Timeseries description: 'Siemens MindSphere IoT Time Series API — Timeseries. 4 operations. Lead operation: Ingest time-series data for multiple assets/aspects. Self-contained Naftiko capability covering one Siemens Mindsphere business surface.' tags: - Siemens Mindsphere - Timeseries created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SIEMENS_MINDSPHERE_API_KEY: SIEMENS_MINDSPHERE_API_KEY capability: consumes: - type: http namespace: iot-timeseries-timeseries baseUri: https://gateway.eu1.mindsphere.io/api/iottimeseries/v3 description: Siemens MindSphere IoT Time Series API — Timeseries business capability. Self-contained, no shared references. resources: - name: timeseries path: /timeseries operations: - name: putmultipletimeseries method: PUT description: Ingest time-series data for multiple assets/aspects outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: timeseries-assetId-aspectName path: /timeseries/{assetId}/{aspectName} operations: - name: puttimeseries method: PUT description: Ingest time-series data for a single asset aspect outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: gettimeseries method: GET description: Query time-series data for an asset aspect outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: from in: query type: string description: Start of time range (ISO 8601 UTC) required: true - name: to in: query type: string description: End of time range (ISO 8601 UTC) required: true - name: limit in: query type: integer description: Maximum number of data points to return (max 2000) - name: select in: query type: string description: Comma-separated list of variable names to include - name: sort in: query type: string description: Sort order by _time - name: latestValue in: query type: boolean description: Return only the most recent data point - name: deletetimeseries method: DELETE description: Delete time-series data for an asset aspect outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: from in: query type: string description: Start of hourly-aligned range (ISO 8601 UTC) required: true - name: to in: query type: string description: End of hourly-aligned range (ISO 8601 UTC) required: true authentication: type: bearer token: '{{env.SIEMENS_MINDSPHERE_API_KEY}}' exposes: - type: rest namespace: iot-timeseries-timeseries-rest port: 8080 description: REST adapter for Siemens MindSphere IoT Time Series API — Timeseries. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/timeseries name: timeseries description: REST surface for timeseries. operations: - method: PUT name: putmultipletimeseries description: Ingest time-series data for multiple assets/aspects call: iot-timeseries-timeseries.putmultipletimeseries with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/timeseries/{assetid}/{aspectname} name: timeseries-assetid-aspectname description: REST surface for timeseries-assetId-aspectName. operations: - method: PUT name: puttimeseries description: Ingest time-series data for a single asset aspect call: iot-timeseries-timeseries.puttimeseries with: body: rest.body outputParameters: - type: object mapping: $. - method: GET name: gettimeseries description: Query time-series data for an asset aspect call: iot-timeseries-timeseries.gettimeseries with: from: rest.from to: rest.to limit: rest.limit select: rest.select sort: rest.sort latestValue: rest.latestValue outputParameters: - type: object mapping: $. - method: DELETE name: deletetimeseries description: Delete time-series data for an asset aspect call: iot-timeseries-timeseries.deletetimeseries with: from: rest.from to: rest.to outputParameters: - type: object mapping: $. - type: mcp namespace: iot-timeseries-timeseries-mcp port: 9090 transport: http description: MCP adapter for Siemens MindSphere IoT Time Series API — Timeseries. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: ingest-time-series-data-multiple description: Ingest time-series data for multiple assets/aspects hints: readOnly: false destructive: false idempotent: true call: iot-timeseries-timeseries.putmultipletimeseries with: body: tools.body outputParameters: - type: object mapping: $. - name: ingest-time-series-data-single description: Ingest time-series data for a single asset aspect hints: readOnly: false destructive: false idempotent: true call: iot-timeseries-timeseries.puttimeseries with: body: tools.body outputParameters: - type: object mapping: $. - name: query-time-series-data-asset description: Query time-series data for an asset aspect hints: readOnly: true destructive: false idempotent: true call: iot-timeseries-timeseries.gettimeseries with: from: tools.from to: tools.to limit: tools.limit select: tools.select sort: tools.sort latestValue: tools.latestValue outputParameters: - type: object mapping: $. - name: delete-time-series-data-asset description: Delete time-series data for an asset aspect hints: readOnly: false destructive: true idempotent: true call: iot-timeseries-timeseries.deletetimeseries with: from: tools.from to: tools.to outputParameters: - type: object mapping: $.