Changelog
All notable changes to this project will be documented in this file.
This file is related to ReportConnectors Python package.
[1.28.0] - 2025-11-21
Added
- Master of Reference (Mor) API Client
- Support for custom Transport Adapter that allows control over TLS versions used in the API requests.
get_ciam_tokenhelper function in the utils module, to simplify the CIAM token retrieval.
Removed
- ConditionIndicesAPIClient
- RawDataCollectorAPIClient
[1.27.4] - 2025-10-16
Changed
- Improved CIAM config look-up tables, to support URLs with and without trailing slashes.
- Removed ConditionIndicesModelConnector
- Deprecated ConditionIndicesAPIClient and RawDataCollectorAPIClient, to be removed in release 1.28
[1.27.3] - 2025-10-01
Added
- Support for non-standard device types in ALM API Client, when there is only one match in the ALM service.
Fixed
- Bugfix #490735 - Handling of missing or invalid serial numbers in ALM API Client
[1.27.2] - 2025-09-24
Changed
- Add support for Python 3.13
[1.27.1] - 2025-09-17
Added
- Support for the Asset group search in the Powertrain Report API Client
[1.27.0] - 2025-09-16
Added
- Support for the MV drive serial numbers in ALM API Client
- Powertrain Analytics API support for new Condition Index Trend types
Changed
- ALM API Client methods respect device type when searching for maintenance plans and asset core data
- MCCU API Client integration test disabled, because the MCCU API is not reachable
Removed
- Support for the Huawei OBS file storage engine
[1.26.9] - 2025-08-14
Added
- Support for the Powertrain Subscription API Client
[1.26.8] - 2025-07-23
Added
- Cleaning of HTML escaped strings from the Powertrain APIs responses
Changed
- ALM API Client. Support asset_id as an input for the get_maintenance_plan method.
[1.26.7] - 2025-05-23
Added
- Life cycle phase field added to the ALM Base Data model
Changed
- URLs used for events searching in the Powertrain Report API Client
Fixed
- integration test cases for the Powertrain Report API Client events searching methods
[1.26.6] - 2025-04-22
Added
- Support for Python 3.12
Changed
- Data model changes in the Powertrain API Clients
- Organization API:
idreplaced withasset_id. - Report API: AssetDetails extended with new optional fields
data_connection_status,environment_sensor_serial_number,status_change_data_received_timestamp. - Analytics API: support for
useAllRetentionsparameter in theget_analytic_resultsmethod.
- Organization API:
[1.26.5] - 2025-04-04
Fixed
- Fixed jwt.exceptions.ExpiredSignatureError: Signature has expired
[1.26.4] - 2025-03-14
Fixed
- Fixed the JWT payload data model to allow for audience being a list of strings.
[1.26.3] - 2025-03-11
Changed
- Updated log levels on the response decoding in the BaseApiClient.
Fixed
- Fixed sensorId field type to Optional[int] in ReportAPI Asset Details model.
[1.26.2] - 2025-02-28
Fixed
- Added defaults Report API optional model's fields.
[1.26.1] - 2025-02-28
Fixed
- Added defaults Report API optional model's fields.
Changed
[1.26.0] - 2025-02-26
Changed
- All Powertrain APIs were updated to work with
api.powertrain.abb.cominstead of the Azure-based urls. - BREAKING CHANGE - Updated typing of the optional fields. mypy no_implicit_optional set to True.
Fixed
- Fixed typing in the Powertrain Reports API Client
[1.25.0] - 2025-02-25
Added
- Powertrain Reports API Client
[1.24.1] - 2025-02-24
Changed
- SmartSensorAPIClient
- Remove support for custom auth_token in send_report_confirmation method
- Powertrain APIs
- Asset API - Get Assets Details model
- TypeConfig API - Update endpoint names
Fixed
- Update request with new auth credentials after the credentials are refreshed
[1.24.0] - 2025-02-18
Added
- CIAM API Client - BREAKING CHANGE
- Support for external token refresh function
- Base API Client
- Automatic token refresh when the response status code is 401
Changed
- CIAM API Client
- JwtPayload model extended, and allow extra fields
- Powertrain Organization API
- Updated
get_an_organization_by_legacy_asset_identifiermethod to return optional response.
- Updated
[1.23.1] - 2025-02-12
Changed
- Powertrain Asset API
- Asset Details endpoint
- Asset Search endpoint
- Assets Details list endpoints and models
[1.23.0] - 2025-02-12
Added
- CIAM API Client. It enables the full interaction with CIAM API.
- Automatic Token refresh for Powertrain API clients, based on the CIAM API Client
- Full test suite for CIAM related activities
- Documentation of CIAM API Client
- Tool for updating the CIAM local data
Changed
- Dependencies updated
- Powertrain API clients requires CIAM API URL on initialization
- Powertrain API clients uses CIAM API Client to deal with authentication
- ALM API client requires CIAM API URL on initialization
- Updated test for Powertrain API base activities
- Analytics API results data model extended with begin data and end date
Fixed
- Powertrain Organization API enpoint names
[1.22.0] - 2025-01-29
Added
- Cosmos DB client to access the legacy drive data
Changed
- Documentation updated and restructured
- Dropped support for Python 3.8
- Updated endpoints and models for the Powertrain Analytics API clients
- Updated models for the Powertrain Asset API clients
[1.21.0] - 2025-01-17
Added
- Support for full URL in the make_request method of the BaseApiClient
Changed
- Powertrain FileService API Client
- New method to download directly from the RawDataFile download URL
[1.20.0] - 2025-01-10
Changed
- Powertrain Timeseries API Client
- Endpoint URLs updated to match the latest API version
- Powertrain Analytics API Client
- Endpoint URLs updated to match the latest API version
[1.19.0] - 2024-11-27
Added
- Powertrain Type Config API Client
- Unit Converter endpoints
- Bearing Info endpoints
Changed
- Powertrain integration tests run against the prod environment
- Pipeline configuration
- Integration test codebase updates
- Powertrain Timeseries API Client
- Datapoints without any value are allowed in the response
Fixed
- Powertrain Asset API Client
- Fixed search_for_assets method query
[1.18.0] - 2024-11-14
Added
- PowertrainFileServiceAPIClient
- Separate method for downloading the file directly from the FileService API
Fixed
- PowertrainOrganizationAPIClient
- Fixed test case for searching the organization by SmartSensor asset id
[1.17.0] - 2024-09-25
Added
- ALM (Asset Lifecycle Management) API Client
- Script for downloading the maintenance plans from ALM service
- Documentation for ALM API Client
- Script for verifying the access to the Powertrain API services
Changed
- CIAM API Client extracted from Powertrain API Clients and used in ALM API Client
- Timeseries API Client updated with new endpoint values
[1.16.2] - 2024-09-11
Changed
- Powertrain API Clients
- Analytic API - results fields in the response model made optional
- Base API - store the ID token in the client, if available
[1.16.1] - 2024-09-04
Changed
- Powertrain API Clients
- Asset API - set ConnectionStatus in AssetDetailsResponse to optional
[1.16.0] - 2024-08-19
Added
- Powertrain API Clients
- Organizations API
[1.15.0] - 2024-08-06
Added
- Powertrain Event Service API Client
- Powertrain Base API unit tests
Changed
- Powertrain authentication method used custom Oauth2 token data model
- All uses of
datetime.utcnowreplaced withdatetime.now(timezone.utc) - Documentation updated with Powertrain Event Service API Client
[1.14.0] - 2024-07-17
Added
- Powertrain File Service API Client
Changed
- Condition Index Trend values updated with KpiMinimum and KpiMaximum
[1.13.0] - 2024-06-10
Added
- Powertrain API Clients
- Asset API
- Analytics API
- Timeseries API
- Updated documentation for api clients
- Common authentication via CIAM
- Pydantic model based responses
- Support for api-version header in base api client
- SonarQube pipeline
Changed
- BaseApiClient authentication function typing
- LocalFile system implementation of StorageEngine uses pathlib.Path
- Integration test pipeline runs tests in paralel
- Integration test config is based on pydantic-settings
- BaseApiClient abstract class extended with abstract method is_logged
[1.12.0] - 2024-02-27
Added
- MCCUAPIClient
get_shaft_power_mapmethod
[1.11.1] - 2023-02-16
Fixed
- Off-by-one error in log message
[1.11.0] - 2023-01-09
Added
- SmartSensorAPIClient
get_bearing_infomethod
[1.10.0] - 2023-01-04
Changed
- Default value for
check_for_assigned_drivesinCmdAPIClient.get_list_of_serial_numbersis set toFalse
Fixed
-
330309 Unable to obtain an access token for CMD API
[1.9.2] - 2023-09-21
Fixed
- instability in test_smartsensor_api_client.py
[1.9.1] - 2023-08-07
Fixed
- CmdAPIClient
- Structure of the drive details list response
[1.9.0] - 2023-08-04
Added
- CmdAPIClient
- Support for Cloud Interface API, that includes listing drive serial numbers and drive details.
- Support for multiple sub-APIs under the same base api.
[1.8.1] - 2023-05-31
Added
- Extra error logs in BaseAPIClient.
[1.8.0] - 2023-05-09
Added
- RawDataCollector API client
Changed
- Dependencies reviewed
- isort applied
- code check pipeline improved with version check
[1.7.0] - 2023-04-17
Added
- SmartSensor API client: get_sites() method
[1.6.2] - 2023-03-14
Changed
- Flake8 replaced with ruff
[1.6.1] - 2023-02-23
Fixed
- fixed issue where FileStorage
.list_filesmethod were throwing error where parent dir did not exist
[1.6.0] - 2023-02-22
Changed
- prefix input will also work with partial file name (for both azure and file_system storage)
[1.5.0] - 2023-02-14
Added
- prefix input to storage.list_files operation
[1.4.0] - 2023-01-17
Added
- MCCU API Client
[1.3.1] - 2022-12-08
Changed
- Project organization changed
- Build system is based on pyproject.toml
[1.3.0] - 2022-12-02
Added
- SmartSensor API Client
- Send report confirmation method
- Missing auth data can be read from API when using
set_auth_tokenmethod withuse_api_dataflag.
- Lite Cache
- max age parameter added to cache
Changed
- SmartSensor API Client
- Full auth response is stored
- Base API Client
- Responses with status code >= 400 are not cached
Fixed
- Unit test helpers
[1.2.0] - 2022-10-17
Added
- SmartSensor API Client
- Documentation based on MKDocs
- Docstrings to all API Clients
Changed
- Base API Client reviewed and refactored
[1.1.0] - 2022-10-05
Added
- Type validation tests using mypy
Changed
- CmdAPIClient: start and end date input parameters are expected to be datetime objects
[1.0.1] - 2022-09-28
Added
- Support for python 3.7, 3.8 and 3.9
- SonarQube analysis step in test pipeline
[1.0.0] - 2022-09-27
Added
- CmdAPI Client to connect with CMD API
- BaseAPIClient class to be used as a starting point for all API Clients. It is based on SmartSensorAPIClient.
Changed
- Refactor of ConditionIndices API Client using BaseAPIClient
- Reorganization of test suites
- Azure Pipelines improved