Skip to main content

SObject Sink Configuration

sh.oso.salesforce.sink.SalesforceSinkConnector

Property-by-property reference, generated from the connector's ConfigDef — guaranteed to match the release you are running. Usage guide: connector documentation.

Select input with the standard framework properties topics or topics.regex. For dead-letter queues use errors.tolerance=all with errors.deadletterqueue.topic.name.

High importance​

sf.auth.grant.type​

OAuth flow.

  • Type: string
  • Default: client_credentials
  • Valid values: [client_credentials, jwt_bearer, password]
  • Importance: high

sf.instance.url​

My Domain URL.

  • Type: string
  • Default: null
  • Importance: high

sf.consumer.key​

Consumer key.

  • Type: password
  • Default: null
  • Importance: high

sf.consumer.secret​

Consumer secret.

  • Type: password
  • Default: null
  • Importance: high

sf.objects​

Target SObject API names; map topics via sf.<object>.topics.

  • Type: list
  • Default: none — required
  • Importance: high

Medium importance​

sf.username​

Username (jwt_bearer/password).

  • Type: string
  • Default: null
  • Importance: medium

sf.jwt.keystore.path​

RS256 key path.

  • Type: string
  • Default: null
  • Importance: medium

sf.jwt.keystore.password​

Keystore password.

  • Type: password
  • Default: null
  • Importance: medium

sf.api.version​

API version.

  • Type: string
  • Default: 60.0
  • Importance: medium

sf.write.mode​

bulk2 (Bulk API 2.0), rest (Composite), or auto (rest under the threshold).

  • Type: string
  • Default: auto
  • Valid values: [bulk2, rest, auto]
  • Importance: medium

behavior.on.api.errors​

Per-record API failures: fail the task, log and continue, or ignore.

  • Type: string
  • Default: fail
  • Valid values: [fail, log, ignore]
  • Importance: medium

sf.request.max.retries.time.ms​

Retry time budget.

  • Type: long
  • Default: 30000
  • Importance: medium

Low importance​

sf.password​

Password (legacy flow).

  • Type: password
  • Default: null
  • Importance: low

sf.password.token​

Security token (legacy flow).

  • Type: password
  • Default: null
  • Importance: low

sf.jwt.audience​

JWT aud claim.

  • Type: string
  • Default: null
  • Importance: low

sf.write.rest.threshold​

Max records for the REST path in auto mode.

  • Type: int
  • Default: 200
  • Valid values: [1,...,200]
  • Importance: low

sf.max.batch.records​

Records per Bulk ingest job.

  • Type: int
  • Default: 10000
  • Valid values: [1,...]
  • Importance: low

sf.token.endpoint​

OAuth token endpoint override (testing only).

  • Type: string
  • Default: null
  • Importance: low

Per-object properties (sf.<object>.*)​

Each SObject listed in sf.objects is configured with dynamic keys, where <object> is the exact API name (e.g. sf.Lead.topics). These are read from the raw connector config and therefore do not appear in config() validation output.

sf.<object>.topics​

Kafka topic(s) feeding this object. Each topic maps to exactly one SObject.

  • Type: list
  • Default: none — required when more than one object is configured

sf.<object>.operation​

Write operation used when _EventType is absent or overridden: insert, update, upsert, or delete.

  • Type: string
  • Default: insert

sf.<object>.override.event.type​

Ignore the record's _EventType field and always apply sf.<object>.operation.

  • Type: boolean
  • Default: false

sf.<object>.use.custom.id.field​

Address records by an external ID field instead of the Salesforce Id — enables idempotent cross-org upserts and deletes.

  • Type: boolean
  • Default: false

sf.<object>.custom.id.field.name​

API name of the external ID field (must be marked as an External ID in the target org).

  • Type: string
  • Default: none — required when sf.<object>.use.custom.id.field=true

sf.<object>.type​

standard_custom for regular objects, or big_object for Big Objects (__b). Big Objects are insert-only; update/delete records are routed to the DLQ.

  • Type: string
  • Default: standard_custom

sf.<object>.ignore.fields​

Comma-separated record fields to exclude from writes.

  • Type: list
  • Default: "" (empty)