{ "documentationUrl": "https://docs.airbyte.io/integrations/sources/postgres", "connectionSpecification": { "$schema": "http://json-schema.org/draft-07/schema#", "title": "Postgres Source Spec", "type": "object", "required": ["host", "port", "database", "username"], "additionalProperties": false, "properties": { "host": { "title": "Host", "description": "Hostname of the database.", "type": "string", "order": 0 }, "port": { "title": "Port", "description": "Port of the database.", "type": "integer", "minimum": 0, "maximum": 65536, "default": 5432, "examples": ["5432"], "order": 1 }, "database": { "title": "DB Name", "description": "Name of the database.", "type": "string", "order": 2 }, "username": { "title": "User", "description": "Username to use to access the database.", "type": "string", "order": 3 }, "password": { "title": "Password", "description": "Password associated with the username.", "type": "string", "airbyte_secret": true, "order": 4 }, "ssl": { "title": "Connect using SSL", "description": "Encrypt client/server communications for increased security.", "type": "boolean", "default": false, "order": 5 }, "replication_method": { "type": "object", "title": "Replication Method", "description": "Replication method to use for extracting data from the database.", "order": 6, "oneOf": [ { "title": "Standard", "additionalProperties": false, "description": "Standard replication requires no setup on the DB side but will not be able to represent deletions incrementally.", "required": ["method"], "properties": { "method": { "type": "string", "const": "Standard", "enum": ["Standard"], "default": "Standard", "order": 0 } } }, { "title": "Logical Replication (CDC)", "additionalProperties": false, "description": "Logical replication uses the Postgres write-ahead log (WAL) to detect inserts, updates, and deletes. This needs to be configured on the source database itself. Only available on Postgres 10 and above. Read the Postgres Source docs for more information.", "required": ["method", "replication_slot", "publication"], "properties": { "method": { "type": "string", "const": "CDC", "enum": ["CDC"], "default": "CDC", "order": 0 }, "replication_slot": { "type": "string", "description": "A pgoutput logical replication slot.", "order": 1 }, "publication": { "type": "string", "description": "A Postgres publication used for consuming changes.", "order": 2 } } } ] } } } }