UpdateCollector parity mapping

Supported in:

This guide details the request and response mapping specifications and property parity analysis for migrating from the legacy Backstory Ingestion Collector API (UpdateCollector) to the modern Chronicle API (UpdateCollector).

Protocol and mapping overview

Feature Legacy API (UpdateCollector) Modern Chronicle API (UpdateCollector)
HTTP method PATCH PATCH
Permissions Partner token or legacy API keys chronicle.googleapis.com/collectors.update

Request payload field-by-field parity

The modern Chronicle API UpdateCollectorRequest targets resources using Google Cloud resource name paths and enforces PATCH partial updates using a field mask.

Legacy field (UpdateCollectorRequest / Collector) Modern field (UpdateCollectorRequest / Collector) Field type Parity and migration notes
collector.name collector.name (in HTTP path) string Google Cloud scoping context: The legacy request used path format forwarders/<forwarder_id>/collectors/<collector_id>. The modern API routes this using the standard Google Cloud resource tree structure: projects/{project}/locations/{location}/instances/{instance}/forwarders/{forwarder_id}/collectors/{collector_id}.
collector.display_name collector.display_name string Parity mapped: Display name of the collector. Rename to displayName in JSON payloads.
collector.config collector.config CollectorConfig Parity mapped: Configuration settings mapping (sources, filters, networks).
collector.override_timezone collector.override_timezone bool Parity mapped: Toggles timezone overrides. Rename to overrideTimezone in JSON payloads.
collector.time_zone collector.time_zone string Parity mapped: Target timezone override. Rename to timeZone in JSON payloads.
update_mask update_mask FieldMask Parity mapped: Standard FieldMask selects which properties are modified in the PATCH request (must include the target fields, for example, display_name). Rename to updateMask in JSON.
collector.state Ignored / output-only: The state is set by the system and ignored during update requests.
collector.type Ignored / output-only: Collector types are immutable post-creation and cannot be modified using update PATCH calls.

Response payload field-by-field parity

Both responses return the modified Collector message representation.

Legacy field (Collector message) Modern field (Collector message) Field type Parity and migration notes
name name string Parity mapped: Contains the standard canonical resource path: projects/{project}/locations/{location}/instances/{instance}/forwarders/{forwarder_id}/collectors/{collector_id}.
display_name display_name string Rename to displayName in JSON responses.
config config CollectorConfig Contains equivalent log source and network settings.
state state enum Maps directly to State enum (values: ACTIVE, SUSPENDED).
type type enum Maps directly to Type enum (values: FILE, KAFKA, PCAP, SPLUNK, WEBPROXY, SYSLOG).
override_timezone override_timezone bool Rename to overrideTimezone in JSON responses.
time_zone time_zone string Rename to timeZone in JSON responses.

Key differences

  • Google Cloud project scoping integration:
    • Scoped natively under parent project instance folder bindings.
  • Resource path renaming:
    • Legacy path formats forwarders/<forwarder_id>/collectors/<collector_id> are migrated to standard Google Cloud path parameters projects/{project}/locations/{location}/instances/{instance}/forwarders/{forwarder_id}/collectors/{collector_id}.