Skip to main content

Naming & Identifiers

Cloudaware is built on Salesforce and exposes its CMDB through Salesforce-style object and field API names, including namespaced custom objects and fields. Understanding these conventions is useful when writing SOQL, building reports, and integrating with Cloudaware APIs, including REST and relationship-based capabilities.

Namespaces and API Names

  • Managed package prefixes distinguish objects and fields (e.g., CA10__, CA10K__, CA10TF__).
  • Custom object names end with __c (e.g., CA10__CaAwsInstance__c).
  • Custom field names end with __c (e.g., CA10__account__c).
  • Relationship traversal to parents uses __r (e.g., CA10__account__r.Name).

See Force.com and Packages for a package overview.

Identity Strategy

  • Provider identifiers (e.g., ARN/resourceId/selfLink) are stored in dedicated fields and/or External ID fields.
  • A stable internal identifier (commonly CA10__caUuid__c) is used for deduplication across discovery runs.
  • Natural keys for cloud assets typically combine provider ID + owning account/subscription/project + location (region/zone/namespace).

Field Naming Patterns

  • Container/owner lookups: fields such as CA10__account__c or provider‑specific owner fields
  • Location fields: region, zone, availability zone, namespace (names vary by object)
  • Junction objects: named with a Link__c suffix (e.g., CA10__CaAwsInstanceVolumeLink__c) and contain two master‑detail fields to the parents
  • Record types: use RecordType.DeveloperName for logic/filters (e.g., caCrowdstrikeVulnerability)

Cross‑Provider Normalization

  • Accounts, subscriptions, projects are normalized to a consistent hierarchy for querying and reporting.
  • Region and zone names follow a normalized scheme across providers.
  • Tag and label key normalization helps reduce case ambiguity. Avoid relying on case-sensitive tag or label keys unless the specific field or integration documents that behavior.

Examples

  • Child to parent traversal: SELECT Name, CA10__account__r.Name FROM CA10__CaAwsInstance__c
  • Filter by record type: ... WHERE RecordType.DeveloperName = 'caGitLabVulnerability'
  • Filter active records: ... WHERE CA10__disappearanceTime__c = NULL