Object Schemas
Cloudaware models assets, configurations, and findings as namespaced Salesforce custom objects (sObjects). Each CMDB CI Class corresponds to one sObject and participates in a shared set of conventions for identity, lifecycle, ownership, and relationships.
Core Model
- Identity: stable unique identifiers and external/provider IDs
- Lifecycle: first appearance and soft‑delete tracking
- Ownership & location: account/subscription/project, region/zone, application
- Configuration: attributes, tags/labels, and normalized enumerations
- Relationships: parent/child lookups, master‑detail, and many‑to‑many via junctions
Common Fields and Conventions
Field API names vary by object, but Cloudaware follows consistent patterns. Always prefer list views or Describe metadata to confirm exact names in your org.
- Name: human‑readable label; not necessarily unique
- Record type:
RecordType.DeveloperNameto distinguish sub‑types (e.g., vulnerability sources) - Unique ID: a stable identifier (for many objects,
CA10__caUuid__c) used for deduplication - Lifecycle timestamps:
CA10__disappearanceTime__c(null when active; populated when resource disappears from source)
- Ownership and scope:
- Provider container (e.g., AWS Account) via lookup such as
CA10__account__c - Location fields (e.g., region/zone)
- Provider container (e.g., AWS Account) via lookup such as
- Tags/labels: normalized key/value collections stored in dedicated fields; see Attributes
Use CA10__disappearanceTime__c = NULL to retrieve the current/active set of records for an object.
Representative Objects
Below are examples you will commonly encounter. Actual availability depends on installed packages and integrations.
CA10__CaAwsAccount__c— AWS account inventory and ownership anchorCA10__CaAwsInstance__c— AWS EC2 instance; looks up toCA10__CaAwsAccount__cCA10__CaAwsVolume__c— AWS EBS volume; region/zone and attachment stateCA10__CaAwsInstanceVolumeLink__c— junction linking AWS EC2 Instance to AWS EBS volume (two master‑detail relationships)CA10__CaApplication__c— CloudAware virtual applicationCA10__CaApplicationTier__c— CloudAware Application Tier (detail) in a master‑detail with CloudAware ApplicationCA10__CaApplication__cCA10__CaNessusVulnerability__c— consolidated vulnerability finding with record types per sourceCA10K__CaKubernetesCluster__c— Kubernetes cluster (fromCA10Kpackage)
These objects participate in the relationship patterns covered in Relationship Model.
Record Types and Variants
Record types enable multiple “flavors” under a single object. For example, CloudAware Vulnerability Scan (CA10__CaNessusVulnerability__c) uses record types to distinguish data sources, and the primary relationship field may differ by type:
caCrowdstrikeVulnerability→ links toCA10CR__CrowdstrikeHost__ccaCheckmarxOneVulnerability→ links toCA10CO__CaCheckmarxOneScan__c,CA10CO__CaCheckmarxOneProject__ccaGitLabVulnerability→ links toCA10GL__GitLabProject__c
When querying, filter by RecordType.DeveloperName and null‑check the relevant lookup field for the source.
Query Examples
Active EC2 instances with account name and state:
SELECT Name,
CA10__account__r.Name,
CA10__instanceId__c,
CA10__stateName__c
FROM CA10__CaAwsInstance__c
WHERE CA10__disappearanceTime__c = NULL
ORDER BY Name ASC
Volumes attached to a specific instance via the junction object:
SELECT Id, Name
FROM CA10__CaAwsVolume__c
WHERE Id IN (
SELECT CA10__volume__c
FROM CA10__CaAwsInstanceVolumeLink__c
WHERE CA10__instance__c = 'AWS_INSTANCE_ID_PLACEHOLDER'
)
A list of open CrowdStrike-linked vulnerability records, along with the related host name and UUID:
SELECT Name,
CA10CR__crowdstrikeHost__r.Name,
CA10__caUuid__c
FROM CA10__CaNessusVulnerability__c
WHERE CA10__disappearanceTime__c = NULL
AND RecordType.DeveloperName = 'caCrowdstrikeVulnerability'
AND CA10CR__crowdstrikeHost__c != NULL
ORDER BY Id ASC