Suggest features, upvote favorites, and use the user story format: > As a [role], I want to [action], so that [benefit]. Help us build what you need - post your idea now!
In Canvas, it is possible to configure rules for objects, but as far as I understand, the current setup allows only one trigger per rule (1 rule = 1 trigger).However, in practical use cases, there are often situations where we would like to define a rule using multiple trigger conditions (AND conditions). For example, when producing multiple product types on the same production line, the normal operating ranges for parameters such as temperature and flow rate may vary depending on the product.In such cases, we would like to configure rules like the following:When producing product A, it is considered abnormal if temperature or flow rate exceeds threshold α.When producing product B, it is considered abnormal if temperature or flow rate exceeds threshold β.To support these kinds of scenarios, it would be very helpful if we could configure multiple triggers within a single rule.Alternatively, if there is an existing way to achieve this functionality using current features, I would greatly appreciate any guidance.I have considered creating dedicated flag tags using calculations in Charts and scheduling them, but this approach would result in a large number of flag tags, making it difficult to manage, so I decided not to pursue it.
SummaryEnable aggregation operations (such as step_interpolation) on requests containing both numeric and string time series in the same SDK call.Currently, aggregation works correctly for numeric time series, but the request fails when a string/alphanumeric time series is included alongside numeric series. This limitation prevents users from retrieving synchronized operational datasets that combine process measurements and categorical/status information in a single query.Problem DescriptionWhen using the Cognite SDK method retrieve_dataframe() with aggregation enabled, requests containing mixed data types fail if at least one time series is of type string.Example:Numeric-only aggregation → works correctly Numeric + string aggregation → failsThe expected behavior for string time series using step_interpolation is to replicate the last known value across the aggregation interval, similar to how industrial historians such as PI System behave.Example Use CaseOperational dashboards and analytics workflows frequently require:Numeric process variables (temperature, pressure, flow, etc.) Text/status variables (campaign, mode, operational state, equipment status)These datasets must often be retrieved together using the same timestamp alignment and granularity.Example:df = client.time_series.data.retrieve_dataframe( external_id=[ "numeric_ts_1", "numeric_ts_2", "string_ts_status" ], start="6h-ago", end="now", aggregates="step_interpolation", granularity="1h", timezone="UTC-03:00")Currently, including "string_ts_status" causes the aggregation request to fail.Expected BehaviorFor string time series:step_interpolation should return the last known value within the aggregation window. Mixed-type aggregation requests should succeed without breaking the entire query. Returned DataFrames should preserve both numeric and textual columns properly aligned by timestamp.Current BehaviorAggregation succeeds for numeric time series only. Aggregation fails when a string/alphanumeric time series is included. Users must split requests into multiple calls and manually merge results afterward.Proposed EnhancementImplement support for:Aggregation of string time series using step_interpolation Mixed numeric and string aggregation in the same SDK/API request Graceful handling of heterogeneous time series types
Hi,It would be great to have the creation of an endpoint based on the one below:https://api-docs.cognite.com/20230101/tag/Time-series/operation/getMultiTimeSeriesDatapointsCurrently, this endpoint allows requesting multiple items in a single call and returns the next page individually for each requested item.For Celonis’ REST extractor, this pagination model creates a limitation, as the platform works better with individual pagination, where each response contains only one component and a single pagination continuation token.Today, to enable this extraction, a Python-based workaround is being used within the environment, since the current model is not compatible with the standard extractor.We would like to check if it is possible to make the endpoint available in a more individualized format, with one time series per response, or if there is already an alternative endpoint that supports this scenario. This would greatly help improve the standardization and stability of the integration.Sharing the user’s assessment regarding the available data extraction methods:Extraction BuilderThis solution, offered by Celonis, works very well for REST APIs. However, for the current endpoint structure, pagination is not supported. To solve this issue, it would be enough to update or create a new endpoint that returns only one result per response instead of a nested list structure.SDKThe SDK offers a flexible solution but carries higher implementation risk. It would require using an existing middleware layer to orchestrate the extractions, which is currently considered unfeasible due to resource constraints, access dependencies, and a longer development timeline compared to other alternatives.
I hear that the Charts monitoring feature includes logic to prevent excessive and unnecessary alerts.Specifically, time series data uploaded at intervals longer than one minute is excluded from monitoring, and alerts are not triggered for such data.The reason for this is that the system cannot determine whether a lapse in recent values over a certain period is due to “legitimate low-frequency data” or “a system error causing missing data.” On the other hand, we have some time series with very low update frequencies.For example, we have data that is ingested only once every half day (see figure below).With such data, the Charts monitoring feature cannot detect anomalies and alerts are not triggered.*We have no plans to increase the number of acquisitions due to wireless system specifications. Could you consider adding a switch to the Charts monitoring feature that allows users to disable the current specification that excludes data uploaded at intervals longer than one minute from monitoring?I believe other industries also have data that is captured only once per day.Allowing users to toggle this behavior as needed would minimize the impact on backend of Cognite Data Fusion. This request comes directly from field engineers, so I would greatly appreciate your consideration.
To change the columns that are shown when selecting a specific View I use the “Select column” functionality. If I select multiple properties from the list and press Apply, it works well.However, if I locate the property by “Filter by name” search, select, and then repeat for another property, only the last property I selected will be added when I press Apply. You see the same behavior if you “Filter by name”, select a property, and then remove the filter characters either by deleting the characters or “x them out”, the selection is removed.This is a very unexpected behavior, and confuses users. It makes it very cumbersome if you want to add multiple properties from a very long list of properties (where you would prefer searching for the property)
There is a need to save the filter and grouping settings in InField check lists so that a user don’t have to set these manually each time he enters a new check list.This is both relevant for filters (I.e status filters to only show outstanding functional locations/assets) and also for the new grouping functionality where users can group tags by properties.For example if a user always want to filter out not relevant (Status) f.loc/asset and always group assets by location (Property) then he will have to manually each time he enters the check lists set these settings. It would save time for the user if these criteria can be saved. Either by filter-variants that can be chosen, or as standard for the user.
Recently, the use of Charts has been increasing, and more users are creating complex calculations for data visualization.In this context, we have received feedback requesting a “Back” button (undo function).When users are building complex calculation formulas, there have been multiple instances where the calculation source suddenly disappears, forcing them to restart from scratch. The more complex the calculation, the greater the impact of this issue.To mitigate this, it would be extremely helpful to have a function that allows users to go back one step (e.g., an undo or back button).We believe this feature would significantly improve usability and reduce the risk of losing work during calculation editing. Thank you for your consideration.
This might already be reported, but I was not able to find it when I searched.Currently Chart only uses an internal, and very limited, unit conversion. It would be a big step forward if we could also use the native unit conversion in timeseries, which is much richer than what is offered via Charts.Since you might have timeseries with no CogniteUnit, Charts still needs to support unit conversion defined in the UI, as a backup solution
Would it be possible to provide a way to visualize trending content that is frequently viewed and utilized among those created using Charts, Canvas, and Streamlit?At present, even if someone creates an excellent Canvas or similar content, it does not easily spread to other users. However, if there were something like a trending ranking, high-quality content could naturally gain visibility and adoption. It could also serve as a helpful source of ideas for practical use cases.
Observed behaviorWhen a CDF Transformation produces rows with duplicate externalId values , the behavior depends on how CDF partitions the data across workers:Duplicates within the same API request (same batch) → the API raises an error → the transformation fails visibly ✅ Duplicates split across multiple API requests (different CDF partitions/workers) → each request succeeds individually → the transformation completes with status "success", but which version of the node was actually written to the knowledge graph is unknown and non-deterministic ❌ProblemThe second case is the dangerous one:Silent and invisible — the run reports success, no alert is triggered, no engineer investigates. The data in the knowledge graph may be incomplete or wrong with no trace. Non-deterministic — which duplicate "wins" depends entirely on which CDF worker flushes first. Two identical runs on the same input can produce different results. No user control — there is no way to express intent: "fail if duplicates exist", "always keep the latest", "deduplicate before write". The behavior is undefined and undocumented at the transformation level.Feature RequestAdd a conflict resolution option at the transformation level for duplicate externalId within a single run: Option Behavior fail Abort the run and report an error if any duplicate externalId is detected across all batches keep_last Last row processed wins deduplicate_before_write CDF deduplicates globally before dispatching to the API
This idea is related to a previously submitted request:https://hub.cognite.com/product-ideas-492/charts-canvas-streamlit-lock-feature-to-prevent-accidental-deletion-6058?tid=6058&fid=492In most cases, charts with scheduled calculations are highly important. However, currently there is no clear way to distinguish them from regular charts in the list view, which creates a risk of accidental deletion.If a scheduled chart is accidentally deleted, the schedule itself may continue to run, but users would no longer be able to review or verify the calculation logic.To prevent this, it would be helpful to have:A clear visual indicator showing that a chart has a schedule configured, so it can be identified at a glanceA warning message when attempting to delete such a chartAdditionally, it would be even more useful if there were a filter option to display only charts with schedules.
When scheduling calculations created in Charts, the calculated time series is currently written starting from the time the schedule is configured. However, there are many cases where we would like to apply these calculation results to historical data as well.For example, it would be helpful if users could specify a start point in the past using options such as:・“6 months ago,” “1 year ago,” or “3 years ago” from the current date・A specific date and timeWould it be possible to add an option that allows users to apply calculation results starting from a user-defined point in the past?
Two needs:- I want to monitor time series in charts for windows longer than 60 minutes. Current limit is 60 minutes and should be longer.- I want to subscribe common emails to monitored time series (for example <asset-specific.process-engineers>@akerbp.com). Current limitation is that only individuals can subscribe to monitored time series. This is an issue for roles on rotations.What impact would a change have? Time savings Fewer errors / less manual work Better decision-making foundation Better data qualityRequested by: Sindre Fjermedal
Hello :) Use caseAs an AI evaluation engineer, I want graph relations returned by the agent to be resolved into the underlying equipment and time series instance IDs in the structured JSON output, so that recall metrics reflect the instances the agent actually identified, not only the relation objects it retrieved. BackgroundI am evaluating agents that retrieve process data from an industrial knowledge graph in Cognite Data Fusion. I use a simple Python-based recall evaluator that compares expected equipment/time series IDs against IDs returned in the agent’s structured JSON output. Current behaviorThe agent may identify the correct equipment or time series in the natural-language response, but the structured JSON sometimes only contains the relation objects it used to infer them. This is mostly invisible to the end user, because the answer can still be correct. The issue is automated evaluation: correct retrievals may be undercounted because the expected equipment/time series IDs are missing from the JSON. I am spending too much time prompt engineering around this. The agent can produce the desired JSON structure sometimes, but not in a stable or deterministic manner. Desired behaviorWhen graph relations are returned, the agent should perform one or more final listInstances calls to resolve/dereference them into the underlying equipment and time series instance IDs. This would make the structured JSON reflect the natural-language response, enabling faster, cheaper, and more deterministic recall evaluation for quality control and governance.
It would be great if they could compare InField data with PI Data directly within InField checklist. The attached file shows InField values, but they would like to be able to display them for comparison with instrument readings (PI Data).
Currently, when a Canvas or Chart is created, the creator is automatically assigned as the “Owner.” We would like to request the implementation of a feature that allows ownership to be transferred to another user.BackgroundIn our operations department, Canvas and Charts are used for long-term operational monitoring. However, the primary person in charge changes relatively frequently. Therefore, we need a mechanism that allows ownership to be transferred smoothly to the next responsible person.From a long-term operational perspective, having the original creator remain as the owner even after role changes or internal transfers raises concerns regarding internal security and governance.For these reasons, we would greatly appreciate it if an official ownership transfer function could be implemented.Additionally, @Shun Takase-san from Nippon Shokubai commented that since Canvas and Charts can be searched by the creator’s name, having the current responsible person listed as the creator significantly helps users find the correct Canvas or Chart efficiently.We kindly ask you to consider this as a candidate for future feature enhancement.Thank you very much for your consideration.
Ability to customize the list of properties shown in assets, maintenance orders and other types in InField (Light- DM Only).
The “Compare trends” function in the trend view is a great functionality to compare different trends. Today the Y-axis of the graphs does not align when comparing multiple trends. For example in the trend view below, the Y-axis of the purple trend is way higher than the axis for the blue trend line. 45% and 100% is placed at the same position. It is possible to manually zoom in and out on the Y-axis and then align but it would be better if there was a way of aligning Y-axis on a more user friendly way or alternatively that the axis are lined by default :-)
Example document from the pdf preview in fusion. There is a rotate symbol, but the rotate symbol does not rotate the image, but it resets the view to “fit to full page”. How do I rotate the documents previewed? or do i need to download it and do it an do it in a native app? And if not so, can rotation functionality in the document viewer? and maybe change to icon of the rotate symbol and also maybe remember the rotation of the page in the viewer aswell? cause there are often documents and diagrams combind in a single pdf file?
At the moment, I believe users cannot see which users in their organization are using which CDF features, nor how they are being used.Would it be possible for users with administrator privileges to access this kind of information?If this were available, it would enable us to consider measures to make better use of CDF based on actual usage patterns within our organization. For example:A certain department frequently uses Charts but rarely uses Canvas, so we could interview them to understand the reasons.Specific features of Charts or Canvas are hardly being used, so we could improve the documentation and promote their usage.Although they are not very vocal and we had not noticed before, it turns out that Mr./Ms. △△ is actually a heavy user of CDF, so we could identify them as a key person.If there is already a way to obtain such information, we would greatly appreciate it if you could let us know.
The checklist generated from an AO does not display any Work Order Number.In the example shown here, the AO ID is 30002314, but this is not visible in the checklist.For better usability, the AO reference should be clearly visible directly in the checklist, so users do not have to click into other objects for more information.The key need is to quickly and easily identify which work order the checklist belongs to.If we can add this as shown below in red it would be highly beneficial.It is possible to see the work order number clicking on the work order header. But the WO-number is needed quite often to indicate which check list it is and having it available reduces the amount of clicks for the end user. Additionally, the number is relatively short, and therefore does not take up much space.
When opening trends for a transmitter, the width of the Y-axis seems to be set up randomly. An example is shown below. Here, the Y-axis goes from 15-35, while the range for the transmitter is from 0-100. We have range data from LCI available to be able to set up the Y-axis as standard. Here is an example for the transmitter: (Upper limit 100, lower limit 0)The request is to use 'Calibrated Range Max' and 'Calibrated Range Min' to set up the Y-axis on the trend window to avoid the user having to adjust it each time.
In the InField app, it is possible to add comments to photos and videos when uploading them, but it is not possible to specify the file name.The file names appear to be (probably) inherited from the default names assigned by devices such as iPhones or Android phones. In most cases, even when checking the file name later, it is difficult to tell what the file actually contains.For this reason, I believe that having a feature that allows users to freely change the file name at the time of upload would be very useful for utilizing the information later.
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.
Sorry, we're still checking this file's contents to make sure it's safe to download. Please try again in a few minutes.
OKSorry, our virus scanner detected that this file isn't safe to download.
OK