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
I’m getting the below error details when trying to access a new sandbox environment that has been setup. What details do I need to share w/my team to unblock access?Your network administrator has blocked accessExternal access is blocked by policy. Contact your IT department for access. Troubleshooting detailsIf you contact your administrator, send this info to them.Copy info to clipboardRequest Id: f3b6e072-9289-427c-97e4-766a40af0700Correlation Id: e24e2dc7-9a3a-488c-92a3-fb333dc35281Timestamp: 2026-06-01T21:34:21ZMessage: AADSTS500021: Access to 'XXXXXXXX' tenant is denied. App name: Cognite Data FusionDevice platform: Windows 10Device state: UnregisteredIP address: 35.199.59.75Signed in as: XXXXXXXXXXFlag sign-in errors for review: Enable flaggingIf you plan on getting help for this problem, enable flagging and try to reproduce the error within 20 minutes. Flagged events make diagnostics available and are raised to admin attention.
I’m trying to deploy a couple of Streamlit apps into Data Fusion. I’m getting the error “Error during booting up: Program terminated with exit(1)” in the Data Fusion editor portal.I’d swore one app was working yesterday and I was able to publish, but both apps are giving this error in the editor portal. I can publish, but I get the same error in Flows when trying to run the custom app. I’ve tried researching and it says to look at the logs, but I don’t see a way to view any log details.Any thoughts on how to debug this?
Hi Cognite Team,I'm building a React dashboard using Cognite Data Fusion for my portfolio and would like to know if there are any demo projects available for working with CDF data.
Hello,What are the best practices around setting the max-workers for a sdk. If I do not set the Global Config all the default values for workers and retries would be picked correct ? Can you give any reference on how we can set GlobalConfig, I mean I did not see any way to pass the GlobalConfig to ClientConfig ?
Hello esteemed members of the Cognite community,I come to you with a sense of urgency and a deep need for expert guidance. I've been attempting to familiarize myself with Cognite for the last six months, and despite my best efforts, I find myself at an impasse with some critical aspects. My situation is time-sensitive, and I am truly hoping for your assistance to navigate this complex but fascinating journey.My Setup:Environment: Google Colab (Free version)SDK: Cognite Python SDKAssets: Wind Farm with two sub-assets (Asset A and Asset B)My Goals:Connect to Cognite Project via Python SDK: I need to use my client ID and client secret to establish a connection from Google Colab.Create Hierarchical Assets: My aim is to create a parent asset, named "Wind Farm," and within this parent asset, include two child assets, Asset A and Asset B.Upload Time-Series Data from CSV: I have CSV files containing wind-speed and wind-power data for Asset A and Asset B. I need to upload these as time-series d
Hi Cognite Team,Is there any document which can show , how to fetch confidential information from private end point key vault on Microsoft azure key vault.
Description / Problem StatementWe are using the Cognite 3D File Extractor to migrate 3D model files from an on-premises Windows VM to Cognite Data Fusion (CDF).The majority of 3D files are ingested successfully with multiple sizes mostly > 10 GB. However, four specific files consistently fail ingestion, even after multiple retries.Key observations:All failing files are close to 5 GB in size Example sizes (as shown in Windows Explorer): 4.99 GB 4.94 GB 4.91 GB When checked via terminal/command line, these same files report a larger actual size (~5.3 GB) It appears that based on the Windows VM file size, the 3D extractor determines it should use a single-part upload. However, when it attempts to upload the actual file, the process fails because the size exceeds 5 GB
I’m trying to use Update extraction pipelines method to update my extraction pipelines created. Here are some issues i face:1. I’m unable to update contacts for an extraction pipeline, it throws the below error:code - contact_info = [ExtractionPipelineContact(name="sangs", email="sm6@slb.com", role = "MAINTAINER", send_notification=True)]to_update = ExtractionPipelineUpdate(external_id="<PIPELINE-EXT-ID-2>")to_update.contacts.set(contact_info)client.extraction_pipelines.update(to_update)error - “CogniteAPIError: Unexpected field - items[0].update.contacts.set[0].send_notification - did you mean sendNotification? | code: 400 | X-Request-ID: 918d1113-6a5e-9d38-b850-61e3dc54c220 The API Failed to process some items. Successful (2xx): [] Unknown (5xx): [] Failed (4xx): [<PIPELINE-EXT-ID-2>, ...]”2. I’m unable to set the specified fields to None using sdk : description, source, schedule,documentation, name and dataset-id. Im able to set only metadata and raw-tables to None. Wond
On behalf of CelaneseHi.I would like to report a potential issue with cursor-based pagination when sorting in descending order and request clarification on the undocumented forceCursorsDespitePerformanceHazard flag.We are executing a query against the view OEEEvent, which is defined with a cursorable BTREE index on the startDateTime property, as shown in the simplified schema below: type OEEEvent@container( indexes: [ { fields: ["startDateTime"] identifier: "idx_oeev_startDateTime" indexType: BTREE cursorable: true } ]) { startDateTime: Timestamp endDateTime: Timestamp totalDuration: Float} We are querying with the following time range filter: "startDateTime": { "gte": "2024-12-31T00:00:00.000-03:00", "lt": "2025-05-01T00:00:00.000-03:00"} The result set includes 840 records.When applying a page size of 500 and using the following ascending sort configuration: { "property": [ "INO-COR-ALL-DML", "OEEEvent/472bdbcb9cd6f1", "startDateTime" ],
The MQTT hosted extractor is erroring out and showing the following message: Internal database error: Session has expired: Session was not foundI’ve tried pausing and resuming the extractor, and modifying the configured sink, without success.
Hi Everyone,Is there a way to create an alert directly on a calculated series in Cognite Charts?From what I’ve found, to create an alert for a calculation, I first need to schedule the calculation and then run the alert on that scheduled result. However, scheduling doesn’t seem to work well in my case.For example, if I receive machine data every hour, I also need to schedule the calculation every hour. Sometime scheduling stops by itself. It would be much easier if we could create alerts directly on the calculation without scheduling.Secondly, I’m not finding clear documentation or videos on how to schedule calculations properly and what best practices to follow. If anyone has experience with this or can share guidance, please let me know.Thanks!
I'm using python sdk and wanted to query instances based on a condition using “data_modeling.instances.query” method. i have a view “TimeseriesProperty” and it has a direct relation/reference to "TimeseriesPropertyType" view. Is it possible to have a distinct filter on the result, because multiple “TimeseriesProperty” instances can have the same "TimeseriesPropertyType" instances , we don't want duplicated "TimeseriesPropertyType" instances coming in response for below query: view_id= ViewId(space="slb-pdm-dm-governed", external_id="TimeseriesProperty",version="2_0")v_id_2_PROP = ViewId(space="slb-pdm-dm-governed", external_id="TimeseriesPropertyType",version="2_0")query= Query( with_= { "TimeseriesProperty":NodeResultSetExpression( limit=10, filter= HasData(views=[view_id])), "TimeseriesPropertyType":NodeResultSetExpression( limit=10000, direction="outwards",
HiWe are testing out a new deletion transformation for a view in data modeling. The transformation looks something like this:select externalIdfrom cdf_data_models(...)where project in ("ProjectA","ProjectB")This transformation always times out and returns a “Graph query time out” error message. However, when changing the transformation to this the transformation just runs fine:select externalIdfrom cdf_data_models(...)where project = "ProjectA"unionselect externalIdfrom cdf_data_models(...)where project = "ProjectB"For context, the project column here is indexed and the view has around 10 properties and about 1.7 million rows. The transformations all query the same view.We are therefore wondering how the filtering in transformations handles filtering in data modeling and why these transformations are performing different. Learning more about this would benefit us greatly when working with transformations and data modeling in the future :)Thanks in advance!Sebastian
first of all i created a new environment with below codes.python -m venv envenv\scripts\activatepip install poetry poetry config virtualenvs.in-project truepip install pandas numpypip install cognite-sdkpip install "cognite-sdk[pandas, geo]"pip install cognite-extractor-manageronce all above code completed. I started running cogex init.I am getting below error.cogex initEnter extractor name: csv extractorEnter description: descEnter author: --I provided the cognite login mail id in name <mail id>Which template should be loaded? simple: loads a generic template suitable for most source systems, using a simple function as the main entrypoint for the extractor. Most suitable for small and simple extractors. class: loads a generic template suitable for most source systems, using a run method on a class as the main entrypoint for the extractor. Most suitable for slightly bigger and more complicated extractors. rest: loads a template for extrac
I created an asset hierarchy with the Cogntie Core Data Model, then I created a custom data model through neat and I need to migrate the assets from the core data model to the custom extended data model, I tried creating a transformation but got the following error: failed with status 403: Properties [assetHierarchy_path, assetHierarchy_path_last_updated_time, assetHierarchy_root] are maintained by DMS and cannot be modified by end users. is there a way I can migrate/update the core data model assets to our extended data model?
WITH archived_wells AS ( SELECT DISTINCT ac.WellId FROM cdf_nodes( 'sp_dm_dap_knowledge_graph', 'Activity', '0.71' ) ac JOIN contextualization.dap_wellview_wellid_space_mapping map ON ac.WellId = map.key WHERE map.Archived = TRUE AND ac.Archived = FALSE)SELECT s.externalId, s.space, s.WellId, true as ArchivedFROM cdf_nodes( 'sp_dm_dap_knowledge_graph', 'WellState', '0.71' ) sJOIN archived_wells aw ON s.WellId = aw.WellIdWHERE s.Archived = FALSE AND EXISTS ( SELECT 1 FROM archived_wells )WellState has 20M rows of data. To improve SQL performance, I want to use a CTE to get the IDs of archived wells and then update WellState (archived and WellId are indexed). However, I found that even when using EXISTS to check that the CTE result is empty, cdf_nodes still loads instances. In this case, shouldn’t the result just be empty?Additionally, when I replaced the CTE with a subquery,
I'm using python sdk and wanted to query instances based on a condition using “data_modeling.instances.query” methos . I have a view called TimeseriesPropertyType which has a field (properties: [Property]) which is a reverse direct relation throughProperty: "propertyType".i just need to check if there are any “properties” field values associated with each instance of the TimeseriesPropertyType view. for that I'm fetching data in property view associated with those particular TimeseriesPropertyType view and doing the check manually in code.. is there any direct filter i can use that's available? i dont see any filters available on properties field in query explorer for the samebelow is the query im using #view_id_ts_prop_type - TimeseriesPropertyType view#view_id_property - Property viewquery= Query(with_= { "TimeseriesPropertyType":NodeResultSetExpression( limit=10000, filter= HasData(views=[view_id_ts_prop_type])), "Pr
Hi Team, I need help to write the unit test using pytest,below is the code: row_list = cognite.raw.rows.list(file.destination.database, file.Extractor_Last_Run_Table, limit=-1, columns=["key", "LastUpdatedDatetime"]).to_pandas() if not row_list.empty: val = list(row_list[row_list.index.isin([file.Extractor_key])]['LastUpdatedDatetime'])Could you please help to write the unit test for above code?Thanks
HiWe've hit a bug in cdf-tk (reproduced on 0.8.147 and 0.8.155) when deploying containers to a brand new space.We have 98 containers in a new space. One container has no constraints, but others reference it via a requires constraint pointing to the same space. cdf-tk sends all containers in a single batch. The CDF API seems to validates requires constraints against what already exists in CDF not against other items in the same batch so it rejects the entire batch with this error:Cannot create requires constraint 'requireMetadata' in container'sp_xxx:ContainerB'.Target container 'sp_xxx:ContainerA' does not exist.cdf-tk should sort containers by their requires dependencies before batching, so dependency free containers like containerA are sent before the containers that depend on them.We'd appreciate a fix in an upcoming release, or any insights regarding this issue.Thanks
Hi all, looking for guidance on two issues we hit with CDF related to timeseries visibility and datamodel queries.403 error leaking timeseries externalIds:when a user without access requests a timeseries resource, a 403 error is returned as expected, but the error body contains the externalIds of the timeseries. Those externalIds are sensitive and should not be exposed to users who don’t have access.Is it expected behavior that externalIds are included in 403 error messages? If not, is there a setting / configuration / log-level that controls whether identifiers are returned in errors? Any recommended mitigation or planned fix? Datamodel query returns datapoints from unauthorized timeseriesSetup: Created dataset_1 and dataset_2 Created two timeseries, TS_A in dataset_1 and TS_B in dataset_2 Attached both TS_A and TS_B to a datamodel Granted the user only timeseries:READ scope:dataset_2 (so they should see TS_B only) Observed behavior: querying the datamodel returns datapoints for T
We have an app deployed in abp-sandbox for “offshore regulatory assistance” (Flows + KG-RAG agent) on the Agent API (`az-ams-sp-002`, `cdf-version: beta`). While developing document export, I've encountered a reproducible failure pattern:Generation calls with complex instructions and/or long input intermittently return HTTP 200 with empty `content.text` — no error signal. The failure threshold shifted within hours on identical configuration: a 28.7K prompt succeeded at 18:15, 25K failed 12/12 an hour later, 15K succeeded at 21:49. Compression/summarization calls of similar size succeeded in the same window where generation calls failed.A report with the full test matrix is attached.Questions for Cognite (prepared with AI assistance):1. Could the endpoint return an explicit error/finish-reason instead of an empty 200?2. Are there documented practical limits for input size × instruction complexity?3. What is the roadmap status for streaming or async chat?4. Does a plain LLM endpoint with
Hi,Context:We currently organize our data in CDF using a per-country partitioning strategy, where each country has its own space.This approach was chosen primarily to restrict data access by country in a fine-grained manner.On top of that, we expose data models grouped by Business Object, such as Well Architecture, Cost Model, etc.Each Business Object model aggregates several data objects under a common business theme, which also allows us to control access by business domain in addition to country-based access.We are now planning to integrate a large amount of historical data, which will likely increase our model size by around 4x.These historical datasets are rarely queried, but we want to make sure their addition does not degrade performance for operational data — both in query latency and data ingestion throughput.We are evaluating two potential strategies: Keep everything in the same spaces, adding an indexed attribute (e.g., is_legacy = true) to distinguish legacy records. Crea
Hello, we are facing an SSL issue while trying to connect to cognite even if we’re disabling SSL verification.Could you please help ?from cognite.client import ClientConfig, CogniteClientfrom cognite.client.credentials import OAuthClientCredentialsfrom cognite.client.config import global_configglobal_config.disable_ssl = Truecreds = OAuthClientCredentials( **{ "client_id": "", "client_secret": "", "token_url": "", "scopes": ["https://westeurope-1.cognitedata.com/.default"], } )def get_cognite_client(project: str) -> CogniteClient: return CogniteClient( ClientConfig( client_name="Python-jupyter", project=project, credentials=creds, base_url="https://westeurope-1.cognitedata.com", ) )client = get_cognite_client("totalenergies-sandbox")res = client.units.list().to_pandas()------------------------------------------------------------------------------------
I am using CogniteSdk c# to query data model from CDF. When I tried to execute it, it did not return row items. Instead it just returned below result:What is the correct way to use the DataModel in C# CogniteSdk to return rows of data as per below?
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.