diff --git a/airflow/provider_info.schema.json b/airflow/provider_info.schema.json index 3a37810f7a04b..b97bd44fe4daf 100644 --- a/airflow/provider_info.schema.json +++ b/airflow/provider_info.schema.json @@ -25,6 +25,60 @@ "deprecatedVersion": "2.2.0" } }, + "transfers": { + "type": "array", + "items": { + "type": "object", + "properties": { + "how-to-guide": { + "description": "Path to how-to-guide for the transfer. The path must start with '/docs/'", + "type": "string" + }, + "source-integration-name": { + "type": "string", + "description": "Integration name. It must have a matching item in the 'integration' section of any provider." + }, + "target-integration-name": { + "type": "string", + "description": "Target integration name. It must have a matching item in the 'integration' section of any provider." + }, + "python-module": { + "type": "string", + "description": "List of python modules containing the transfers." + } + }, + "additionalProperties": false, + "required": [ + "source-integration-name", + "target-integration-name", + "python-module" + ] + } + }, + "triggers": { + "type": "array", + "items": { + "type": "object", + "properties": { + "integration-name": { + "type": "string", + "description": "Integration name. It must have a matching item in the 'integration' section of any provider." + }, + "python-modules": { + "description": "List of Python modules containing the triggers.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "additionalProperties": false, + "required": [ + "integration-name", + "python-modules" + ] + } + }, "connection-types": { "type": "array", "description": "Map of connection types mapped to hook class names.",