Join the discussions focusing on developing on top of Cognite Data Fusion. Click the + CREATE TOPIC button in the menu bar to start the conversation.
Recently active
Hi Cognite Team,We are currently defining an integration pattern for a partner who will provide data from an OPC UA source into Cognite Data Fusion.Our preference is to use a managed MQTT broker in CDF and avoid deploying any self-hosted MQTT broker or additional bridge components on-prem.Based on the documentation, we understand that the OPC UA Extractor supports an mqtt: output mode, but it also references a requirement for the MQTT-CDF Bridge and a configured broker host/port.To ensure we define the correct and supported architecture, could you please clarify: Is it supported to configure the OPC UA Extractor to publish directly to the Cognite-hosted MQTT broker in CDF? If using the Cognite-managed MQTT broker, is the MQTT-CDF Bridge still required? Is a self-hosted MQTT broker mandatory when using the mqtt: configuration in the OPC UA Extractor? What is the recommended architecture today for a partner delivering OPC UA data into CDF using MQTT? Our intended target architectur
I have 3 Views, ViewA, ViewB & ViewC. View A has direct relations to ViewB & ViewC via properties DefectEventID & AssetId, respectively. Pagination is expected and with Instance.Query end point, looping via cursors, it is not giving results for ViewB & ViewC, apart from the first 100 records from the first call of instances.query(query). What is the best way to populate all_ViewA_Nodes,all_ViewB_Nodes ,all_ViewC_Nodes Pagination via multiple cursors from Instance.Query?query = dm.query.Query( with_={ "ViewA_Nodes": dm.query.NodeResultSetExpression( filter=filters.HasData(views=[ViewA]), limit=100, ), "ViewB_Nodes": dm.query.NodeResultSetExpression( from_="ViewA_Nodes", through=dm.PropertyId( source=ViewA, property="DefectEventID" ), direction="outwards",
I have used the db extractor before, but with version 4.0.0 it now comes with a connect.yml and a config.yml. The documentation still lists one config file to be used. I’m not sure how to use the connection file, which looks like it used to be the cognite portion of the of the config file.I tried combining the two into one file, but when running “ dbextract.exe -c config.yml “ I am getting errors that its not expecting inputs such as version, log-handlers, database, and queries.How am I supposed to use these 2 different files when I run as an executable?Thank you
Hello Experts,I’m trying to use advanced filter on timeseries through SDK. I can do what I want except in the following situation: the asset_id property is null. Can anyone help me?I tried :from cognite.client.data_classes.time_series import TimeSeriesPropertyf = filters.And( filters.Equals("data_set_id", 123456), filters.Equals("name", "foobar"), filters.Equals(TimeSeriesProperty.asset_id, ""))[advancedFilter.[2].equals.value A string is not a valid value for the property "assetId"]from cognite.client.data_classes.time_series import TimeSeriesPropertyf = filters.And( filters.Equals("data_set_id", 123456), filters.Not(filters.Exists(TimeSeriesProperty.asset_id)),)-> 0I’m sure there is timeseries where timeseries.asset_id is None.Thanks experts !Regards,Pierre Rambourg
In addition to using config.[env].yaml, is it possible to create a custom file for configuring variables and then reference those placeholders in data models, transformations, workflows, etc ?For instance, I have several common SQL blocks that I would like to share across different transformations. While I could define them as variables in config.[env].yaml, I prefer to keep SQL-related variables separate from others in order to maintain clarity.
How much time does it really take to build a full solution?We deployed a complete solution using Cognite CDF, Cursor, and Anthropic Claude Opus 4.6, powered heavily by Gen AI in just 4 hours.This was not just a prototype screen. It was a fully deployed solution for demo purpose.And here’s the most interesting part:All of the following steps were done using Gen AI:1️⃣ Creation of the data model in Cognite Data Fusion and the Terraform2️⃣ Deployment of the model in Cognite3️⃣ Data generation and ingestion into the Cognite Data Platform4️⃣ Development of a React application on top of Cognite using the Cognite SDK5️⃣ Creation of: Asset Map, KPIs, Production Time Series Dashboardand Well Intervention viewFrom data modeling to frontend application — accelerated with AI.This is not about replacing engineers.It’s about dramatically increasing speed, experimentation, and delivery capacity. The question is no longer “Can we build it?”It’s “How fast can we build it?”Post here!
Innovation happens best when everyone has a voice. Instead of relying on a single project manager to funnel feature requests, Cognite Hub solves the bottleneck by enabling all eyes in your organization—or our global community, depending on your preference—to tap in. Whether you are an admin, a developer, or a daily end-user, this is your official space to share frontline insights and directly influence the Cognite Data Fusion product roadmap.Why Submit Your Ideas? Public Ideas: The Product Ideas board is your dedicated space to share requests with the Cognite product team and the community. Submitting publicly allows others to validate, vote on, and build upon your idea! Private Ideas: Submitting privately ensures that feature requests tied to your unique business goals, confidential internal initiatives, or proprietary workflows stay strictly between your organization and Cognite. Track Your Impact: Want a top-level view of your contributions? Upon request, the community team will
Hello experts,I’m looking to work with data workflows.I’m looking to trigger on node with a specific attribute (direct relation to another view) empty.I’m trying to work with the UI but I struggle with the Data modeling query validation.I don’t understand why the validation fails and what is the expected format for the query : JSON seems to be the expected format as seen here : But documentation uses YAML : https://docs.cognite.com/cdf/dm/dm_concepts/dm_querying#graph-query-examplesI’m a bit lost and I need your help. And my query : { "with":[ { "ts":{ "nodes":{ "filter":{ "exists":{ "property":[ "nameTranslations" ] } } }, "limit":1000 } } ], "select":[ { "ts":{ "sources":[ { "source":{ "type":"view", "sp
I have created and published an Atlas AI agent which I am able to use from CogniteUI. I tried to use this agent via Cognite SDK. I am able to list all agents and able to retrieve my agent. However, when I tried to send Message to my agent I got following errorclient.agents.chat(agent_external_id= “external_id”, messages= Message("Provide list of wells in Field"))CogniteAPIError: Agents with tools that run on the client side are not supported for non-Fusion users. | code: 400 | X-Request-ID: 9eac0212-9f5f-9dd9-9372-7073768dc3e8 | cluster: westeurope-1 | project: ------No idea what this means. Can you please help to fix it?
Issue: Some functionality is not working properly in Edge browser, while it works fine in Chrome. We have a few internal tickets highlighting these issues: Ticket 1 – Search issue in Cognite Data Explorer: The user is trying to search for the asset “E206” in the Assets section using Edge, but it does not appear in the results. Searching the same asset in Chrome works correctly. This issue occurs only with the E206 asset; other assets in the same hierarchy are searchable in Edge. Ticket 2 – Canvas not loading properly: Canvases are not loading correctly in Edge. The same canvases load without any issues in Chrome. Ticket 3 – P&ID diagram loading issue: A user is trying to load a specific P&ID diagram in Edge, but it fails to load. The diagram loads correctly in Chrome. Steps Taken to Resolve Clear Edge Cache and Cookies Navigate to Settings → Privacy, Search, and Services → Clear Browsing Data → Cached Images & Files + Cookies. Restart Edge and log in again. Che
Hello, Is it possible to be alerted by email when a function or a workflow invocation fails? Thank you!
At Aker BP we are currently using the Cognite file extractor, and have some bugs and improvement points to report. Some of the bugs here are a big concern for us using the extractor going forward:1. Missing‑as‑Deleted Flag Does Not Work as DocumentedWhen missing-as-deleted: true and delete-behavior: hard are configured, the extractor does not delete files that are absent from the source query. This contradicts the documented behaviour and makes it impossible to rely on the extractor to keep target datasets clean. Because the executable is closed‑source, the root cause is unclear. From a developer who configures the file extractor: This bug went undiscovered for some time because the previous extractor had to be replaced, and has different behavior from the new file extractor on full loads. (This seems to be a bug in the new extractor.) The previous deprecated Documentum Extractor would delete all files that it did not upload for that specific extraction. This also caused issues in the
Dears, How can we have the 3D Model pushed into a power BI dashboard with the annotation as well, since the one we had is like a static 3D and it says that the annotation cannot be extracted along with it.is there a way to have it annotated in a dashboard? Thank you?Fatima
Dears,Would you please advise how can we hide specific layers (for ex. the crane) in the 3D model and then to save the updated or customised revision?is the revision editing for 3D models doable inside CDF itself or there is a specific workflow needed for it, as you can see it the snapshot below: Thank you! Fatima
Hi , I have the CogniteActivity in the CDM/EDM data model which the assets is part of the model: Below is the sample data of CogniteActivity:This is the data model for Event in PDM:I tried to transform from CDM/EDM to PDM using below transformation, but i am not sure what is the script to transform CogniteActivity to PDM Event:And i got below error: Anyone know how can I transform CDM/EDM asset node reference to Event entities attribute? Thank you.
The documentation on this page should be updated to reflect the product behavior.https://api-docs.cognite.com/20230101/tag/Spaces/operation/deleteSpacesV3> If an existing data model references a space, you cannot delete that space. Nodes, edges and other data types that are part of a space will no longer be available. I tried deleting a space with a single node and I get this error:cognite.client.exceptions.CogniteAPIError: Unable to delete spaces because they contain nodes or edges: [some-test-space] | code: 400 This does not exactly contradict the documentation, but it means that the documentation is misleading. As it is written, it suggests a space can be used to manage lifecycle of ephemeral test data.
Hello, Some capabilities, such as dataModelInstancesAcl or dataModelsAcl, support the spaceIdScope scope. Currently, we can only specify the spaces to which we want to grant access.To better support certain use cases, would it be possible to introduce support for exclusion rules or regex-based expressions within this scope? Thanks
Hi everyone,I’d like to share industrial-model — a Python ORM built on top of the Cognite Data Modeling Service API.It lets you define DMS views using Pydantic models, query them with a fluent, expressive API (filter, search, aggregate), and get fully typed results with IDE autocomplete out of the box.The SDK also supports upserts, deletes, and async workflows, making it a natural fit for modern Python stacks. In addition, it includes configuration for injecting instance spaces directly into queries, which can significantly improve query performance when working with large or complex data models.We’ve been using industrial-model for the past couple of months, and it has significantly reduced boilerplate when querying complex graphs, while also speeding up onboarding for new developers.Documentation:https://github.com/lucasrosaalves/industrial-model Feedback and feature requests are very welcome!Sample code:from pathlib import Pathfrom industrial_model import ( Engine, ViewInstanc
Wow—was I in for a challenge!I just received my first proper assignment after joining Cognite: building a custom extractor to move documents and their metadata from a Document Management System (DMS) into Cognite Data Fusion (CDF).Diving headfirst into this, I found myself at the intersection of a steep learning curve, the high-stakes data needs of our industrial customers, and my own belief in Agile engineering practices. Coming from a background where Test-Driven Development (TDD) is the heartbeat of quality, I realized I didn't just want to build a script; I wanted to build a process I could trust.In this series, I want to share a practice that served me well while learning the ropes: The "Twin Auditor" Pattern.The Challenge: Beyond Logic, It’s IntegrationWhen you build an extractor, you aren't just writing code in a vacuum. You are building a bridge between two distinct worlds: your source system (the DMS) and your data platform (CDF).Extraction is inherently an integration challen
Hello, We have around ~10/15 CDF functions. We deploy these functions via cdfToolkit.We notice that deployment of new version of a function takes around ~10min in order for it to be fully available. In the worst case where we modify a common module used by all function, redeploying of all functions can reach ~30-40mins. During this time these functions are not available and results in a failure in the dependent high frequency workflows. We wonder if there is a way to accelerate deployment of new function versions. Thank you!
We have multiple Asset Centric Location Filters created which are used in Industrial Tools search to filter site specific assets.When using multiple filters, we observed that the Search returns 0 assets.We inspected the Network requests and observed the Cognite API call to assets/list fails with below error:```{ "error": { "code": 400, "message": "Asset subtrees exceed the limit of 100000 assets." }}```There are similar cases where a location filter is setup with asset subtree and the subtree has more than 100K assets. Is there a way we can configure Location Filters to bypass the limit of 100k assets.
Hi Guys,I tried to use a transformation from the SDK but i keep getting error on Transformation credentials. Do you guys know what I need to do to solve this credentials issue. I have check the current credential for the Service Account that I use and the access for tranformation has been granted. def fetch_raw_table_via_transformation( client: CogniteClient, db_name: str, table_name: str, calculation_date: Optional[str] = None, columns: Optional[List[str]] = None) -> pd.DataFrame: """ Fetch data by running a temporary CDF Transformation (uses Spark SQL engine). This is the RECOMMENDED approach for production workloads: - Runs on CDF's managed Spark infrastructure - Handles billions of rows efficiently - Server-side filtering and aggregation - Can write results to temp Raw table or return directly Note: Requires transformation permissions in CDF Args: client: CogniteClient instance db_name: Name of the RAW database
How can we get access to work hands-on with the learning path athttps://cognite-learn.fusion.cognite.com/cdf-fundamentals/data-models?cluster=api.cognitedata.com&workspace=data-management?If not, how can we practice hands-on with Cognite Learn?
Hello everyone,I observe a difference in behavior that I cannot explain.My input data, few datapoints, and before the value is 0, timeseries.is_step = TrueInput datapointsWith client.time_series.data.retrieve, behavior is as expected :And with every granularity results are okay as expected.Nevertheless, with client.time_series.data.synthetic.query it’s… different.that’s okthat’s okNot ok, why the result is not 2 groups : from 46 to 49 then 49 to 52 ? another wrong exampleWhy the start timestamp is 48 and not at 46 ? Again, the timeseries endoint is good : I have lost hope.If anyone has anything to try or an explanation, i’ll be grateful.Thanks in advance,Pierre
Hi everyone! 👋 Join us tomorrow to see the results of our "Hack for Impact" challenge. We are hosting Tridiagonal.ai (presented by @Dinesh Makked ) and SLB (presented by @Aditya Kotiyal) to present the winning concepts they developed for "Smart Operations" and "Cognite Vision."This is a fantastic opportunity for the community to: Celebrate the creativity and hard work of your fellow community members. See the specific approach these teams took to build their solutions. Hear the story behind the project directly from the creators. Hope to see you there! 🗓️ Thu, Jan 15 @ 3:00 PM CEST 👉 Register Here