Skip to main content

CAM Assets Subgraph Reference

The su-cam-assets subgraph provides Connected Asset Management (CAM) capabilities for managing asset types, asset properties, and asset hierarchy in connected operations.

Subgraph Information

  • Name: su-cam-assets
  • Routing URL: https://mijlot8lad.execute-api.us-west-2.amazonaws.com/poc/graphql
  • Last Updated: 2025-11-03
  • SDL: View Schema

Overview

CAM Assets manages the foundational structure for connected operations:
  • Asset Types: Define schemas for different kinds of operational assets
  • Asset Properties: Custom attributes and their data types
  • Asset Hierarchy: Parent-child relationships between assets
  • Camera Assets: Specialized operations for camera and detection assets
  • Batch Operations: Large-scale asset creation and updates
  • Geospatial: Full GeoJSON support for asset locations

Key Concepts

Asset Types

Asset types define the structure and schema for operational assets:
  • Properties: Custom attributes (name, data type, required, default value)
  • Extensions: External data source integrations
  • Status Tracking: Configuration for asset state management
  • Hierarchy Rules: Parent-child relationship constraints

Assets

Assets are instances of asset types representing operational entities:
  • Sites: Top-level geographic locations
  • Equipment: Major operational assets
  • Components: Sub-components within equipment
  • Wells: Oil and gas well assets
  • Pipelines: Pipeline infrastructure

Asset Hierarchy

Assets can be organized in parent-child relationships:
  • Multi-level organizational structures
  • Inherited properties and configurations
  • Hierarchical queries and filtering
  • Geographic nesting (e.g., equipment within sites)

Core Types

CamAssets

Main entry point for querying assets:

CamAsset

Individual asset instance:

AssetTypes

Manage asset type definitions:

AssetType

Asset type definition:

AssetTypeProperty

Property definition within an asset type:

Query Operations

camAssets

Query assets by type:

assetTypes

Query available asset types:

camAssetReferences

Lightweight asset references for dropdowns:

camEngine

Query CAM engine configuration and datasets:

camAssetsDatasets

Get datasets for a specific tenant:

assetConfigs

Query tenant-specific configurations:

generateBatchUpsertUploadUrl

Generate presigned S3 URL for batch operations:

camCatalog

Query catalog configuration for a group:

assetAuditing

Access audit trail information:

Mutation Operations

createAsset

Create a new asset:

updateAsset

Update an existing asset:

updateAssetProperty

Update specific asset properties:

updateAssetGeometry

Update asset geolocation:

createAssetStatus

Create asset status record:

manageCamAssets

Batch operations for assets:

setAssetConfig

Update tenant configuration:

reloadCamAssetsDatasets

Reload datasets from external sources:

updateAssetStatus

Update asset status:

deleteAssetStatus

Delete asset status record:

deleteAsset

Delete an asset:

createAssetType

Create a new asset type:

updateAssetType

Update an asset type:

activateAssetType

Activate an asset type:

deleteAssetType

Delete an asset type:

flushCamStreamDatasetDelta

Flush streaming dataset delta:

deleteAssetConfig

Delete asset configuration:

Deprecated Operations

The following legacy operations are deprecated in favor of the unified camAssets query:
  • assetSites → Use camAssets(assetTypeId: "site")
  • assetEquipments → Use camAssets(assetTypeId: "equipment")
  • assetComponents → Use camAssets(assetTypeId: "component")
  • assetWells → Use camAssets(assetTypeId: "well")
  • assetPipelines → Use camAssets(assetTypeId: "pipeline")
  • assetUnattributeds → Use camAssets without assetTypeId filter

Filtering and Sorting

CamAssetFilter

Filter assets by various criteria:

CamAssetFullTextSearch

Search assets by text:

CamAssetSortBy

Sort asset results:

GeoJSON Support

Full GeoJSON geometry types supported:

Example Geometries

Point:
Polygon:

Audit Information

All assets include audit metadata:

Error Handling

Mutations return standardized error types:
Common error types:
  • DUPLICATE_ID: Asset ID already exists
  • INVALID_PARENT: Parent asset not found or invalid type
  • INVALID_PROPERTY: Property validation failed
  • INVALID_GEOMETRY: GeoJSON geometry is malformed
  • MISSING_REQUIRED: Required field not provided
  • INVALID_ASSET_TYPE: Asset type does not exist

Extension System

Assets can integrate with external data sources through extensions:

Batch Operations

Upload Flow

  1. Generate presigned S3 upload URL
  2. Upload CSV/JSONL file to S3
  3. Trigger batch upsert with reference
  4. Monitor processing status

File Formats

CSV:
JSONL: