Skip to Content
PlugSync documentation preview build
ReferenceConfig V3Top-level `ConnectorConfigV3` shape

Top-level ConnectorConfigV3 shape

The root config object. Everything else lives under it.

Shape

{ "version": "3.0", "entities": [], "flows": [], "settings": {} }

Fields

FieldTypeRequiredDefaultNotes
version"3.0" or "3.1"yesPinned literal. Must equal "3.0" or "3.1".
entitiesarray of Entityno[]See entities.md.
flowsarray of Flowno[]See flows.md.
settingsobjectno{}Free-form. See “Settings” below.

version

Pydantic literal: Literal["3.0", "3.1"]. Anything else fails with Input should be '3.0' or '3.1'. This pin is deliberate: it keeps draft writers explicit about the schema version they target.

  • "3.0" is the baseline reference documented across these pages.
  • "3.1" adds the bulk step actions (upsert_many, create_many, update_many, delete_many, associate_many) and four step fields used by them (items, chunk_size, output, reconcile). See the relevant rows in step-actions.md.

entities and flows

See the dedicated reference pages. Both default to empty arrays; a config with no entities and no flows is syntactically valid but does nothing.

settings

Free-form object. The current v3 runtime does not read any specific keys from here; it is reserved for connector-scoped options that future plans may introduce. The historical key scope_overrides from v2.1 has no v3 reader; do not depend on it under v3.

Validators

RuleFailure message
entities[].name unique within the configentity names must be unique within a config
flows[].name unique within the configflow names must be unique within a config

Forward-compat caveat

ConnectorConfigV3 declares model_config = ConfigDict(extra="allow") at the top level. This means unknown top-level keys do not fail validation. Typos pass silently. Treat the table above as authoritative; do not introduce new top-level keys without a schema change.

Last updated on