Data Transfer is an orchestration component that enables users to transfer files from a chosen source to a chosen target (destination).This component can use a number of common network protocols to transfer data to a variety of sources and supports transferring files of any type. This component copies, not moves, the target file. Setting up this component requires selecting a source type and a target type. The component’s other properties will change to reflect those choices.The Maia runner streams the file between source and target, holding only a small in-memory buffer at any time. The file is never stored on the Maia runner.Currently supported data sources include:
Azure Blob Storage
Box
Dropbox
FTP
Google Cloud Storage
HTTP
HTTPS
Microsoft Exchange
Microsoft SharePoint
S3
SFTP
Windows Fileshare
Currently supported targets include:
Azure Blob Storage
Google Cloud Storage
S3
SFTP
Windows Fileshare
The Data Transfer component does not currently support transferring files to cloud data platforms such as Snowflake or Databricks. However, you can use the Data Transfer component to transfer files to cloud storage locations (Amazon S3 or Azure Blob Storage), and then use the S3 Load or Azure Blob Storage Load components to load the files into your cloud data platform.
To ensure that instance credentials access is managed correctly at all times, we always advise that customers limit scopes (permissions) where applicable.
If the component requires access to a cloud provider (AWS, Azure, or Google Cloud), it will use credentials as follows:
If using Full SaaS: The component will use the cloud credentials associated with your environment to access resources.
If using Hybrid SaaS: By default the component will inherit the agent’s execution role (service account role). However, if there are cloud credentials associated with your environment, these will overwrite the role.
Including credentials in URLs
Some sources and targets require you to configure a Source URL or Target URL to transfer data from or to the specified location. These URLs can contain your source or target username and password, as shown in the examples below, but this requires you to enter your password in plain text.Instead, we recommend using the Source username, Source password, Target username and Target password properties to provide your credentials, because this allows you to provide your password as a secret definition stored in a secure location.For example, if your source type is HTTP, we don’t recommend including your username and password in the Source URL, e.g. http://user:password@www.example.com/products/list. Instead, use https://www.example.com/products/list as the source URL, then enter your username, and select a secret definition that represents your connection password.
Properties
string
required
A human-readable name for the component.
Connect
drop-down
required
Select the data source that contains the files you want to transfer. Use the tabs below to see the properties to configure for each source type.
Azure Blob Storage
Box
Dropbox
FTP
Google Cloud Storage
HTTP
HTTPS
Microsoft Exchange
Microsoft SharePoint
S3
SFTP
Windows Fileshare
The service principal or identity that you use to connect to Azure must have the following permissions:
Storage Account Contributor at storage account level.
Storage Blob Data Contributor at storage account or container level.
No SAS tokens are required to connect to Azure Blob Storage. For more information, read Cloud provider credentials.
file explorer
required
Enter the URL that points to the source file you want to transfer.Either use the file explorer to navigate to the file, or enter the URL into the path field at the top of the dialog. This is particularly useful if you want to use variables in the URL. Special characters used in this field must be URL-safe.The URL should be in the following format:
Choose your OAuth connection from the drop-down menu.Click Manage to navigate to the OAuth connections list to review and add OAuth connections. Read OAuth to learn how to create an OAuth connection.
string
required
Enter the ID of the file you want to transfer. Each run of this component transfers one file. To transfer multiple files, run the component once for each file.
drop-down
required
Choose your OAuth connection from the drop-down menu.Click Manage to navigate to the OAuth connections list to review and add OAuth connections. Read OAuth to learn how to create an OAuth connection.
drop-down
required
Select the type of file you want to transfer: File or Paper.
string
required
Enter the file path of the file you want to transfer.
boolean
required
Only visible if File type is File.Select whether to download the file to transfer as a ZIP file. Default is No.
drop-down
required
Only visible if File type is Paper.Select the format you want to download the file to transfer in. Default is HTML.
string
required
Enter the URL, including full path and file name, that points to the source file. Special characters used in this field must be URL-safe.We recommend using the Source username and Source password properties to provide credentials. For more information, see Including credentials in URLs.The source URL should be in the following format:
Yes: URLs are relative to the user’s home directory.
No: (Default) URLs are relative to the server root.
string
Enter your URL connection username for the source. This property is optional—your username will only be used if the data source requests it.
drop-down
Select the secret definition that represents your credentials for your chosen source.Click Manage to navigate to the Secret definitions list to review and add secret definitions. Read Secrets and secret definitions to learn how to create a secret definition.This property is optional—your password will only be used if the data source requests it.
This option supports plain FTP only. It does not support FTPS (FTP Secure). An ftps:// URL will not negotiate TLS—the scheme is ignored, and the connection is attempted as plain FTP. The FTP source only supports plain, unencrypted FTP. If the FTP server requires TLS, the connection will fail.If you need an encrypted file transfer protocol, use SFTP instead, which is fully supported.
file explorer
required
Enter the URL that points to the source file.Either use the file explorer to navigate to the file you want to transfer, or enter the URL into the path field at the top of the dialog. This is particularly useful if you want to use variables in the URL. Special characters used in this field must be URL-safe.The source URL should be in the following format:
GS://<bucket>/<folder-path>
Example with variables:
GS://${jv_gcsAccount}/${jv_folderName}
string
required
Enter the URL, including full path and file name, that points to the source file. Special characters used in this field must be URL-safe.We recommend using the Source username and Source password properties to provide credentials. For more information, see Including credentials in URLs.The source URL should be in the following format:
Enter your URL connection username for the source. This property is optional—your username will only be used if the data source requests it.
drop-down
Select the secret definition that represents your credentials for your chosen source.Click Manage to navigate to the Secret definitions list to review and add secret definitions. Read Secrets and secret definitions to learn how to create a secret definition.This property is optional—your password will only be used if the data source requests it.
string
required
Enter the URL, including full path and file name, that points to the source file. Special characters used in this field must be URL-safe.We recommend using the Source username and Source password properties to provide credentials. For more information, see Including credentials in URLs.The source URL should be in the following format:
Select whether to check that the SSL certificate for the host is valid before fetching your file. Default is No.
string
Enter your URL connection username for the source. This property is optional—your username will only be used if the data source requests it.
drop-down
Select the secret definition that represents your credentials for your chosen source.Click Manage to navigate to the Secret definitions list to review and add secret definitions. Read Secrets and secret definitions to learn how to create a secret definition.This property is optional—your password will only be used if the data source requests it.
The Microsoft Exchange source accepts the following connection types:
OAuth 2.0 Authorization Code: Uses the Matillion-managed app. A user signs in to authorize access.
OAuth 2.0 Client Credentials: Uses your own Microsoft Entra app registration. App-only, with no user sign-in. The Maia runner requests the token from your tenant.
OAuth 2.0 Authorization Code (Bring Your Own App): Uses your own Microsoft Entra app registration. A user signs in with your app, and the Maia runner refreshes the token directly against your tenant.
Choose your OAuth connection from the drop-down menu.Click Manage to navigate to the OAuth connections list to review and add OAuth connections. Read OAuth to learn how to create an OAuth connection.
string
The mailbox to retrieve attachments from, for example user@example.com. Requests are addressed to this mailbox (Microsoft Graph /users/\{mailbox\}/...).
This property is required with an OAuth 2.0 Client Credentials connection, because an app-only token has no signed-in user.
With the other connection types, leave this property empty to read the signed-in user’s own mailbox. Enter the address of a shared mailbox to read that mailbox, if the signed-in user has access to it.
drop-down
required
Select the type of Exchange item to retrieve attachments from:
Message: Retrieves attachments from an email message.
Event: Retrieves attachments from a calendar event.
With an OAuth 2.0 Client Credentials connection that only has the Mail.Read application permission, Event isn’t available. Retrieving event attachments also needs the Calendars.Read application permission.
string
required
Enter the ID of the Exchange item to retrieve attachments from:
If Attachment source is Message, enter a valid email message ID.
If Attachment source is Event, enter a valid calendar event ID.
string
required
Enter the ID of the attachment to retrieve from the email message or calendar event identified in Source ID.
Troubleshooting Microsoft Exchange errors
403 Forbidden: With an OAuth 2.0 Client Credentials connection, this usually means either the mailbox is outside your app’s scope in Exchange role-based access control (RBAC) for applications, or your app doesn’t have admin-consented Mail.Read permission.
404 Not Found: This usually means the Mailbox, Source ID, or Attachment ID is wrong.
Network access for Microsoft Exchange
With a connection that uses your own Microsoft Entra app, the Maia runner calls login.microsoftonline.com (token requests) and graph.microsoft.com (data). For more information, read Network access and IP allowlist requirements.
Microsoft removed NTLM authentication support on January 31, 2026 and Basic authentication support on May 1, 2026 for SharePoint Online. If you’re connecting to SharePoint Online via SOAP, you must switch to REST with Azure AD OAuth immediately. SOAP authentication remains supported for SharePoint On-Premise. For more information, see the CData driver changelog.
drop-down
required
Select REST to connect to Microsoft SharePoint using the REST API.
drop-down
required
Choose your OAuth connection from the drop-down menu.Click Manage to navigate to the OAuth connections list to review and add OAuth connections. Read OAuth to learn how to create an OAuth connection.
column editor
Parameter: A JDBC parameter supported by the database driver. The available parameters are explained in the data model. Manual setup isn’t usually required, since sensible defaults are assumed.
Value: A value for the given parameter.
To transfer files from subsites, in the Connection Options property, enter URL as a parameter, with your site URL as the value. This must be the full URL, e.g. https://companyname.sharepoint.com/sitename (for classic/root sites) or https://companyname.sharepoint.com/sites/sitename (for modern site collections).
drop-down
required
Select the type of file you want to transfer: Attachment or Document.
drop-down
required
Only visible if File type is Document.Select the SharePoint library that contains the file you want to transfer. The drop-down lists libraries in your SharePoint instance.For more information, read Introduction to libraries.
string
required
Enter the URL that points to the file you want to transfer. This must be the full DNS name and path for the file, e.g. https://companyname.sharepoint.com/sitename/path/to/file/file.ext or https://companyname.sharepoint.com/sites/sitename/path/to/file/file.ext.
file explorer
required
Enter the URL that points to the source file.Either use the file explorer to navigate to the file you want to transfer, or enter the URL into the path field at the top of the dialog. This is particularly useful if you want to use variables in the URL. Special characters used in this field must be URL-safe.The source URL should be in the following format:
S3://<bucket>/<folder-path>/<file>
Example with variables:
S3://${jv_bucketName}/${jv_folderName}/report.txt
string
required
Enter the URL, including full path and file name, that points to the source file. Special characters used in this field must be URL-safe.We recommend using the Source username and Source password properties to provide credentials. For more information, see Including credentials in URLs.The source URL should be in the following format:
Yes: URLs are relative to the user’s home directory.
No: (Default) URLs are relative to the server root.
string
Enter your URL connection username for the source. This property is optional—your username will only be used if the data source requests it.
drop-down
Select the secret definition that represents your credentials for your chosen source.Click Manage to navigate to the Secret definitions list to review and add secret definitions. Read Secrets and secret definitions to learn how to create a secret definition.This property is optional—your password will only be used if the data source requests it.
drop-down
Select the secret definition that represents your SFTP private key.Click Manage to navigate to the Secret definitions list to review and add secret definitions. Read Secrets and secret definitions to learn how to create a secret definition.This property is optional—your SFTP private key will only be used if the data source requests it.
Your private key must be in OpenSSH or PEM (PKCS#1 or PKCS#8) format, and one of the following types: RSA, Ed25519, ECDSA (nistp256–nistp521), or DSA.By default, the key must be encrypted using one of the following algorithms: ssh-ed25519, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521, rsa-sha2-512, or rsa-sha2-256. A DSA key or a legacy ssh-rsa (SHA-1) key isn’t accepted unless you add it to the algorithm list in the Source SFTP config property, for example:
Passphrase-protected private keys aren’t supported. Remove the passphrase before use:
ssh-keygen -p -N "" -f YOUR_PRIVATE_KEY
Paste the complete key, including its header and footer lines, and keep its original line breaks. A key flattened onto a single line causes an “invalid private key” error.In a Hybrid SaaS configuration, you need to manually convert the private key into a format that allows it to be stored in your AWS Secrets Manager. You can do this with the following command:
ssh-keygen -p -f YOUR_PRIVATE_KEY -m pem
text editor
Specify custom SFTP configurations using key/value pairs. Enter each key/value pair on a new line. These configurations override standard SFTP behavior, enabling greater compatibility with different server security policies. These configurations only apply to the currently selected Data Transfer component. If you have multiple Data Transfer components in your pipeline, you must configure each one individually.For a list of all available keys, read the list of properties here.When using the kex key to define the key exchange algorithms to use, the only supported encryption algorithms are ssh-ed25519, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521, rsa-sha2-512, and rsa-sha2-256.To use variables in this field, type the name of the variable prefixed by the dollar symbol and surrounded by { } brackets, as follows: ${variable}. Once you type ${, a drop-down list of autocompleted suggested variables will appear. This list updates as you type; for example, if you type ${date, functions and variables containing date will be listed.
When Source type is Windows Fileshare:
The Data Transfer component uses the SMB2 protocol exclusively. SMB1 is not supported.
The Data Transfer component uses TCP port 445 by default if no port is explicitly specified.
Source credentials (domain, username, and password) are optional. The domain, username, and password must be provided as separate fields—do not use the domain\username format in the username field.
string
required
Enter the URL, including full path and file name, that points to the source file. Special characters used in this field must be URL-safe.We recommend using the Source username and Source password properties to provide credentials. For more information, see Including credentials in URLs.The source URL should be in the following format if possible:
Enter the domain that the file to transfer is located on.
string
Enter your URL connection username for the source. This property is optional—your username will only be used if the data source requests it.
drop-down
Select the secret definition that represents your credentials for your chosen source.Click Manage to navigate to the Secret definitions list to review and add secret definitions. Read Secrets and secret definitions to learn how to create a secret definition.This property is optional—your password will only be used if the data source requests it.
Configure
boolean
required
Select Yes if the source data is a ZIP file that you want to unpack before being transferred. Default is No.
boolean
required
Select Yes to gzip the transferred data when it arrives at the target. Default is No.
string
required
Enter a name for the new file when it is transferred to your target location.
Destination
drop-down
required
Select the target location to transfer your files to. Use the tabs below to see the properties to configure for each target type.
Azure Blob Storage
Google Cloud Storage
S3
SFTP
Windows Fileshare
The service principal or identity that you use to connect to Azure must have the following permissions:
Storage Account Contributor at storage account level.
Storage Blob Data Contributor at storage account or container level.
No SAS tokens are required to connect to Azure Blob Storage. For more information, read Cloud provider credentials.
file explorer
required
Enter the URL that points to the location you want to transfer the file to.Either use the file explorer to navigate to the location for the file, or enter the URL into the path field at the top of the dialog. This is particularly useful if you want to use variables in the URL. Special characters used in this field must be URL-safe.The URL should be in the following format:
Enter the URL that points to the location to transfer your file to.Either use the file explorer to navigate to the location to transfer the file to, or enter the URL into the path field at the top of the dialog. This is particularly useful if you want to use variables in the URL. Special characters used in this field must be URL-safe.The target URL should be in the following format:
GS://<bucket>/<folder-path>
Example with variables:
GS://${jv_gcsAccount}/${jv_folderName}
file explorer
required
Enter the URL that points to the location to transfer your file to.Either use the file explorer to navigate to the location to transfer the file to, or enter the URL into the path field at the top of the dialog. This is particularly useful if you want to use variables in the URL. Special characters used in this field must be URL-safe.The target URL should be in the following format:
S3://<bucket>/<folder-path>
Example with variables:
S3://${jv_bucketName}/${jv_folderName}
drop-down
If required, select ACL settings to apply to the transferred file. If you do not select any ACL settings, any ACL settings you currently have applied will be left unchanged. For more information about the available options, read the Amazon S3 canned ACLs list.
drop-down
required
Select how to encrypt the transferred file at the location specified in Target URL:
None: (Default) Do not encrypt the data.
SSE KMS: Encrypt the data according to a key stored on KMS. For more information, read AWS Key Management Service.
Only visible if Encryption is SSE KMS.Select the ID of the KMS encryption key you want to use to encrypt the data.
string
required
Enter the URL that points to the folder to transfer your file to. Special characters used in this field must be URL-safe.We recommend using the Target username and Target password properties to provide credentials. For more information, see Including credentials in URLs.If the folders in your target path don’t exist, the Data Transfer component creates them automatically.The target URL should be in the following format:
Yes: URLs are relative to the user’s home directory.
No: (Default) URLs are relative to the server root.
string
Enter your URL connection username for the target. This property is optional—your username will only be used if the target requests it.
drop-down
Select the secret definition that represents your credentials for your chosen target.Click Manage to navigate to the Secret definitions list to review and add secret definitions. Read Secrets and secret definitions to learn how to create a secret definition.This property is optional—your password will only be used if the target requests it.
drop-down
Select the secret definition that represents your SFTP private key.Click Manage to navigate to the Secret definitions list to review and add secret definitions. Read Secrets and secret definitions to learn how to create a secret definition.This property is optional—your SFTP private key will only be used if the target requests it.
Your private key must be in OpenSSH or PEM (PKCS#1 or PKCS#8) format, and one of the following types: RSA, Ed25519, ECDSA (nistp256–nistp521), or DSA.By default, the key must be encrypted using one of the following algorithms: ssh-ed25519, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521, rsa-sha2-512, or rsa-sha2-256. A DSA key or a legacy ssh-rsa (SHA-1) key isn’t accepted unless you add it to the algorithm list in the Target SFTP config property, for example:
Passphrase-protected private keys aren’t supported. Remove the passphrase before use:
ssh-keygen -p -N "" -f YOUR_PRIVATE_KEY
Paste the complete key, including its header and footer lines, and keep its original line breaks. A key flattened onto a single line causes an “invalid private key” error.In a Hybrid SaaS configuration, you need to manually convert the private key into a format that allows it to be stored in your AWS Secrets Manager. You can do this with the following command:
ssh-keygen -p -f YOUR_PRIVATE_KEY -m pem
text editor
Specify custom SFTP configurations using key/value pairs. Enter each key/value pair on a new line. These configurations override standard SFTP behavior, enabling greater compatibility with different server security policies. These configurations only apply to the currently selected Data Transfer component. If you have multiple Data Transfer components in your pipeline, you must configure each one individually.For a list of all available keys, read the list of properties here.When using the kex key to define the key exchange algorithms to use, the only supported encryption algorithms are ssh-ed25519, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521, rsa-sha2-512, and rsa-sha2-256.To use variables in this field, type the name of the variable prefixed by the dollar symbol and surrounded by { } brackets, as follows: ${variable}. Once you type ${, a drop-down list of autocompleted suggested variables will appear. This list updates as you type; for example, if you type ${date, functions and variables containing date will be listed.
When Target type is Windows Fileshare:
The Data Transfer component uses the SMB2 protocol exclusively. SMB1 is not supported.
The Data Transfer component uses TCP port 445 by default if no port is explicitly specified.
A target username is required when authenticating; the target domain and target password remain optional. The domain, username, and password must be provided as separate fields—do not use the domain\username format in the username field.
string
required
Enter the URL that points to the folder to transfer your file to. Special characters used in this field must be URL-safe.We recommend using the Target username and Target password properties to provide credentials. For more information, see Including credentials in URLs.If the folders in your target path don’t exist, the Data Transfer component creates them automatically.The target URL should be in the following format if possible:
Enter the domain that you want the transferred file to be located on.
string
Enter your URL connection username for the target. This property is optional—your username will only be used if the target requests it.
drop-down
Select the secret definition that represents your credentials for your chosen target.Click Manage to navigate to the Secret definitions list to review and add secret definitions. Read Secrets and secret definitions to learn how to create a secret definition.This property is optional—your password will only be used if the target requests it.
Was this page helpful?
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"Maia Documentation","colors":{"primary":"#001f1d","light":"#20514e","dark":"#001f1d"},"logo":{"light":"https://mintcdn.com/matillion/GyuNBHAx-GXnVlKX/images/maia-by-matillion-light.svg?fit=max\u0026auto=format\u0026n=GyuNBHAx-GXnVlKX\u0026q=85\u0026s=2c48b854f858c5a835450b3f34360db7","dark":"https://mintcdn.com/matillion/GyuNBHAx-GXnVlKX/images/maia-by-matillion-dark.svg?fit=max\u0026auto=format\u0026n=GyuNBHAx-GXnVlKX\u0026q=85\u0026s=88f8d1e1b1931cefd35c233a56cafe0a","href":"https://docs.maia.ai/"},"favicon":{"light":"https://mintcdn.com/matillion/0xM0A92Owv1nZXX1/images/maia-favicon-dark-green.png?fit=max\u0026auto=format\u0026n=0xM0A92Owv1nZXX1\u0026q=85\u0026s=356295fc83c5c6d1ed4aac2573ae45b1","dark":"https://mintcdn.com/matillion/0xM0A92Owv1nZXX1/images/maia-favicon-white.png?fit=max\u0026auto=format\u0026n=0xM0A92Owv1nZXX1\u0026q=85\u0026s=8709fc6d370155352cb6a4b5bbdd59d6"},"appearance":{"default":"light","strict":true},"background":{"decoration":"gradient"},"navbar":{"links":[{"href":"https://support.matillion.com/s/","label":"Support"}],"primary":{"type":"button","label":"Book your Maia demo","href":"https://www.maia.ai/book-a-demo"}},"footer":{"socials":{"x":"https://x.com/matillion","facebook":"https://www.facebook.com/matillion","youtube":"https://www.youtube.com/user/MatillionVideos","linkedin":"https://www.linkedin.com/company/matillion-limited","instagram":"https://www.instagram.com/matillion_"},"links":[{"header":"Maia","items":[{"label":"Maia.ai","href":"https://maia.ai"},{"label":"Academy","href":"https://academy.matillion.com"},{"label":"Exchange","href":"https://exchange.matillion.com/"},{"label":"Roadmap","href":"https://roadmap.matillion.com/"},{"label":"Support","href":"https://support.matillion.com/s"},{"label":"YouTube","href":"https://www.youtube.com/@Matillion"}]},{"header":"Matillion","items":[{"label":"Matillion.com","href":"https://matillion.com"},{"label":"Status","href":"https://status.matillion.com/"},{"label":"News","href":"https://www.matillion.com/news"},{"label":"Legal","href":"https://www.matillion.com/legal"},{"label":"Trust Center","href":"https://www.matillion.com/trust-center"}]}]},"seo":{"metatags":{"google-site-verification":"0VLXGRESICGHnU66TdhEgUMBRRubPnW8JTkzOpiiNn0"}},"fonts":{"heading":{"family":"Inter, system-ui"},"body":{"family":"Inter, system-ui"}},"integrations":{"ga4":{"measurementId":"G-6T2W93NTXW"},"posthog":{"apiKey":"phc_ky6YtuQApuXUkdApnVTY5PrjvnHx7EQGtYyRVSd9G535","apiHost":"https://us.i.posthog.com"}},"contextual":{"options":["claude","chatgpt","perplexity","copy","view"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"matillion","hasAudioNarration":false,"actualSubdomain":"matillion","customDomains":["docs.maia.ai"],"gitSource":{"type":"github","owner":"matillion","repo":"maia-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"DISABLED"},"CONTEXTUAL_FEEDBACK":{"status":"DISABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"DISABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af73146bd8b0362cded8904","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"default","tag":"Components","count":356},{"language":"default","tag":"Guides","count":210},{"language":"default","tag":"Connectors","count":188},{"language":"default","tag":"API Reference","count":128},{"language":"default","tag":"Endpoints","count":113},{"language":"default","tag":"Orchestration","count":94},{"language":"default","tag":"Admin","count":70},{"language":"default","tag":"Transformation","count":69},{"language":"default","tag":"Runners","count":51},{"language":"default","tag":"Streaming","count":34}],"searchSettings":{"showContentSnippets":false}},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"styles.css","content":"#navbar .bg-background-light,#navbar .bg-background-dark{background-color:#001f1d!important}#navbar a,#navbar button,#navbar span,#navbar p{color:white!important}#navbar svg{color:white!important;stroke:white!important}#navbar #topbar-cta-button a,#navbar #topbar-cta-button a span,#navbar #topbar-cta-button svg{color:#001f1d!important}#navbar #topbar-cta-button a{font-weight:600!important}:root:not(.dark) #search-bar-entry,:root:not(.dark) #nav-anchor,:root:not(.dark) #navbar .navbar-link,:root:not(.dark) .nav-anchor{background-color:#0a3d39!important;border-radius:9999px!important}#topbar-cta-button a span.bg-primary-dark{background:#ffc700!important;border-radius:9999px!important}#navbar svg.bg-gray-500{background-color:white!important}#navbar button.lg\\:hidden div.font-semibold{color:white!important}#navbar button.lg\\:hidden div.text-gray-500 svg{color:white!important;stroke:white!important}#navbar img.nav-logo{content:url('/images/maia-by-matillion-light.svg');height:50px!important;width:auto!important}#footer img.nav-logo{content:url('/images/maia-by-matillion-dark.svg');height:80px!important;width:auto!important}#pagination{display:none}#navigation-items>div{padding-bottom:4rem!important}#navbar a[data-active=\"true\"] div.h-px{height:4px!important;background-color:#ffc700!important;border-radius:9999px!important}[id^=\"headlessui-dialog-panel\"] .navbar-link a{color:white!important}[id^=\"headlessui-dialog-panel\"] nav{padding-top:2.5rem}.accordion{width:100%!important;overflow-x:auto!important}.accordion>div{padding-left:1.375rem!important;padding-right:0!important}.accordion>div[class*=\"overflow\"],.accordion>div>div[class*=\"overflow\"]{overflow:visible!important}@media (min-width: 1920px){body:has(#navbar.is-not-custom) #body-content{max-width:2000px!important}body:has(#navbar.is-not-custom) #content-container{max-width:1650px!important}body:has(#navbar.is-not-custom) #navbar .max-w-8xl{max-width:2000px!important}}body:has(#navbar.is-not-custom) #content{zoom:var(--maia-content-zoom, 100%)}body:has(#navbar.is-not-custom) #content-area>#content+div:has(>p+a){zoom:var(--maia-content-zoom, 100%)}#content-area>#content+div:has(>p+a)>p{font-size:1.5rem;line-height:2rem;font-weight:600;letter-spacing:normal;color:#101828;margin-bottom:0.5rem}.dark #content-area>#content+div:has(>p+a)>p{color:inherit}#content-area>#content+div:has(>p+a)>a{font-size:1rem;line-height:1.75rem}"},{"filePath":"new-features-blog/new-features-blog.css","content":".fos-background-container{position:fixed;top:0;left:0;height:100vh;width:100vw;background:#fff3d1;z-index:-1;background-size:cover}.fos-post-page-container{background-color:#fff;border-radius:20px;padding:20px!important}.fos-roadmap-page-container{background-color:#fff;border-radius:20px;width:95%}@media (min-width: 1024px){.fos-roadmap-page-container{width:70%;margin:0 auto}}.fos-changelog-page-container{background-color:#fff;border-radius:20px}.banner-title,.fos-header-banner-title{color:#00524E;font-size:4rem;font-weight:700;font-family:'Inter', sans-serif}.banner-subtitle,.fos-header-banner-subtitle{color:#001F1D;font-size:1.1487em;margin-top:0.5em;margin-bottom:2em}.fos-header-boards-trigger,.fos-header-roadmap-trigger,.fos-header-changelog-trigger{display:none}.fos-user-side-header{color:white;font-family:'Inter', sans-serif}.fos-header-container{background-color:#001f1d;box-shadow:0px 1px 13px #bfbfbf}.fos-header-boards-dropdown-content span{color:white}.fos-header-links-container{justify-content:center;gap:1em}.fos-header-link{color:white;font-size:14px!important;font-weight:bold;padding:10px 0}.fos-header-logo-container{display:flex}.fos-header-logo-image{width:100px}.fos-header-boards-link{color:white;font-size:16px;padding:10px 0;font-weight:bold}.fos-header-link-icon{color:white}"}],"page":{"pagePath":"docs/components/data-transfer","slug":"/docs/components/data-transfer","pageMetadata":{"title":"Data Transfer","description":null,"href":"/docs/components/data-transfer"},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];const requester_1=`target`;const label_1=`Target`;const requester_0=`data source`;const label_0=`Source`;const filetypes_1=`Attachment or Document`;const filetypes_0=`File or Paper`;const m_runner=`Maia runner`;const ComponentMetadata=({warehouses,unsupportedWarehouses=[],componentType,connectionInputs,connectionOutputs,driverVersion,driverVersionUrl})=>{const _components={a:`a`,..._provideComponents()};const allWarehouses=[...warehouses.map(w=>({name:w,supported:true})),...unsupportedWarehouses.map(w=>({name:w,supported:false}))];return _jsx(`div`,{style:{background:`var(--colors-background-light, #f9fafb)`,border:`1px solid var(--colors-border-default, #e5e7eb)`,borderRadius:`12px`,padding:`20px 28px`,marginBottom:`28px`,boxShadow:`0 1px 4px rgba(0,0,0,0.10)`},children:_jsx(`table`,{style:{width:`100%`,borderCollapse:`collapse`},children:_jsxs(`tbody`,{children:[_jsxs(`tr`,{children:[_jsx(`td`,{style:{fontWeight:`600`,paddingRight:`32px`,paddingBottom:`14px`,whiteSpace:`nowrap`,verticalAlign:`middle`,width:`180px`},children:`Project Availability`}),_jsx(`td`,{style:{paddingBottom:`14px`,verticalAlign:`middle`},children:_jsx(`div`,{style:{display:`flex`,flexWrap:`wrap`,gap:`8px`},children:allWarehouses.map((w,i)=>_jsxs(`span`,{style:{background:w.supported?`#dcfce7`:`#fee2e2`,color:w.supported?`#15803d`:`#b91c1c`,border:`1px solid ${w.supported?`#bbf7d0`:`#fca5a5`}`,borderRadius:`9999px`,padding:`3px 12px`,fontSize:`0.85rem`,fontWeight:`500`,whiteSpace:`nowrap`},children:[w.name,` `,w.supported?`✅`:`❌`]},i))})})]}),_jsxs(`tr`,{children:[_jsx(`td`,{style:{fontWeight:`600`,paddingRight:`32px`,paddingBottom:`14px`,whiteSpace:`nowrap`,verticalAlign:`middle`},children:`Component Type`}),_jsx(`td`,{style:{paddingBottom:`14px`,verticalAlign:`middle`},children:componentType})]}),_jsxs(`tr`,{children:[_jsx(`td`,{style:{fontWeight:`600`,paddingRight:`32px`,paddingBottom:`14px`,whiteSpace:`nowrap`,verticalAlign:`middle`},children:`Connection Inputs`}),_jsx(`td`,{style:{paddingBottom:`14px`,verticalAlign:`middle`},children:connectionInputs})]}),_jsxs(`tr`,{children:[_jsx(`td`,{style:{fontWeight:`600`,paddingRight:`32px`,paddingBottom:driverVersion?`14px`:`0`,whiteSpace:`nowrap`,verticalAlign:`middle`},children:`Connection Outputs`}),_jsx(`td`,{style:{paddingBottom:driverVersion?`14px`:`0`,verticalAlign:`middle`},children:connectionOutputs})]}),driverVersion\u0026\u0026_jsxs(`tr`,{children:[_jsx(`td`,{style:{fontWeight:`600`,paddingRight:`32px`,whiteSpace:`nowrap`,verticalAlign:`middle`},children:`Driver Version`}),_jsx(`td`,{style:{verticalAlign:`middle`},children:driverVersionUrl?_jsx(_components.a,{href:driverVersionUrl,target:`_blank`,rel:`noopener noreferrer`,children:driverVersion}):driverVersion})]})]})})})};function _createMdxContent(props){const _components={a:`a`,code:`code`,em:`em`,h5:`h5`,hr:`hr`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Note,ResponseField,Tab,Tabs,Warning,_MdxComponentBoundary}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!ResponseField)_missingMdxReference(`ResponseField`,true);if(!Tab)_missingMdxReference(`Tab`,true);if(!Tabs)_missingMdxReference(`Tabs`,true);if(!Warning)_missingMdxReference(`Warning`,true);if(!_MdxComponentBoundary)_missingMdxReference(`_MdxComponentBoundary`,true);return _jsxs(_Fragment,{children:[_jsx(_MdxComponentBoundary,{name:`ComponentMetadata`,children:_jsx(ComponentMetadata,{warehouses:[`Snowflake`,`Databricks`,`Amazon Redshift`,`Google BigQuery`],componentType:`Connector, Orchestration`,connectionInputs:`One`,connectionOutputs:`Unlimited`})}),`\n`,_jsx(_components.p,{children:`Data Transfer is an orchestration component that enables users to transfer files from a chosen source to a chosen target (destination).`}),`\n`,_jsx(_components.p,{children:`This component can use a number of common network protocols to transfer data to a variety of sources and supports transferring files of any type. This component copies, not moves, the target file. Setting up this component requires selecting a source type and a target type. The component’s other properties will change to reflect those choices.`}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(_components.a,{href:`/docs/guides/runner-overview`,children:m_runner}),` streams the file between source and target, holding only a small in-memory buffer at any time. The file is never stored on the `,m_runner,`.`]}),`\n`,_jsx(_components.p,{children:`Currently supported data sources include:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Azure Blob Storage`}),`\n`,_jsx(_components.li,{children:`Box`}),`\n`,_jsx(_components.li,{children:`Dropbox`}),`\n`,_jsx(_components.li,{children:`FTP`}),`\n`,_jsx(_components.li,{children:`Google Cloud Storage`}),`\n`,_jsx(_components.li,{children:`HTTP`}),`\n`,_jsx(_components.li,{children:`HTTPS`}),`\n`,_jsx(_components.li,{children:`Microsoft Exchange`}),`\n`,_jsx(_components.li,{children:`Microsoft SharePoint`}),`\n`,_jsx(_components.li,{children:`S3`}),`\n`,_jsx(_components.li,{children:`SFTP`}),`\n`,_jsx(_components.li,{children:`Windows Fileshare`}),`\n`]}),`\n`,_jsx(_components.p,{children:`Currently supported targets include:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Azure Blob Storage`}),`\n`,_jsx(_components.li,{children:`Google Cloud Storage`}),`\n`,_jsx(_components.li,{children:`S3`}),`\n`,_jsx(_components.li,{children:`SFTP`}),`\n`,_jsx(_components.li,{children:`Windows Fileshare`}),`\n`]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`The Data Transfer component does not currently support transferring files to cloud data platforms such as Snowflake or Databricks. However, you can use the Data Transfer component to transfer files to cloud storage locations (Amazon S3 or Azure Blob Storage), and then use the `,_jsx(_components.a,{href:`/docs/components/s3-load`,children:`S3 Load`}),` or `,_jsx(_components.a,{href:`/docs/components/azure-blob-storage-load`,children:`Azure Blob Storage Load`}),` components to load the files into your cloud data platform.`]})}),`\n`,_jsx(Note,{children:_jsx(_components.p,{children:`To ensure that instance credentials access is managed correctly at all times, we always advise that customers limit scopes (permissions) where applicable.`})}),`\n`,_jsx(_components.p,{children:`If the component requires access to a cloud provider (AWS, Azure, or Google Cloud), it will use credentials as follows:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`If using `,_jsx(_components.a,{href:`/docs/guides/runner-overview#matillion-full-saas`,children:`Full SaaS`}),`: The component will use the `,_jsx(_components.a,{href:`/docs/guides/cloud-credentials`,children:`cloud credentials`}),` associated with your environment to access resources.`]}),`\n`,_jsxs(_components.li,{children:[`If using `,_jsx(_components.a,{href:`/docs/guides/runner-overview#hybrid-saas`,children:`Hybrid SaaS`}),`: By default the component will inherit the agent’s execution role (service account role). However, if there are `,_jsx(_components.a,{href:`/docs/guides/cloud-credentials`,children:`cloud credentials`}),` associated with your environment, these will overwrite the role.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`3`,id:`including-credentials-in-urls`,children:`Including credentials in URLs`}),`\n`,_jsxs(_components.p,{children:[`Some sources and targets require you to configure a `,_jsx(_components.code,{children:`Source URL`}),` or `,_jsx(_components.code,{children:`Target URL`}),` to transfer data from or to the specified location. These URLs `,_jsx(_components.em,{children:`can`}),` contain your source or target username and password, as shown in the examples below, but this requires you to enter your password in plain text.`]}),`\n`,_jsxs(_components.p,{children:[`Instead, we recommend using the `,_jsx(_components.code,{children:`Source username`}),`, `,_jsx(_components.code,{children:`Source password`}),`, `,_jsx(_components.code,{children:`Target username`}),` and `,_jsx(_components.code,{children:`Target password`}),` properties to provide your credentials, because this allows you to provide your password as a `,_jsx(_components.a,{href:`/docs/guides/secrets-and-secret-definitions`,children:`secret definition`}),` stored in a secure location.`]}),`\n`,_jsxs(_components.p,{children:[`For example, if your source type is `,_jsx(_components.strong,{children:`HTTP`}),`, we don’t recommend including your username and password in the `,_jsx(_components.code,{children:`Source URL`}),`, e.g. `,_jsx(_components.code,{children:`http://user:password@www.example.com/products/list`}),`. Instead, use `,_jsx(_components.code,{children:`https://www.example.com/products/list`}),` as the source URL, then enter your username, and select a secret definition that represents your connection password.`]}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`properties`,children:`Properties`}),`\n`,_jsx(ResponseField,{name:`Name`,type:`string`,required:true,id:`param-name`,children:_jsx(_components.p,{children:`A human-readable name for the component.`})}),`\n`,_jsx(Heading,{level:`3`,id:`connect`,children:`Connect`}),`\n`,_jsx(ResponseField,{name:`Source type`,type:`drop-down`,required:true,id:`param-source-type`,children:_jsx(_components.p,{children:`Select the data source that contains the files you want to transfer. Use the tabs below to see the properties to configure for each source type.`})}),`\n`,_jsxs(Tabs,{children:[_jsxs(Tab,{title:`Azure Blob Storage`,id:`azure-blob-storage`,children:[_jsxs(Note,{children:[_jsx(_components.p,{children:`The service principal or identity that you use to connect to Azure must have the following permissions:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`Storage Account Contributor`}),` at storage account level.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`Storage Blob Data Contributor`}),` at storage account or container level.`]}),`\n`]}),_jsxs(_components.p,{children:[`No SAS tokens are required to connect to Azure Blob Storage. For more information, read `,_jsx(_components.a,{href:`/docs/guides/cloud-credentials#azure-storage`,children:`Cloud provider credentials`}),`.`]})]}),_jsxs(ResponseField,{name:`Blob location`,type:`file explorer`,required:true,id:`param-blob-location`,children:[_jsx(_components.p,{children:`Enter the URL that points to the source file you want to transfer.`}),_jsx(_components.p,{children:`Either use the file explorer to navigate to the file, or enter the URL into the path field at the top of the dialog. This is particularly useful if you want to use variables in the URL. Special characters used in this field must be URL-safe.`}),_jsx(_components.p,{children:`The URL should be in the following format:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`AZURE://\u003caccount>/\u003ccontainer>/\u003cpath>`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`Example with variables:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:\"AZURE://${jv_blobStorageAccount}/${jv_containerName}\"})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})})]})]}),_jsxs(Tab,{title:`Box`,id:`box`,children:[_jsxs(ResponseField,{name:`Authentication`,type:`drop-down`,required:true,id:`param-authentication`,children:[_jsx(_components.p,{children:`Choose your OAuth connection from the drop-down menu.`}),_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Manage`}),` to navigate to the `,_jsx(_components.strong,{children:`OAuth connections`}),` list to review and add OAuth connections. Read `,_jsx(_components.a,{href:`/docs/guides/connections#authenticate-an-oauth-connection`,children:`OAuth`}),` to learn how to create an OAuth connection.`]})]}),_jsx(ResponseField,{name:`File ID`,type:`string`,required:true,id:`param-file-id`,children:_jsx(_components.p,{children:`Enter the ID of the file you want to transfer. Each run of this component transfers one file. To transfer multiple files, run the component once for each file.`})})]}),_jsxs(Tab,{title:`Dropbox`,id:`dropbox`,children:[_jsxs(ResponseField,{name:`Authentication`,type:`drop-down`,required:true,id:`param-authentication-1`,children:[_jsx(_components.p,{children:`Choose your OAuth connection from the drop-down menu.`}),_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Manage`}),` to navigate to the `,_jsx(_components.strong,{children:`OAuth connections`}),` list to review and add OAuth connections. Read `,_jsx(_components.a,{href:`/docs/guides/connections#authenticate-an-oauth-connection`,children:`OAuth`}),` to learn how to create an OAuth connection.`]})]}),_jsx(ResponseField,{name:`File type`,type:`drop-down`,required:true,id:`param-file-type`,children:_jsxs(_components.p,{children:[`Select the type of file you want to transfer: `,filetypes_0,`.`]})}),_jsx(ResponseField,{name:`Path`,type:`string`,required:true,id:`param-path`,children:_jsx(_components.p,{children:`Enter the file path of the file you want to transfer.`})}),_jsxs(ResponseField,{name:`Download as ZIP`,type:`boolean`,required:true,id:`param-download-as-zip`,children:[_jsxs(_components.p,{children:[`Only visible if `,_jsx(_components.code,{children:`File type`}),` is `,_jsx(_components.strong,{children:`File`}),`.`]}),_jsxs(_components.p,{children:[`Select whether to download the file to transfer as a ZIP file. Default is `,_jsx(_components.strong,{children:`No`}),`.`]})]}),_jsxs(ResponseField,{name:`Download format`,type:`drop-down`,required:true,id:`param-download-format`,children:[_jsxs(_components.p,{children:[`Only visible if `,_jsx(_components.code,{children:`File type`}),` is `,_jsx(_components.strong,{children:`Paper`}),`.`]}),_jsxs(_components.p,{children:[`Select the format you want to download the file to transfer in. Default is `,_jsx(_components.strong,{children:`HTML`}),`.`]})]})]}),_jsxs(Tab,{title:`FTP`,id:`ftp`,children:[_jsxs(ResponseField,{name:`Source URL`,type:`string`,required:true,id:`param-source-url`,children:[_jsx(_components.p,{children:`Enter the URL, including full path and file name, that points to the source file. Special characters used in this field must be URL-safe.`}),_jsxs(_components.p,{children:[`We recommend using the `,_jsx(_components.code,{children:`Source username`}),` and `,_jsx(_components.code,{children:`Source password`}),` properties to provide credentials. For more information, see `,_jsx(_components.a,{href:`/docs/components/data-transfer#including-credentials-in-urls`,children:`Including credentials in URLs`}),`.`]}),_jsx(_components.p,{children:`The source URL should be in the following format:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`ftp://[username[:password]@]hostname[:port][path]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`Example:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`ftp://johndoe@example.com/home/johndoe/documents/report.txt`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})})]}),_jsx(ResponseField,{name:`Set home directory as root`,type:`boolean`,required:true,id:`param-set-home-directory-as-root`,children:_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Yes:`}),` URLs are relative to the user’s home directory.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`No:`}),` (Default) URLs are relative to the server root.`]}),`\n`]})}),_jsx(ResponseField,{name:`Source username`,type:`string`,id:`param-source-username`,children:_jsx(_components.p,{children:`Enter your URL connection username for the source. This property is optional—your username will only be used if the data source requests it.`})}),_jsxs(ResponseField,{name:`Source password`,type:`drop-down`,id:`param-source-password`,children:[_jsx(_components.p,{children:`Select the secret definition that represents your credentials for your chosen source.`}),_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Manage`}),` to navigate to the `,_jsx(_components.strong,{children:`Secret definitions`}),` list to review and add secret definitions. Read `,_jsx(_components.a,{href:`/docs/guides/secrets-and-secret-definitions`,children:`Secrets and secret definitions`}),` to learn how to create a secret definition.`]}),_jsx(_components.p,{children:`This property is optional—your password will only be used if the data source requests it.`})]}),_jsxs(Note,{children:[_jsxs(_components.p,{children:[`This option supports plain FTP only. It does not support FTPS (FTP Secure). An `,_jsx(_components.code,{children:`ftps://`}),` URL will not negotiate TLS—the scheme is ignored, and the connection is attempted as plain FTP. The `,_jsx(_components.strong,{children:`FTP`}),` source only supports plain, unencrypted FTP. If the FTP server requires TLS, the connection will fail.`]}),_jsxs(_components.p,{children:[`If you need an encrypted file transfer protocol, use `,_jsx(_components.strong,{children:`SFTP`}),` instead, which is fully supported.`]})]})]}),_jsx(Tab,{title:`Google Cloud Storage`,id:`google-cloud-storage`,children:_jsxs(ResponseField,{name:`Source URL`,type:`file explorer`,required:true,id:`param-source-url-1`,children:[_jsx(_components.p,{children:`Enter the URL that points to the source file.`}),_jsx(_components.p,{children:`Either use the file explorer to navigate to the file you want to transfer, or enter the URL into the path field at the top of the dialog. This is particularly useful if you want to use variables in the URL. Special characters used in this field must be URL-safe.`}),_jsx(_components.p,{children:`The source URL should be in the following format:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`GS://\u003cbucket>/\u003cfolder-path>`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`Example with variables:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:\"GS://${jv_gcsAccount}/${jv_folderName}\"})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})})]})}),_jsxs(Tab,{title:`HTTP`,id:`http`,children:[_jsxs(ResponseField,{name:`Source URL`,type:`string`,required:true,id:`param-source-url-2`,children:[_jsx(_components.p,{children:`Enter the URL, including full path and file name, that points to the source file. Special characters used in this field must be URL-safe.`}),_jsxs(_components.p,{children:[`We recommend using the `,_jsx(_components.code,{children:`Source username`}),` and `,_jsx(_components.code,{children:`Source password`}),` properties to provide credentials. For more information, see `,_jsx(_components.a,{href:`/docs/components/data-transfer#including-credentials-in-urls`,children:`Including credentials in URLs`}),`.`]}),_jsx(_components.p,{children:`The source URL should be in the following format:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`http://[username[:password]@]hostname[:port][absolute-path]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`Example:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`http://user:password@www.example.com/products/list`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})})]}),_jsx(ResponseField,{name:`Source username`,type:`string`,id:`param-source-username-1`,children:_jsx(_components.p,{children:`Enter your URL connection username for the source. This property is optional—your username will only be used if the data source requests it.`})}),_jsxs(ResponseField,{name:`Source password`,type:`drop-down`,id:`param-source-password-1`,children:[_jsx(_components.p,{children:`Select the secret definition that represents your credentials for your chosen source.`}),_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Manage`}),` to navigate to the `,_jsx(_components.strong,{children:`Secret definitions`}),` list to review and add secret definitions. Read `,_jsx(_components.a,{href:`/docs/guides/secrets-and-secret-definitions`,children:`Secrets and secret definitions`}),` to learn how to create a secret definition.`]}),_jsx(_components.p,{children:`This property is optional—your password will only be used if the data source requests it.`})]})]}),_jsxs(Tab,{title:`HTTPS`,id:`https`,children:[_jsxs(ResponseField,{name:`Source URL`,type:`string`,required:true,id:`param-source-url-3`,children:[_jsx(_components.p,{children:`Enter the URL, including full path and file name, that points to the source file. Special characters used in this field must be URL-safe.`}),_jsxs(_components.p,{children:[`We recommend using the `,_jsx(_components.code,{children:`Source username`}),` and `,_jsx(_components.code,{children:`Source password`}),` properties to provide credentials. For more information, see `,_jsx(_components.a,{href:`/docs/components/data-transfer#including-credentials-in-urls`,children:`Including credentials in URLs`}),`.`]}),_jsx(_components.p,{children:`The source URL should be in the following format:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`https://[username[:password]@]hostname[:port][absolute-path]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`Example:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`https://user:password@www.example.com/products/list`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})})]}),_jsx(ResponseField,{name:`Perform certificate validation`,type:`drop-down`,required:true,id:`param-perform-certificate-validation`,children:_jsxs(_components.p,{children:[`Select whether to check that the SSL certificate for the host is valid before fetching your file. Default is `,_jsx(_components.strong,{children:`No`}),`.`]})}),_jsx(ResponseField,{name:`Source username`,type:`string`,id:`param-source-username-2`,children:_jsx(_components.p,{children:`Enter your URL connection username for the source. This property is optional—your username will only be used if the data source requests it.`})}),_jsxs(ResponseField,{name:`Source password`,type:`drop-down`,id:`param-source-password-2`,children:[_jsx(_components.p,{children:`Select the secret definition that represents your credentials for your chosen source.`}),_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Manage`}),` to navigate to the `,_jsx(_components.strong,{children:`Secret definitions`}),` list to review and add secret definitions. Read `,_jsx(_components.a,{href:`/docs/guides/secrets-and-secret-definitions`,children:`Secrets and secret definitions`}),` to learn how to create a secret definition.`]}),_jsx(_components.p,{children:`This property is optional—your password will only be used if the data source requests it.`})]})]}),_jsxs(Tab,{title:`Microsoft Exchange`,id:`microsoft-exchange`,children:[_jsx(_components.p,{children:`The Microsoft Exchange source accepts the following connection types:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`OAuth 2.0 Authorization Code:`}),` Uses the Matillion-managed app. A user signs in to authorize access.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`OAuth 2.0 Client Credentials:`}),` Uses your own Microsoft Entra app registration. App-only, with no user sign-in. The `,m_runner,` requests the token from your tenant.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`OAuth 2.0 Authorization Code (Bring Your Own App):`}),` Uses your own Microsoft Entra app registration. A user signs in with your app, and the `,m_runner,` refreshes the token directly against your tenant.`]}),`\n`]}),_jsxs(_components.p,{children:[`For setup steps, read `,_jsx(_components.a,{href:`/docs/guides/connections#microsoft-exchange`,children:`Microsoft Exchange`}),`.`]}),_jsxs(ResponseField,{name:`Authentication`,type:`drop-down`,required:true,id:`param-authentication-2`,children:[_jsx(_components.p,{children:`Choose your OAuth connection from the drop-down menu.`}),_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Manage`}),` to navigate to the `,_jsx(_components.strong,{children:`OAuth connections`}),` list to review and add OAuth connections. Read `,_jsx(_components.a,{href:`/docs/guides/connections#authenticate-an-oauth-connection`,children:`OAuth`}),` to learn how to create an OAuth connection.`]})]}),_jsxs(ResponseField,{name:`Mailbox`,type:`string`,id:`param-mailbox`,children:[_jsxs(_components.p,{children:[`The mailbox to retrieve attachments from, for example `,_jsx(_components.code,{children:`user@example.com`}),`. Requests are addressed to this mailbox (Microsoft Graph `,_jsx(_components.code,{children:`/users/\\\\{mailbox\\\\}/...`}),`).`]}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`This property is required with an `,_jsx(_components.strong,{children:`OAuth 2.0 Client Credentials`}),` connection, because an app-only token has no signed-in user.`]}),`\n`,_jsx(_components.li,{children:`With the other connection types, leave this property empty to read the signed-in user’s own mailbox. Enter the address of a shared mailbox to read that mailbox, if the signed-in user has access to it.`}),`\n`]})]}),_jsxs(ResponseField,{name:`Attachment source`,type:`drop-down`,required:true,id:`param-attachment-source`,children:[_jsx(_components.p,{children:`Select the type of Exchange item to retrieve attachments from:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Message`}),`: Retrieves attachments from an email message.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Event`}),`: Retrieves attachments from a calendar event.`]}),`\n`]}),_jsx(Note,{children:_jsxs(_components.p,{children:[`With an `,_jsx(_components.strong,{children:`OAuth 2.0 Client Credentials`}),` connection that only has the `,_jsx(_components.code,{children:`Mail.Read`}),` application permission, `,_jsx(_components.strong,{children:`Event`}),` isn’t available. Retrieving event attachments also needs the `,_jsx(_components.code,{children:`Calendars.Read`}),` application permission.`]})})]}),_jsxs(ResponseField,{name:`Source ID`,type:`string`,required:true,id:`param-source-id`,children:[_jsx(_components.p,{children:`Enter the ID of the Exchange item to retrieve attachments from:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`If `,_jsx(_components.code,{children:`Attachment source`}),` is `,_jsx(_components.strong,{children:`Message`}),`, enter a valid email message ID.`]}),`\n`,_jsxs(_components.li,{children:[`If `,_jsx(_components.code,{children:`Attachment source`}),` is `,_jsx(_components.strong,{children:`Event`}),`, enter a valid calendar event ID.`]}),`\n`]})]}),_jsx(ResponseField,{name:`Attachment ID`,type:`string`,required:true,id:`param-attachment-id`,children:_jsxs(_components.p,{children:[`Enter the ID of the attachment to retrieve from the email message or calendar event identified in `,_jsx(_components.code,{children:`Source ID`}),`.`]})}),_jsx(_components.h5,{children:`Troubleshooting Microsoft Exchange errors`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`403 Forbidden:`}),` With an `,_jsx(_components.strong,{children:`OAuth 2.0 Client Credentials`}),` connection, this usually means either the mailbox is outside your app’s scope in Exchange role-based access control (RBAC) for applications, or your app doesn’t have admin-consented `,_jsx(_components.code,{children:`Mail.Read`}),` permission.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`404 Not Found:`}),` This usually means the `,_jsx(_components.strong,{children:`Mailbox`}),`, `,_jsx(_components.strong,{children:`Source ID`}),`, or `,_jsx(_components.strong,{children:`Attachment ID`}),` is wrong.`]}),`\n`]}),_jsx(_components.h5,{children:`Network access for Microsoft Exchange`}),_jsxs(_components.p,{children:[`With a connection that uses your own Microsoft Entra app, the `,m_runner,` calls `,_jsx(_components.code,{children:`login.microsoftonline.com`}),` (token requests) and `,_jsx(_components.code,{children:`graph.microsoft.com`}),` (data). For more information, read `,_jsx(_components.a,{href:`/docs/security/network-access-and-ip-allowlist-requirements`,children:`Network access and IP allowlist requirements`}),`.`]})]}),_jsxs(Tab,{title:`Microsoft SharePoint`,id:`microsoft-sharepoint`,children:[_jsx(Warning,{children:_jsxs(_components.p,{children:[`Microsoft removed NTLM authentication support on `,_jsx(_components.strong,{children:`January 31, 2026`}),` and Basic authentication support on `,_jsx(_components.strong,{children:`May 1, 2026`}),` for SharePoint Online. If you’re connecting to SharePoint Online via SOAP, you must switch to REST with Azure AD OAuth immediately. SOAP authentication remains supported for SharePoint On-Premise. For more information, see the `,_jsx(_components.a,{href:`https://cdn.cdata.com/help/RSM/jdbc/pg_changelog.htm`,children:`CData driver changelog`}),`.`]})}),_jsx(ResponseField,{name:`Service type`,type:`drop-down`,required:true,id:`param-service-type`,children:_jsxs(_components.p,{children:[`Select `,_jsx(_components.strong,{children:`REST`}),` to connect to Microsoft SharePoint using the REST API.`]})}),_jsxs(ResponseField,{name:`Authentication`,type:`drop-down`,required:true,id:`param-authentication-3`,children:[_jsx(_components.p,{children:`Choose your OAuth connection from the drop-down menu.`}),_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Manage`}),` to navigate to the `,_jsx(_components.strong,{children:`OAuth connections`}),` list to review and add OAuth connections. Read `,_jsx(_components.a,{href:`/docs/guides/connections#authenticate-an-oauth-connection`,children:`OAuth`}),` to learn how to create an OAuth connection.`]})]}),_jsxs(ResponseField,{name:`Connection options`,type:`column editor`,id:`param-connection-options`,children:[_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Parameter:`}),` A JDBC parameter supported by the database driver. The available parameters are explained in the data model. Manual setup isn’t usually required, since sensible defaults are assumed.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Value:`}),` A value for the given parameter.`]}),`\n`]}),_jsx(Note,{children:_jsxs(_components.p,{children:[`To transfer files from subsites, in the `,_jsx(_components.code,{children:`Connection Options`}),` property, enter `,_jsx(_components.code,{children:`URL`}),` as a parameter, with your site URL as the value. This must be the full URL, e.g. `,_jsx(_components.code,{children:`https://companyname.sharepoint.com/sitename`}),` (for classic/root sites) or `,_jsx(_components.code,{children:`https://companyname.sharepoint.com/sites/sitename`}),` (for modern site collections).`]})})]}),_jsx(ResponseField,{name:`File type`,type:`drop-down`,required:true,id:`param-file-type-1`,children:_jsxs(_components.p,{children:[`Select the type of file you want to transfer: `,filetypes_1,`.`]})}),_jsxs(ResponseField,{name:`Library`,type:`drop-down`,required:true,id:`param-library`,children:[_jsxs(_components.p,{children:[`Only visible if `,_jsx(_components.code,{children:`File type`}),` is `,_jsx(_components.strong,{children:`Document`}),`.`]}),_jsx(_components.p,{children:`Select the SharePoint library that contains the file you want to transfer. The drop-down lists libraries in your SharePoint instance.`}),_jsxs(_components.p,{children:[`For more information, read `,_jsx(_components.a,{href:`https://support.microsoft.com/en-us/office/introduction-to-libraries-7d4221d9-8fb9-40d5-8441-2374c84b5e26?ui=en-us\u0026rs=en-us\u0026ad=us`,children:`Introduction to libraries`}),`.`]})]}),_jsx(ResponseField,{name:`File URL`,type:`string`,required:true,id:`param-file-url`,children:_jsxs(_components.p,{children:[`Enter the URL that points to the file you want to transfer. This must be the `,_jsx(_components.strong,{children:`full DNS`}),` name and path for the file, e.g. `,_jsx(_components.code,{children:`https://companyname.sharepoint.com/sitename/path/to/file/file.ext`}),` or `,_jsx(_components.code,{children:`https://companyname.sharepoint.com/sites/sitename/path/to/file/file.ext`}),`.`]})})]}),_jsx(Tab,{title:`S3`,id:`s3`,children:_jsxs(ResponseField,{name:`Source URL`,type:`file explorer`,required:true,id:`param-source-url-4`,children:[_jsx(_components.p,{children:`Enter the URL that points to the source file.`}),_jsx(_components.p,{children:`Either use the file explorer to navigate to the file you want to transfer, or enter the URL into the path field at the top of the dialog. This is particularly useful if you want to use variables in the URL. Special characters used in this field must be URL-safe.`}),_jsx(_components.p,{children:`The source URL should be in the following format:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`S3://\u003cbucket>/\u003cfolder-path>/\u003cfile>`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`Example with variables:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:\"S3://${jv_bucketName}/${jv_folderName}/report.txt\"})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})})]})}),_jsxs(Tab,{title:`SFTP`,id:`sftp`,children:[_jsxs(ResponseField,{name:`Source URL`,type:`string`,required:true,id:`param-source-url-5`,children:[_jsx(_components.p,{children:`Enter the URL, including full path and file name, that points to the source file. Special characters used in this field must be URL-safe.`}),_jsxs(_components.p,{children:[`We recommend using the `,_jsx(_components.code,{children:`Source username`}),` and `,_jsx(_components.code,{children:`Source password`}),` properties to provide credentials. For more information, see `,_jsx(_components.a,{href:`/docs/components/data-transfer#including-credentials-in-urls`,children:`Including credentials in URLs`}),`.`]}),_jsx(_components.p,{children:`The source URL should be in the following format:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`sftp://[username[:password]@]hostname[:port][path]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`Example:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`sftp://johndoe@example.com/home/johndoe/documents/report.txt`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})})]}),_jsx(ResponseField,{name:`Set home directory as root`,type:`boolean`,required:true,id:`param-set-home-directory-as-root-1`,children:_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Yes:`}),` URLs are relative to the user’s home directory.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`No:`}),` (Default) URLs are relative to the server root.`]}),`\n`]})}),_jsx(ResponseField,{name:`Source username`,type:`string`,id:`param-source-username-3`,children:_jsx(_components.p,{children:`Enter your URL connection username for the source. This property is optional—your username will only be used if the data source requests it.`})}),_jsxs(ResponseField,{name:`Source password`,type:`drop-down`,id:`param-source-password-3`,children:[_jsx(_components.p,{children:`Select the secret definition that represents your credentials for your chosen source.`}),_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Manage`}),` to navigate to the `,_jsx(_components.strong,{children:`Secret definitions`}),` list to review and add secret definitions. Read `,_jsx(_components.a,{href:`/docs/guides/secrets-and-secret-definitions`,children:`Secrets and secret definitions`}),` to learn how to create a secret definition.`]}),_jsx(_components.p,{children:`This property is optional—your password will only be used if the data source requests it.`})]}),_jsxs(ResponseField,{name:`Source SFTP key`,type:`drop-down`,id:`param-source-sftp-key`,children:[_jsx(_components.p,{children:`Select the secret definition that represents your SFTP private key.`}),_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Manage`}),` to navigate to the `,_jsx(_components.strong,{children:`Secret definitions`}),` list to review and add secret definitions. Read `,_jsx(_components.a,{href:`/docs/guides/secrets-and-secret-definitions`,children:`Secrets and secret definitions`}),` to learn how to create a secret definition.`]}),_jsxs(_components.p,{children:[`This property is optional—your SFTP private key will only be used if the `,requester_0,` requests it.`]}),_jsxs(Note,{children:[_jsxs(_components.p,{children:[`Your private key must be in OpenSSH or PEM (PKCS#1 or PKCS#8) format, and one of the following types: `,_jsx(_components.code,{children:`RSA`}),`, `,_jsx(_components.code,{children:`Ed25519`}),`, `,_jsx(_components.code,{children:`ECDSA`}),` (`,_jsx(_components.code,{children:`nistp256`}),`–`,_jsx(_components.code,{children:`nistp521`}),`), or `,_jsx(_components.code,{children:`DSA`}),`.`]}),_jsxs(_components.p,{children:[`By default, the key must be encrypted using one of the following algorithms: `,_jsx(_components.code,{children:`ssh-ed25519`}),`, `,_jsx(_components.code,{children:`ecdsa-sha2-nistp256`}),`, `,_jsx(_components.code,{children:`ecdsa-sha2-nistp384`}),`, `,_jsx(_components.code,{children:`ecdsa-sha2-nistp521`}),`, `,_jsx(_components.code,{children:`rsa-sha2-512`}),`, or `,_jsx(_components.code,{children:`rsa-sha2-256`}),`. A `,_jsx(_components.code,{children:`DSA`}),` key or a legacy `,_jsx(_components.code,{children:`ssh-rsa`}),` (SHA-1) key isn’t accepted unless you add it to the algorithm list in the `,_jsxs(`code`,{children:[label_0,` SFTP config`]}),` property, for example:`]}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`PubkeyAcceptedAlgorithms=ssh-ed25519,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,rsa-sha2-512,rsa-sha2-256,ssh-rsa,ssh-dss`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`Passphrase-protected private keys aren’t supported. Remove the passphrase before use:`}),_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`ssh-keygen -p -N `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` -f YOUR_PRIVATE_KEY`})]}),`\n`]})})}),_jsx(_components.p,{children:`Paste the complete key, including its header and footer lines, and keep its original line breaks. A key flattened onto a single line causes an “invalid private key” error.`}),_jsxs(_components.p,{children:[`In a `,_jsx(_components.a,{href:`/docs/guides/runner-overview#matillion-fully-managed-vs-hybrid-cloud`,children:`Hybrid SaaS`}),` configuration, you need to manually convert the private key into a format that allows it to be stored in your AWS Secrets Manager. You can do this with the following command:`]}),_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`ssh-keygen -p -f YOUR_PRIVATE_KEY -m pem`})}),`\n`]})})})]})]}),_jsxs(ResponseField,{name:`Source SFTP config`,type:`text editor`,id:`param-source-sftp-config`,children:[_jsx(_components.p,{children:`Specify custom SFTP configurations using key/value pairs. Enter each key/value pair on a new line. These configurations override standard SFTP behavior, enabling greater compatibility with different server security policies. These configurations only apply to the currently selected Data Transfer component. If you have multiple Data Transfer components in your pipeline, you must configure each one individually.`}),_jsxs(_components.p,{children:[`For a list of all available keys, read the list of properties `,_jsx(_components.a,{href:`https://github.com/mwiede/jsch`,children:`here`}),`.`]}),_jsxs(_components.p,{children:[`When using the `,_jsx(_components.code,{children:`kex`}),` key to define the key exchange algorithms to use, the only supported encryption algorithms are `,_jsx(_components.code,{children:`ssh-ed25519`}),`, `,_jsx(_components.code,{children:`ecdsa-sha2-nistp256`}),`, `,_jsx(_components.code,{children:`ecdsa-sha2-nistp384`}),`, `,_jsx(_components.code,{children:`ecdsa-sha2-nistp521`}),`, `,_jsx(_components.code,{children:`rsa-sha2-512`}),`, and `,_jsx(_components.code,{children:`rsa-sha2-256`}),`.`]}),_jsxs(_components.p,{children:[`To use variables in this field, type the name of the variable prefixed by the dollar symbol and surrounded by { } brackets, as follows: `,_jsx(_components.code,{children:\"${variable}\"}),`. Once you type `,_jsx(_components.code,{children:\"${\"}),`, a drop-down list of autocompleted suggested variables will appear. This list updates as you type; for example, if you type `,_jsx(_components.code,{children:\"${date\"}),`, functions and variables containing `,_jsx(_components.code,{children:`date`}),` will be listed.`]})]})]}),_jsxs(Tab,{title:`Windows Fileshare`,id:`windows-fileshare`,children:[_jsxs(Note,{children:[_jsxs(_components.p,{children:[`When `,_jsx(_components.code,{children:`Source type`}),` is `,_jsx(_components.strong,{children:`Windows Fileshare`}),`:`]}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`The Data Transfer component uses the SMB2 protocol exclusively. SMB1 is not supported.`}),`\n`,_jsxs(_components.li,{children:[`The Data Transfer component uses TCP port `,_jsx(_components.code,{children:`445`}),` by default if no port is explicitly specified.`]}),`\n`,_jsxs(_components.li,{children:[`Source credentials (domain, username, and password) are optional. The domain, username, and password must be provided as separate fields—do not use the `,_jsx(_components.code,{children:`domain\\\\username`}),` format in the username field.`]}),`\n`]})]}),_jsxs(ResponseField,{name:`Source URL`,type:`string`,required:true,id:`param-source-url-6`,children:[_jsx(_components.p,{children:`Enter the URL, including full path and file name, that points to the source file. Special characters used in this field must be URL-safe.`}),_jsxs(_components.p,{children:[`We recommend using the `,_jsx(_components.code,{children:`Source username`}),` and `,_jsx(_components.code,{children:`Source password`}),` properties to provide credentials. For more information, see `,_jsx(_components.a,{href:`#including-credentials-in-urls`,children:`Including credentials in URLs`}),`.`]}),_jsx(_components.p,{children:`The source URL should be in the following format if possible:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`smb://[[authdomain;]user@]host[:port][/share[/dirpath][/name]][?context]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`This source also accepts other methods such as HTTP and HTTPS.`}),_jsx(_components.p,{children:`Examples:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`smb://mydomain;jdoe@fileserver01/documents/projects/mydata`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`http://11.22.3.4/share5/mydata.txt`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})})]}),_jsx(ResponseField,{name:`Source domain`,type:`string`,id:`param-source-domain`,children:_jsx(_components.p,{children:`Enter the domain that the file to transfer is located on.`})}),_jsx(ResponseField,{name:`Source username`,type:`string`,id:`param-source-username-4`,children:_jsx(_components.p,{children:`Enter your URL connection username for the source. This property is optional—your username will only be used if the data source requests it.`})}),_jsxs(ResponseField,{name:`Source password`,type:`drop-down`,id:`param-source-password-4`,children:[_jsx(_components.p,{children:`Select the secret definition that represents your credentials for your chosen source.`}),_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Manage`}),` to navigate to the `,_jsx(_components.strong,{children:`Secret definitions`}),` list to review and add secret definitions. Read `,_jsx(_components.a,{href:`/docs/guides/secrets-and-secret-definitions`,children:`Secrets and secret definitions`}),` to learn how to create a secret definition.`]}),_jsx(_components.p,{children:`This property is optional—your password will only be used if the data source requests it.`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`configure`,children:`Configure`}),`\n`,_jsx(ResponseField,{name:`Unpack ZIP file`,type:`boolean`,required:true,id:`param-unpack-zip-file`,children:_jsxs(_components.p,{children:[`Select `,_jsx(_components.strong,{children:`Yes`}),` if the source data is a ZIP file that you want to unpack before being transferred. Default is `,_jsx(_components.strong,{children:`No`}),`.`]})}),`\n`,_jsx(ResponseField,{name:`Gzip data`,type:`boolean`,required:true,id:`param-gzip-data`,children:_jsxs(_components.p,{children:[`Select `,_jsx(_components.strong,{children:`Yes`}),` to gzip the transferred data when it arrives at the target. Default is `,_jsx(_components.strong,{children:`No`}),`.`]})}),`\n`,_jsx(ResponseField,{name:`Target object name`,type:`string`,required:true,id:`param-target-object-name`,children:_jsx(_components.p,{children:`Enter a name for the new file when it is transferred to your target location.`})}),`\n`,_jsx(Heading,{level:`3`,id:`destination`,children:`Destination`}),`\n`,_jsx(ResponseField,{name:`Target type`,type:`drop-down`,required:true,id:`param-target-type`,children:_jsx(_components.p,{children:`Select the target location to transfer your files to. Use the tabs below to see the properties to configure for each target type.`})}),`\n`,_jsxs(Tabs,{children:[_jsxs(Tab,{title:`Azure Blob Storage`,id:`azure-blob-storage-2`,children:[_jsxs(Note,{children:[_jsx(_components.p,{children:`The service principal or identity that you use to connect to Azure must have the following permissions:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`Storage Account Contributor`}),` at storage account level.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`Storage Blob Data Contributor`}),` at storage account or container level.`]}),`\n`]}),_jsxs(_components.p,{children:[`No SAS tokens are required to connect to Azure Blob Storage. For more information, read `,_jsx(_components.a,{href:`/docs/guides/cloud-credentials#azure-storage`,children:`Cloud provider credentials`}),`.`]})]}),_jsxs(ResponseField,{name:`Blob location`,type:`file explorer`,required:true,id:`param-blob-location-1`,children:[_jsx(_components.p,{children:`Enter the URL that points to the location you want to transfer the file to.`}),_jsx(_components.p,{children:`Either use the file explorer to navigate to the location for the file, or enter the URL into the path field at the top of the dialog. This is particularly useful if you want to use variables in the URL. Special characters used in this field must be URL-safe.`}),_jsx(_components.p,{children:`The URL should be in the following format:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`AZURE://\u003caccount>/\u003ccontainer>/\u003cpath>`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`Example with variables:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:\"AZURE://${jv_blobStorageAccount}/${jv_containerName}\"})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})})]})]}),_jsx(Tab,{title:`Google Cloud Storage`,id:`google-cloud-storage-2`,children:_jsxs(ResponseField,{name:`Target URL`,type:`file explorer`,required:true,id:`param-target-url`,children:[_jsx(_components.p,{children:`Enter the URL that points to the location to transfer your file to.`}),_jsx(_components.p,{children:`Either use the file explorer to navigate to the location to transfer the file to, or enter the URL into the path field at the top of the dialog. This is particularly useful if you want to use variables in the URL. Special characters used in this field must be URL-safe.`}),_jsx(_components.p,{children:`The target URL should be in the following format:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`GS://\u003cbucket>/\u003cfolder-path>`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`Example with variables:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:\"GS://${jv_gcsAccount}/${jv_folderName}\"})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})})]})}),_jsxs(Tab,{title:`S3`,id:`s3-2`,children:[_jsxs(ResponseField,{name:`Target URL`,type:`file explorer`,required:true,id:`param-target-url-1`,children:[_jsx(_components.p,{children:`Enter the URL that points to the location to transfer your file to.`}),_jsx(_components.p,{children:`Either use the file explorer to navigate to the location to transfer the file to, or enter the URL into the path field at the top of the dialog. This is particularly useful if you want to use variables in the URL. Special characters used in this field must be URL-safe.`}),_jsx(_components.p,{children:`The target URL should be in the following format:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`S3://\u003cbucket>/\u003cfolder-path>`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`Example with variables:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:\"S3://${jv_bucketName}/${jv_folderName}\"})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})})]}),_jsx(ResponseField,{name:`Access control list options`,type:`drop-down`,id:`param-access-control-list-options`,children:_jsxs(_components.p,{children:[`If required, select ACL settings to apply to the transferred file. If you do not select any ACL settings, any ACL settings you currently have applied will be left unchanged. For more information about the available options, read the `,_jsx(_components.a,{href:`https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#canned-acl`,children:`Amazon S3 canned ACLs list`}),`.`]})}),_jsxs(ResponseField,{name:`Encryption`,type:`drop-down`,required:true,id:`param-encryption`,children:[_jsxs(_components.p,{children:[`Select how to encrypt the transferred file at the location specified in `,_jsx(_components.code,{children:`Target URL`}),`:`]}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`None:`}),` (Default) Do not encrypt the data.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`SSE KMS:`}),` Encrypt the data according to a key stored on KMS. For more information, read `,_jsx(_components.a,{href:`https://aws.amazon.com/kms/`,children:`AWS Key Management Service`}),`.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`SSE S3:`}),` Encrypt the data according to a key stored on an S3 bucket. For more information, read `,_jsx(_components.a,{href:`https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingServerSideEncryption.html`,children:`Using server-side encryption with Amazon S3-managed encryption keys [SSE-S3]`}),`.`]}),`\n`]})]}),_jsxs(ResponseField,{name:`KMS key ID`,type:`drop-down`,required:true,id:`param-kms-key-id`,children:[_jsxs(_components.p,{children:[`Only visible if `,_jsx(_components.code,{children:`Encryption`}),` is `,_jsx(_components.strong,{children:`SSE KMS`}),`.`]}),_jsx(_components.p,{children:`Select the ID of the KMS encryption key you want to use to encrypt the data.`})]})]}),_jsxs(Tab,{title:`SFTP`,id:`sftp-2`,children:[_jsxs(ResponseField,{name:`Target URL`,type:`string`,required:true,id:`param-target-url-2`,children:[_jsx(_components.p,{children:`Enter the URL that points to the folder to transfer your file to. Special characters used in this field must be URL-safe.`}),_jsxs(_components.p,{children:[`We recommend using the `,_jsx(_components.code,{children:`Target username`}),` and `,_jsx(_components.code,{children:`Target password`}),` properties to provide credentials. For more information, see `,_jsx(_components.a,{href:`/docs/components/data-transfer#including-credentials-in-urls`,children:`Including credentials in URLs`}),`.`]}),_jsx(_components.p,{children:`If the folders in your target path don’t exist, the Data Transfer component creates them automatically.`}),_jsx(_components.p,{children:`The target URL should be in the following format:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`sftp://[username[:password]@]hostname[:port][path]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`Example:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`sftp://johndoe@example.com/home/johndoe/documents/`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})})]}),_jsx(ResponseField,{name:`Set home directory as root`,type:`boolean`,required:true,id:`param-set-home-directory-as-root-2`,children:_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Yes:`}),` URLs are relative to the user’s home directory.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`No:`}),` (Default) URLs are relative to the server root.`]}),`\n`]})}),_jsx(ResponseField,{name:`Target username`,type:`string`,id:`param-target-username`,children:_jsx(_components.p,{children:`Enter your URL connection username for the target. This property is optional—your username will only be used if the target requests it.`})}),_jsxs(ResponseField,{name:`Target password`,type:`drop-down`,id:`param-target-password`,children:[_jsx(_components.p,{children:`Select the secret definition that represents your credentials for your chosen target.`}),_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Manage`}),` to navigate to the `,_jsx(_components.strong,{children:`Secret definitions`}),` list to review and add secret definitions. Read `,_jsx(_components.a,{href:`/docs/guides/secrets-and-secret-definitions`,children:`Secrets and secret definitions`}),` to learn how to create a secret definition.`]}),_jsx(_components.p,{children:`This property is optional—your password will only be used if the target requests it.`})]}),_jsxs(ResponseField,{name:`Target SFTP key`,type:`drop-down`,id:`param-target-sftp-key`,children:[_jsx(_components.p,{children:`Select the secret definition that represents your SFTP private key.`}),_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Manage`}),` to navigate to the `,_jsx(_components.strong,{children:`Secret definitions`}),` list to review and add secret definitions. Read `,_jsx(_components.a,{href:`/docs/guides/secrets-and-secret-definitions`,children:`Secrets and secret definitions`}),` to learn how to create a secret definition.`]}),_jsxs(_components.p,{children:[`This property is optional—your SFTP private key will only be used if the `,requester_1,` requests it.`]}),_jsxs(Note,{children:[_jsxs(_components.p,{children:[`Your private key must be in OpenSSH or PEM (PKCS#1 or PKCS#8) format, and one of the following types: `,_jsx(_components.code,{children:`RSA`}),`, `,_jsx(_components.code,{children:`Ed25519`}),`, `,_jsx(_components.code,{children:`ECDSA`}),` (`,_jsx(_components.code,{children:`nistp256`}),`–`,_jsx(_components.code,{children:`nistp521`}),`), or `,_jsx(_components.code,{children:`DSA`}),`.`]}),_jsxs(_components.p,{children:[`By default, the key must be encrypted using one of the following algorithms: `,_jsx(_components.code,{children:`ssh-ed25519`}),`, `,_jsx(_components.code,{children:`ecdsa-sha2-nistp256`}),`, `,_jsx(_components.code,{children:`ecdsa-sha2-nistp384`}),`, `,_jsx(_components.code,{children:`ecdsa-sha2-nistp521`}),`, `,_jsx(_components.code,{children:`rsa-sha2-512`}),`, or `,_jsx(_components.code,{children:`rsa-sha2-256`}),`. A `,_jsx(_components.code,{children:`DSA`}),` key or a legacy `,_jsx(_components.code,{children:`ssh-rsa`}),` (SHA-1) key isn’t accepted unless you add it to the algorithm list in the `,_jsxs(`code`,{children:[label_1,` SFTP config`]}),` property, for example:`]}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`PubkeyAcceptedAlgorithms=ssh-ed25519,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,rsa-sha2-512,rsa-sha2-256,ssh-rsa,ssh-dss`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`Passphrase-protected private keys aren’t supported. Remove the passphrase before use:`}),_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`ssh-keygen -p -N `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` -f YOUR_PRIVATE_KEY`})]}),`\n`]})})}),_jsx(_components.p,{children:`Paste the complete key, including its header and footer lines, and keep its original line breaks. A key flattened onto a single line causes an “invalid private key” error.`}),_jsxs(_components.p,{children:[`In a `,_jsx(_components.a,{href:`/docs/guides/runner-overview#matillion-fully-managed-vs-hybrid-cloud`,children:`Hybrid SaaS`}),` configuration, you need to manually convert the private key into a format that allows it to be stored in your AWS Secrets Manager. You can do this with the following command:`]}),_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`ssh-keygen -p -f YOUR_PRIVATE_KEY -m pem`})}),`\n`]})})})]})]}),_jsxs(ResponseField,{name:`Target SFTP config`,type:`text editor`,id:`param-target-sftp-config`,children:[_jsx(_components.p,{children:`Specify custom SFTP configurations using key/value pairs. Enter each key/value pair on a new line. These configurations override standard SFTP behavior, enabling greater compatibility with different server security policies. These configurations only apply to the currently selected Data Transfer component. If you have multiple Data Transfer components in your pipeline, you must configure each one individually.`}),_jsxs(_components.p,{children:[`For a list of all available keys, read the list of properties `,_jsx(_components.a,{href:`https://github.com/mwiede/jsch`,children:`here`}),`.`]}),_jsxs(_components.p,{children:[`When using the `,_jsx(_components.code,{children:`kex`}),` key to define the key exchange algorithms to use, the only supported encryption algorithms are `,_jsx(_components.code,{children:`ssh-ed25519`}),`, `,_jsx(_components.code,{children:`ecdsa-sha2-nistp256`}),`, `,_jsx(_components.code,{children:`ecdsa-sha2-nistp384`}),`, `,_jsx(_components.code,{children:`ecdsa-sha2-nistp521`}),`, `,_jsx(_components.code,{children:`rsa-sha2-512`}),`, and `,_jsx(_components.code,{children:`rsa-sha2-256`}),`.`]}),_jsxs(_components.p,{children:[`To use variables in this field, type the name of the variable prefixed by the dollar symbol and surrounded by { } brackets, as follows: `,_jsx(_components.code,{children:\"${variable}\"}),`. Once you type `,_jsx(_components.code,{children:\"${\"}),`, a drop-down list of autocompleted suggested variables will appear. This list updates as you type; for example, if you type `,_jsx(_components.code,{children:\"${date\"}),`, functions and variables containing `,_jsx(_components.code,{children:`date`}),` will be listed.`]})]})]}),_jsxs(Tab,{title:`Windows Fileshare`,id:`windows-fileshare-2`,children:[_jsxs(Note,{children:[_jsxs(_components.p,{children:[`When `,_jsx(_components.code,{children:`Target type`}),` is `,_jsx(_components.strong,{children:`Windows Fileshare`}),`:`]}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`The Data Transfer component uses the SMB2 protocol exclusively. SMB1 is not supported.`}),`\n`,_jsxs(_components.li,{children:[`The Data Transfer component uses TCP port `,_jsx(_components.code,{children:`445`}),` by default if no port is explicitly specified.`]}),`\n`,_jsxs(_components.li,{children:[`A target username is required when authenticating; the target domain and target password remain optional. The domain, username, and password must be provided as separate fields—do not use the `,_jsx(_components.code,{children:`domain\\\\username`}),` format in the username field.`]}),`\n`]})]}),_jsxs(ResponseField,{name:`Target URL`,type:`string`,required:true,id:`param-target-url-3`,children:[_jsx(_components.p,{children:`Enter the URL that points to the folder to transfer your file to. Special characters used in this field must be URL-safe.`}),_jsxs(_components.p,{children:[`We recommend using the `,_jsx(_components.code,{children:`Target username`}),` and `,_jsx(_components.code,{children:`Target password`}),` properties to provide credentials. For more information, see `,_jsx(_components.a,{href:`/docs/components/data-transfer#including-credentials-in-urls`,children:`Including credentials in URLs`}),`.`]}),_jsx(_components.p,{children:`If the folders in your target path don’t exist, the Data Transfer component creates them automatically.`}),_jsx(_components.p,{children:`The target URL should be in the following format if possible:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`smb://[[authdomain;]user@]host[:port][/share[/dirpath]][?context]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(_components.p,{children:`This target also accepts other methods, such as HTTP and HTTPS. Examples:`}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`smb://mydomain;jdoe@fileserver01/documents/projects/`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`http://11.22.3.4/share5/`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})})]}),_jsx(ResponseField,{name:`Target domain`,type:`string`,id:`param-target-domain`,children:_jsx(_components.p,{children:`Enter the domain that you want the transferred file to be located on.`})}),_jsx(ResponseField,{name:`Target username`,type:`string`,id:`param-target-username-1`,children:_jsx(_components.p,{children:`Enter your URL connection username for the target. This property is optional—your username will only be used if the target requests it.`})}),_jsxs(ResponseField,{name:`Target password`,type:`drop-down`,id:`param-target-password-1`,children:[_jsx(_components.p,{children:`Select the secret definition that represents your credentials for your chosen target.`}),_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Manage`}),` to navigate to the `,_jsx(_components.strong,{children:`Secret definitions`}),` list to review and add secret definitions. Read `,_jsx(_components.a,{href:`/docs/guides/secrets-and-secret-definitions`,children:`Secrets and secret definitions`}),` to learn how to create a secret definition.`]}),_jsx(_components.p,{children:`This property is optional—your password will only be used if the target requests it.`})]})]})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{requester_1,label_1,requester_0,label_0,filetypes_1,filetypes_0,m_runner,ComponentMetadata,default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Data Transfer","description":null,"href":"/docs/components/data-transfer"}}},"mdxSourceWithNoJs":null,"noJsSplices":[[134,141,"ComponentMetadata=()=>null;const request"],[339,2871,""],[4532,4547,"`Maia runner`}),` st"],[4674,4689,"`Maia runner`,`.`]})"],[14021,14037,"`File or Paper`,`.`]"],[27684,27699,"`Maia runner`,` requ"],[27952,27967,"`Maia runner`,` refr"],[32440,32455,"`Maia runner`,` call"],[35556,35583,"`Attachment or Document`,`.`]})}),_jsxs("],[42640,42658,"`data source`,` requ"],[43786,43805,"`Source`,` SFTP conf"],[66574,66597,"`target`,` requests "],[67720,67739,"`Target`,` SFTP conf"],[77199,77201,"ComponentMetadata,re"],[77272,77290,""]]},"mdxExtracts":{"tableOfContents":[{"title":"Including credentials in URLs","slug":"including-credentials-in-urls","depth":3,"children":[]},{"title":"Properties","slug":"properties","depth":2,"children":[{"title":"Connect","slug":"connect","depth":3,"children":[]},{"title":"Configure","slug":"configure","depth":3,"children":[]},{"title":"Destination","slug":"destination","depth":3,"children":[]}]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/matillion/1eecfe13cb8a36b9/scripts/feedback-widget.js","/_mintlify/custom/matillion/b8b092d8d394af0f/scripts/ga4-events.js","/_mintlify/custom/matillion/5baf5b38fe34f41f/scripts/iubenda.js","/_mintlify/custom/matillion/573540f1e9142d9c/scripts/kapa-widget.js","/_mintlify/custom/matillion/a52101786f42c23b/scripts/ph-pageleaves.js","/_mintlify/custom/matillion/b8f0431aaf9ef855/scripts/cookie-preferences-button.js","/_mintlify/custom/matillion/a3d31738f4c89949/scripts/status-badge-nav.js","/_mintlify/custom/matillion/b444958fcc79163d/scripts/text-size-slider.js","/_mintlify/custom/matillion/f7016c1e98f77080/scripts/posthog-events.js"],"subdomain":"matillion","siteName":"Maia Documentation","title":"Data Transfer - Maia Documentation","relatedPagesConfig":{"enabled":true,"limit":5,"mode":"manual"},"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-12T18:15:27.588Z","originalFileLocation":"docs/components/data-transfer.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"light\";if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"light\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"application-name\" content=\"Maia Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/matillion/eb7R3mt9l7P1vThW/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/matillion/eb7R3mt9l7P1vThW/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/matillion/eb7R3mt9l7P1vThW/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/matillion/eb7R3mt9l7P1vThW/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/matillion/eb7R3mt9l7P1vThW/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/matillion/eb7R3mt9l7P1vThW/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/matillion/eb7R3mt9l7P1vThW/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/matillion/eb7R3mt9l7P1vThW/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/matillion/eb7R3mt9l7P1vThW/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Data Transfer - Maia Documentation\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Maia Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.maia.ai/docs/components/data-transfer\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://matillion.mintlify.site/_mintlify/api/og/v2?division=Connectors\u0026amp;title=Data+Transfer\u0026amp;theme=ce57a3e3dfd574362d42229a\u0026amp;signature=39fa236fc255fcfdd570e681169faf88d7dd794efd875ac7c1a681e92cff7525\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Data Transfer - Maia Documentation\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://matillion.mintlify.site/_mintlify/api/og/v2?division=Connectors\u0026amp;title=Data+Transfer\u0026amp;theme=ce57a3e3dfd574362d42229a\u0026amp;signature=39fa236fc255fcfdd570e681169faf88d7dd794efd875ac7c1a681e92cff7525\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/matillion/eb7R3mt9l7P1vThW/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Maia Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#001f1d\">\u003cmeta data-mint-head name=\"google-site-verification\" content=\"0VLXGRESICGHnU66TdhEgUMBRRubPnW8JTkzOpiiNn0\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.maia.ai/docs/components/data-transfer\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/components/data-transfer.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.maia.ai/#organization\",\"name\":\"Maia Documentation\",\"url\":\"https://docs.maia.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/matillion/GyuNBHAx-GXnVlKX/images/maia-by-matillion-light.svg?fit=max\u0026auto=format\u0026n=GyuNBHAx-GXnVlKX\u0026q=85\u0026s=2c48b854f858c5a835450b3f34360db7\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.maia.ai#website\",\"name\":\"Maia Documentation\",\"url\":\"https://docs.maia.ai\",\"publisher\":{\"@id\":\"https://docs.maia.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.maia.ai/docs/components/data-transfer#webpage\",\"url\":\"https://docs.maia.ai/docs/components/data-transfer\",\"name\":\"Data Transfer\",\"dateModified\":\"2026-11-12T18:15:27.588Z\",\"isPartOf\":{\"@id\":\"https://docs.maia.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.maia.ai/docs/components/data-transfer#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.maia.ai/docs/components/data-transfer#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Connectors\",\"item\":\"https://docs.maia.ai/docs/components/connectors-overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Data Transfer\",\"item\":\"https://docs.maia.ai/docs/components/data-transfer\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.maia.ai/docs/components/data-transfer#article\",\"headline\":\"Data Transfer\",\"name\":\"Data Transfer\",\"url\":\"https://docs.maia.ai/docs/components/data-transfer\",\"mainEntityOfPage\":{\"@id\":\"https://docs.maia.ai/docs/components/data-transfer#webpage\"},\"dateModified\":\"2026-11-12T18:15:27.588Z\",\"publisher\":{\"@id\":\"https://docs.maia.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.maia.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Maia Documentation\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Maia Documentation\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/docs/components/data-transfer.md","siteName":"Maia Documentation","nav":{"global":null,"tabs":[{"tab":"Home","pages":[{"title":"Home","href":""}]},{"tab":"Admin","pages":[{"title":"Admin","href":"/docs/administration/administration-overview"}]},{"tab":"Components","pages":[{"title":"Components overview","href":"/docs/components/components-overview"},{"group":"Connectors","root":{"title":"Connectors overview","href":"/docs/components/connectors-overview"},"pages":[{"title":"Connectors overview","href":"/docs/components/connectors-overview"},{"title":"Custom connectors in Designer","href":"/docs/components/custom-connector"},{"title":"System tables","href":"/docs/guides/system-tables-example"},{"group":"Connector authentication guides","root":{"title":"Connector authentication","href":"/docs/guides/connector-authentication-overview"},"pages":[{"title":"Connector authentication","href":"/docs/guides/connector-authentication-overview"},{"title":"HubSpot authentication guide","href":"/docs/guides/hubspot-authentication-guide"},{"title":"Jira authentication guide","href":"/docs/guides/jira-authentication-guide"},{"title":"LinkedIn Ads authentication guide","href":"/docs/guides/linkedin-ads-authentication-guide"},{"title":"Kafka authentication guide","href":"/docs/guides/kafka-authentication-guide"},{"title":"Marketo authentication guide","href":"/docs/guides/marketo-authentication-guide"},{"title":"Microsoft Fabric Lakehouse authentication guide","href":"/docs/guides/microsoft-fabric-lakehouse-authentication-guide"},{"title":"NetSuite Query authentication guide","href":"/docs/guides/netsuite-query-authentication-guide"},{"title":"NetSuite SuiteAnalytics authentication guide","href":"/docs/guides/netsuite-suiteanalytics-authentication-guide"},{"title":"Oracle Autonomous Database authentication guide","href":"/docs/guides/oracle-autonomous-database-authentication-guide"},{"title":"Salesforce authentication guide","href":"/docs/guides/salesforce-authentication-guide"},{"title":"ServiceNow authentication guide","href":"/docs/guides/servicenow-authentication-guide"},{"title":"Workday authentication guide","href":"/docs/guides/workday-authentication-guide"}]},{"title":"ActiveCampaign","href":"/docs/components/activecampaign"},{"title":"Amazon DynamoDB Load","href":"/docs/components/amazon-dynamodb-load"},{"title":"Amazon Redshift Load","href":"/docs/components/amazon-redshift-load"},{"title":"Amplitude","href":"/docs/components/amplitude"},{"title":"Anaplan","href":"/docs/components/anaplan"},{"title":"Asana","href":"/docs/components/asana"},{"title":"Attio","href":"/docs/components/attio"},{"title":"AVRO Load","href":"/docs/components/avro-load"},{"title":"Azure Blob Storage Load","href":"/docs/components/azure-blob-storage-load"},{"title":"Azure Blob Storage Unload","href":"/docs/components/azure-blob-storage-unload"},{"title":"Azure Cosmos DB for NoSQL","href":"/docs/components/azure-cosmos-db-for-nosql"},{"title":"Azure SQL","href":"/docs/components/azure-sql"},{"title":"Bing Ads Load","href":"/docs/components/bing-ads-load"},{"title":"Bing Ads Query (deprecated)","href":"/docs/components/bing-ads-query"},{"title":"Box","href":"/docs/components/box"},{"title":"Braze","href":"/docs/components/braze"},{"title":"Brevo","href":"/docs/components/brevo"},{"title":"Bugcrowd","href":"/docs/components/bugcrowd"},{"title":"Buildkite","href":"/docs/components/buildkite"},{"title":"Chargebee","href":"/docs/components/chargebee"},{"title":"CircleCI","href":"/docs/components/circleci"},{"title":"ClickUp","href":"/docs/components/clickup"},{"title":"Coalesce","href":"/docs/components/coalesce"},{"title":"Concord","href":"/docs/components/concord"},{"title":"Confluence","href":"/docs/components/confluence"},{"title":"CSV Load","description":null,"href":"/docs/components/csv-load"},{"title":"Data Transfer","href":"/docs/components/data-transfer"},{"title":"Database Query","description":null,"href":"/docs/components/database-query"},{"title":"Databricks","href":"/docs/components/databricks"},{"title":"Datadog","href":"/docs/components/datadog"},{"title":"dbt Cloud","href":"/docs/components/dbt-cloud"},{"title":"Delighted","href":"/docs/components/delighted"},{"title":"Dixa","href":"/docs/components/dixa"},{"title":"Dropbox","href":"/docs/components/dropbox"},{"title":"Dynamics 365 Business Central","href":"/docs/components/dynamics-365-business-central"},{"title":"Elasticsearch Load","href":"/docs/components/elasticsearch-load"},{"title":"Email Load","href":"/docs/components/email-load"},{"title":"Eventbrite","href":"/docs/components/eventbrite"},{"title":"Excel Load","href":"/docs/components/excel-load"},{"title":"Excel Query","href":"/docs/components/excel-query"},{"title":"Facebook Ads","href":"/docs/components/facebook-ads"},{"title":"Facebook Ads Query (deprecated)","href":"/docs/components/facebook-ads-query"},{"title":"Facebook Ads Query example configurations","href":"/docs/guides/facebook-ads-query-example"},{"title":"Facebook Load","href":"/docs/components/facebook-load"},{"title":"Facebook Query (deprecated)","href":"/docs/components/facebook-query"},{"title":"Fanatics","href":"/docs/components/fanatics"},{"title":"FireHydrant","href":"/docs/components/firehydrant"},{"title":"Float","href":"/docs/components/flex-float"},{"title":"Freshdesk","href":"/docs/components/freshdesk"},{"title":"GitHub","href":"/docs/components/github"},{"title":"Gmail","href":"/docs/components/gmail"},{"title":"Gong","href":"/docs/components/gong"},{"title":"Google Ads Load","href":"/docs/components/google-ads-load"},{"title":"Google Analytics","href":"/docs/components/google-analytics"},{"title":"Google Analytics Query (deprecated)","href":"/docs/components/google-analytics-query"},{"title":"Google BigQuery (connector)","href":"/docs/components/google-bigquery"},{"title":"Google BigQuery Load","href":"/docs/components/google-bigquery-load"},{"title":"Google Cloud Storage Unload","href":"/docs/components/google-cloud-storage-unload"},{"title":"Google Sheets","href":"/docs/components/google-sheets"},{"title":"HubSpot Load","href":"/docs/components/hubspot-load"},{"title":"HubSpot Query (deprecated)","href":"/docs/components/hubspot-query"},{"title":"IBM Db2 for i Load","href":"/docs/components/ibm-db2-load"},{"title":"Infobip","href":"/docs/components/infobip"},{"title":"Intercom","href":"/docs/components/intercom"},{"title":"JDBC Load","href":"/docs/components/jdbc-load"},{"title":"Jira Load","href":"/docs/components/jira-load"},{"title":"Jotform","href":"/docs/components/jotform"},{"title":"JSON Load","href":"/docs/components/json-load"},{"title":"Kafka","href":"/docs/components/kafka"},{"title":"Klaviyo","href":"/docs/components/klaviyo"},{"title":"LaunchDarkly","href":"/docs/components/launchdarkly"},{"title":"LDAP Load","href":"/docs/components/ldap-load"},{"title":"LDAP Query (deprecated)","href":"/docs/components/ldap-query"},{"title":"LinkedIn Ads","href":"/docs/components/linkedin-ads"},{"title":"Lob","href":"/docs/components/lob"},{"title":"Maia Flex connector","href":"/docs/components/maia-flex-connector"},{"title":"Mailchimp","href":"/docs/components/mailchimp"},{"title":"Mailgun","href":"/docs/components/mailgun"},{"title":"Mandrill","href":"/docs/components/mandrill"},{"title":"MariaDB Load","href":"/docs/components/mariadb-load"},{"title":"MariaDB Unload","href":"/docs/components/mariadb-unload"},{"title":"Marketo Load","href":"/docs/components/marketo-load"},{"title":"Microsoft Dataverse","href":"/docs/components/microsoft-dataverse"},{"title":"Microsoft Dynamics 365 Load","href":"/docs/components/microsoft-dynamics-365-load"},{"title":"Microsoft Dynamics CRM Load","href":"/docs/components/microsoft-dynamics-crm-load"},{"title":"Microsoft Exchange","href":"/docs/components/microsoft-exchange"},{"title":"Microsoft SQL Server Load","href":"/docs/components/microsoft-sql-server-load"},{"title":"Mixpanel","href":"/docs/components/mixpanel"},{"title":"MongoDB Load","href":"/docs/components/mongodb-load"},{"title":"NetSuite Query","href":"/docs/components/netsuite-query"},{"title":"NetSuite SuiteAnalytics (deprecated)","href":"/docs/components/netsuite-suiteanalytics"},{"title":"NetSuite SuiteAnalytics Load","href":"/docs/components/netsuite-suiteanalytics-load"},{"title":"New Relic","href":"/docs/components/new-relic"},{"title":"Notion","href":"/docs/components/notion"},{"title":"OData","href":"/docs/components/odata"},{"title":"OData Query","href":"/docs/components/odata-query"},{"title":"Ongoing WMS","href":"/docs/components/ongoing-wms"},{"title":"Open Exchange Rates","href":"/docs/components/open-exchange-rates"},{"title":"Oracle Eloqua Load","href":"/docs/components/oracle-eloqua-load"},{"title":"Oracle Fusion Cloud Financials Load","href":"/docs/components/oracle-fcf-load"},{"title":"Oracle Fusion Cloud HCM Load","href":"/docs/components/oracle-hcm-load"},{"title":"Oracle Fusion Cloud Procurement Load","href":"/docs/components/oracle-fcp-load"},{"title":"Oracle Fusion Cloud Project Management Load","href":"/docs/components/oracle-fcpm-load"},{"title":"Oracle Load","href":"/docs/components/oracle-load"},{"title":"Oracle Output","href":"/docs/components/oracle-output"},{"title":"Oracle Unload","href":"/docs/components/oracle-unload"},{"title":"Orbit","href":"/docs/components/orbit"},{"title":"ORC Load","href":"/docs/components/orc-load"},{"title":"Ortto","href":"/docs/components/ortto"},{"title":"PagerDuty","href":"/docs/components/pagerduty"},{"title":"Parquet Load","href":"/docs/components/parquet-load"},{"title":"PayPal","href":"/docs/components/paypal"},{"title":"Pendo","href":"/docs/components/pendo"},{"title":"Persona","href":"/docs/components/persona"},{"title":"Pingdom","href":"/docs/components/pingdom"},{"title":"Pipedrive","href":"/docs/components/pipedrive"},{"title":"PostgreSQL Load","href":"/docs/components/postgresql-load"},{"title":"PostgreSQL Unload","href":"/docs/components/postgresql-unload"},{"title":"Productboard","href":"/docs/components/productboard"},{"title":"RDS Query","href":"/docs/components/rds-query"},{"title":"Recurly","href":"/docs/components/recurly"},{"title":"RingCentral","href":"/docs/components/ringcentral"},{"title":"Rootly","href":"/docs/components/rootly"},{"title":"S3 Load","href":"/docs/components/s3-load"},{"title":"S3 Unload","href":"/docs/components/s3-unload"},{"title":"Sage Intacct Load","href":"/docs/components/sage-intacct-load"},{"title":"Salesforce Load","href":"/docs/components/salesforce-load"},{"title":"Salesforce Marketing Cloud Query","href":"/docs/components/salesforce-marketing-cloud-query"},{"title":"Salesforce Pardot","href":"/docs/components/salesforce-pardot"},{"title":"Salesforce Query (deprecated)","href":"/docs/components/salesforce-query"},{"title":"Salesloft","href":"/docs/components/salesloft"},{"title":"SAP NetWeaver (deprecated)","href":"/docs/components/sap-netweaver"},{"title":"SAP NetWeaver Load","href":"/docs/components/sap-netweaver-load"},{"title":"SAP ODP","href":"/docs/components/sap-odp"},{"title":"SAP SuccessFactors","href":"/docs/components/sap-successfactors"},{"title":"SeatGeek","href":"/docs/components/seatgeek"},{"title":"SendGrid","href":"/docs/components/sendgrid"},{"title":"ServiceNow Load","href":"/docs/components/servicenow-load"},{"title":"ServiceNow Query","href":"/docs/components/servicenow-query"},{"title":"SharePoint Load","href":"/docs/components/sharepoint-load"},{"title":"SharePoint Query (deprecated)","href":"/docs/components/sharepoint-query"},{"title":"Shopify","href":"/docs/components/shopify"},{"title":"Shopify Load","href":"/docs/components/shopify-load"},{"title":"Slack","href":"/docs/components/slack"},{"title":"Smartsheet","href":"/docs/components/smartsheet"},{"title":"Snapchat","href":"/docs/components/snapchat"},{"title":"Snowflake Load","href":"/docs/components/snowflake-load"},{"title":"Snyk","href":"/docs/components/snyk"},{"title":"Square","href":"/docs/components/square"},{"title":"Stripe Load","href":"/docs/components/stripe-load"},{"title":"Stripe Query (deprecated)","href":"/docs/components/stripe-query"},{"title":"SugarCRM Load","href":"/docs/components/sugarcrm-load"},{"title":"SurveyMonkey","href":"/docs/components/surveymonkey"},{"title":"Sybase ASE Load","href":"/docs/components/sybase-ase-load"},{"title":"Ticketmaster","href":"/docs/components/ticketmaster"},{"title":"TikTok","href":"/docs/components/tiktok"},{"title":"Toggl","href":"/docs/components/toggl"},{"title":"Twilio","href":"/docs/components/twilio"},{"title":"Unstructured.io","href":"/docs/components/unstructured"},{"title":"Workday","href":"/docs/components/workday"},{"title":"Workday Custom Reports","href":"/docs/components/workday-custom-reports"},{"title":"Workday Load","href":"/docs/components/workday-load"},{"title":"X Ads Load","href":"/docs/components/x-ads-load"},{"title":"Yelp","href":"/docs/components/yelp"},{"title":"Zendesk Talk","href":"/docs/components/zendesk-talk"},{"title":"Zendesk Ticketing","href":"/docs/components/zendesk-ticketing"},{"title":"Zoom","href":"/docs/components/zoom"},{"title":"Zoho CRM Load","href":"/docs/components/zoho-crm-load"},{"title":"Zuora","href":"/docs/components/zuora"},{"title":"Zuora Bulk","href":"/docs/components/zuora-bulk"}]},{"group":"Orchestration","root":{"title":"Orchestration overview","href":"/docs/components/orchestration-pipeline-overview"},"pages":[{"title":"Orchestration overview","href":"/docs/components/orchestration-pipeline-overview"},{"group":"Pipeline control","root":{"title":"Pipeline control components","href":"/docs/components/pipeline-control-components"},"pages":[{"title":"Pipeline control components","href":"/docs/components/pipeline-control-components"},{"title":"And component","href":"/docs/components/and"},{"title":"Begin transaction","href":"/docs/components/begin"},{"title":"Commit transaction","href":"/docs/components/commit"},{"title":"End Failure","href":"/docs/components/end-failure"},{"title":"End Success","href":"/docs/components/end-success"},{"title":"If component","href":"/docs/components/if"},{"title":"Or component","href":"/docs/components/or"},{"title":"Retry","href":"/docs/components/retry"},{"title":"Rollback transaction","href":"/docs/components/rollback"},{"title":"Run Orchestration","href":"/docs/components/run-orchestration"},{"title":"Run Shared Pipeline","href":"/docs/components/run-shared-pipeline"},{"title":"Run Transformation","href":"/docs/components/run-transformation"},{"title":"Start component","href":"/docs/components/start"},{"title":"Start Compute","href":"/docs/components/start-compute"}]},{"group":"DDL","root":{"title":"DDL components","href":"/docs/components/ddl-components"},"pages":[{"title":"DDL components","href":"/docs/components/ddl-components"},{"title":"Add Partition","href":"/docs/components/add-partition"},{"title":"Alter Table","href":"/docs/components/alter-table"},{"title":"Alter Warehouse","href":"/docs/components/alter-warehouse"},{"title":"Analyze Tables","href":"/docs/components/analyze-tables"},{"title":"Create External Table","href":"/docs/components/create-external-table"},{"title":"Create File Format","href":"/docs/components/create-file-format"},{"title":"Create Stream","href":"/docs/components/create-stream"},{"title":"Create Table","href":"/docs/components/create-table"},{"title":"Delete Tables","href":"/docs/components/delete-tables"},{"title":"Google Drive Table","href":"/docs/components/google-drive-table"},{"title":"Optimize","href":"/docs/components/optimize"},{"title":"Refresh External Table","href":"/docs/components/refresh-external-table"},{"title":"Refresh Materialized View","href":"/docs/components/refresh-materialized-view"},{"title":"Refresh Table","href":"/docs/components/refresh-table"},{"title":"Schema Copy","href":"/docs/components/schema-copy"},{"title":"Truncate Table","href":"/docs/components/truncate-table"},{"title":"Vacuum","href":"/docs/components/vacuum"},{"title":"Volume to Delta Table","href":"/docs/components/volume-to-delta-table"}]},{"group":"Scripting","root":{"title":"Scripting components","href":"/docs/components/scripting-components"},"pages":[{"title":"Scripting components","href":"/docs/components/scripting-components"},{"title":"dbt Core","href":"/docs/components/dbt-core"},{"title":"Python Pushdown","href":"/docs/components/python-pushdown"},{"title":"Python Script","href":"/docs/components/python-script"},{"title":"Run Notebook","href":"/docs/components/run-notebook"},{"title":"Script Pushdown","href":"/docs/components/script-pushdown"},{"title":"SQL Script","href":"/docs/components/sql-script"}]},{"group":"AI","root":{"title":"AI components","href":"/docs/components/ai-components"},"pages":[{"title":"AI components","href":"/docs/components/ai-components"},{"title":"Amazon Bedrock Prompt","href":"/docs/components/amazon-bedrock-prompt"},{"title":"Amazon Textract Input","href":"/docs/components/amazon-textract-input"},{"title":"Amazon Transcribe Input","href":"/docs/components/amazon-transcribe-input"},{"title":"Azure Document Intelligence","href":"/docs/components/azure-document-intelligence"},{"title":"Azure OpenAI Prompt","href":"/docs/components/azure-openai-prompt"},{"title":"OpenAI Prompt","href":"/docs/components/openai-prompt"},{"title":"Azure Speech Transcribe","href":"/docs/components/azure-speech-transcribe"},{"title":"Chunk Text","href":"/docs/components/chunk-text"},{"title":"Cortex Finetune","href":"/docs/components/cortex-finetune"},{"title":"Pinecone Vector Query","href":"/docs/components/pinecone-vector-query"},{"title":"Snowpark Container Prompt","tag":"Preview","href":"/docs/components/snowpark-container-prompt"},{"title":"How to create an app in Snowpark Container Services","tag":"Preview","href":"/docs/guides/snowpark-container-app-how-to"},{"title":"TypeSafe Decide","href":"/docs/components/typesafe-decide"},{"title":"Google Vertex AI Prompt","href":"/docs/components/vertex-ai-prompt"}]},{"group":"Variables","root":{"title":"Variables components","href":"/docs/components/variables-components"},"pages":[{"title":"Variables components","href":"/docs/components/variables-components"},{"title":"Append to Grid","href":"/docs/components/append-to-grid"},{"title":"Assert Scalar Variables","href":"/docs/components/assert-scalar-variables"},{"title":"JDBC Table Metadata to Grid","href":"/docs/components/jdbc-table-metadata-to-grid"},{"title":"Print Variables","href":"/docs/components/print-variables"},{"title":"Query Result To Grid","href":"/docs/components/query-result-to-grid"},{"title":"Query Result To Scalar","href":"/docs/components/query-result-to-scalar"},{"title":"Remove from Grid","href":"/docs/components/remove-from-grid"},{"title":"Show to Grid","href":"/docs/components/show-to-grid"},{"title":"Table Metadata to Grid","href":"/docs/components/table-metadata-to-grid"},{"title":"Update Scalar","href":"/docs/components/update-scalar"}]},{"group":"Messaging","root":{"title":"Messaging components","href":"/docs/components/messaging-components"},"pages":[{"title":"Messaging components","href":"/docs/components/messaging-components"},{"title":"Azure Queue Storage Message","href":"/docs/components/azure-queue-storage-message"},{"title":"CloudWatch Publish","href":"/docs/components/cloudwatch-publish"},{"title":"Cloud Pub/Sub","href":"/docs/components/pubsub"},{"title":"Send Email","href":"/docs/components/send-email"},{"title":"SNS Message","href":"/docs/components/sns-message"},{"title":"SQS Message","href":"/docs/components/sqs-message"},{"title":"Webhook Post","href":"/docs/components/webhook-post"}]},{"group":"Assert","root":{"title":"Assert components","href":"/docs/components/assert-components"},"pages":[{"title":"Assert components","href":"/docs/components/assert-components"},{"title":"Assert External Table","href":"/docs/components/assert-external-table"},{"title":"Assert Scalar Variables","href":"/docs/components/assert-scalar-variables"},{"title":"Assert Table","href":"/docs/components/assert-table"}]},{"group":"Metadata","root":{"title":"Metadata components","href":"/docs/components/metadata-components"},"pages":[{"title":"Metadata components","href":"/docs/components/metadata-components"},{"title":"JDBC Table Metadata to Grid","href":"/docs/components/jdbc-table-metadata-to-grid"},{"title":"Table Metadata to Grid","href":"/docs/components/table-metadata-to-grid"}]},{"group":"Iterators","root":{"title":"Iterator components","href":"/docs/guides/iterator-components"},"pages":[{"title":"Iterator components","href":"/docs/guides/iterator-components"},{"title":"File Iterator","href":"/docs/components/file-iterator"},{"title":"Fixed Iterator","href":"/docs/components/fixed-iterator"},{"title":"Grid Iterator","href":"/docs/components/grid-iterator"},{"title":"Loop Iterator","href":"/docs/components/loop-iterator"},{"title":"Table Iterator","href":"/docs/components/table-iterator"}]},{"group":"Output and upsert","root":{"title":"Output and upsert components","href":"/docs/components/output-and-upsert-components"},"pages":[{"title":"Output and upsert components","href":"/docs/components/output-and-upsert-components"},{"title":"Amazon OpenSearch Upsert","href":"/docs/components/amazon-opensearch-upsert"},{"title":"Pinecone Vector Upsert","href":"/docs/components/pinecone-vector-upsert"},{"title":"Postgres Vector Upsert","href":"/docs/components/postgres-vector-upsert"},{"title":"RDS Bulk Output","href":"/docs/components/rds-bulk-output"},{"title":"Microsoft SQL Server Output","href":"/docs/components/sql-server-output"},{"title":"Salesforce Output","href":"/docs/components/salesforce-output"},{"title":"Snowflake Vector Upsert","href":"/docs/components/snowflake-vector-upsert"}]}]},{"group":"Transformation","root":{"title":"Transformation overview","href":"/docs/components/transformation-pipeline-overview"},"pages":[{"title":"Transformation overview","href":"/docs/components/transformation-pipeline-overview"},{"title":"Aggregate","href":"/docs/components/aggregate"},{"title":"Assert View","href":"/docs/components/assert-view"},{"title":"Calculator","href":"/docs/components/calculator"},{"title":"Construct Struct","href":"/docs/components/construct-struct"},{"title":"Construct Variant","href":"/docs/components/construct-variant"},{"title":"Convert String To Struct","href":"/docs/components/convert-string-to-struct"},{"title":"Convert Type","href":"/docs/components/convert-type"},{"group":"Cortex","pages":[{"title":"Cortex Completions","href":"/docs/components/cortex-completions"},{"title":"Cortex Embed","href":"/docs/components/cortex-embed"},{"title":"Cortex Extract Answer","href":"/docs/components/cortex-extract-answer"},{"title":"Cortex Multi Prompt","href":"/docs/components/cortex-multi-prompt"},{"title":"Cortex Parse Document","tag":"Preview","href":"/docs/components/cortex-parse-document"},{"title":"Cortex Sentiment","href":"/docs/components/cortex-sentiment"},{"title":"Cortex Summarize","href":"/docs/components/cortex-summarize"},{"title":"Cortex Translate","href":"/docs/components/cortex-translate"}]},{"title":"Create View","href":"/docs/components/create-view"},{"title":"Data Cleanse","href":"/docs/components/data-cleanse"},{"group":"Databricks AI","pages":[{"title":"AI Analyze Sentiment","href":"/docs/components/databricks-ai-analyze-sentiment"},{"title":"AI Classify","href":"/docs/components/databricks-ai-classify"},{"title":"AI Extract","href":"/docs/components/databricks-ai-extract"},{"title":"AI Fix Grammar","href":"/docs/components/databricks-ai-fix-grammar"},{"title":"AI Mask","href":"/docs/components/databricks-ai-mask"},{"title":"AI Query","href":"/docs/components/databricks-ai-query"},{"title":"AI Similarity","href":"/docs/components/databricks-ai-similarity"},{"title":"AI Summarize","href":"/docs/components/databricks-ai-summarize"},{"title":"AI Translate","href":"/docs/components/databricks-ai-translate"},{"title":"Databricks Vector Search","href":"/docs/components/databricks-vector-search"}]},{"title":"Detect Changes","href":"/docs/components/detect-changes"},{"title":"Distinct","href":"/docs/components/distinct"},{"title":"Document AI Predict","tag":"Preview","href":"/docs/components/document-ai-predict"},{"title":"Except","href":"/docs/components/except"},{"title":"Extract Nested Data","href":"/docs/components/extract-nested-data"},{"title":"Extract Structured Data","href":"/docs/components/extract-structured-data"},{"title":"Filter","href":"/docs/components/filter"},{"title":"First/Last","href":"/docs/components/first-last"},{"title":"Fixed Flow","href":"/docs/components/fixed-flow"},{"title":"Flatten Variant","href":"/docs/components/flatten-variant"},{"title":"Generate Sequence","href":"/docs/components/generate-sequence"},{"group":"Google BigQuery AI","pages":[{"title":"Check Condition","href":"/docs/components/bigquery-check-condition"},{"title":"Classify","href":"/docs/components/bigquery-classify"},{"title":"Embed","href":"/docs/components/bigquery-embed"},{"title":"Generate","href":"/docs/components/bigquery-generate"},{"title":"Score","href":"/docs/components/bigquery-score"},{"title":"Vector Search","href":"/docs/components/bigquery-vector-search"}]},{"title":"Intersect","href":"/docs/components/intersect"},{"title":"Join","href":"/docs/components/join"},{"title":"Lead/Lag","href":"/docs/components/lead-lag"},{"title":"Map Values","href":"/docs/components/map-values"},{"title":"ML Classification","tag":"Preview","href":"/docs/components/ml-classification-sf"},{"title":"Multi Table Input","href":"/docs/components/multi-table-input"},{"title":"Pivot","href":"/docs/components/pivot"},{"title":"Rank","href":"/docs/components/rank"},{"title":"Rename","href":"/docs/components/rename"},{"title":"Rewrite Table","href":"/docs/components/rewrite-table"},{"title":"Split field","href":"/docs/components/split-field"},{"title":"SQL","href":"/docs/components/sql"},{"title":"Stream Input","href":"/docs/components/stream-input"},{"title":"Table Delete Rows","href":"/docs/components/table-delete-rows"},{"title":"Table Input","href":"/docs/components/table-input"},{"title":"Table Output","href":"/docs/components/table-output"},{"title":"Table Update","href":"/docs/components/table-update"},{"title":"Transpose Columns","href":"/docs/components/transpose-columns"},{"title":"Transpose Rows","href":"/docs/components/transpose-rows"},{"title":"Unite","href":"/docs/components/unite"},{"title":"Unpivot","href":"/docs/components/unpivot"},{"title":"Vector Search","href":"/docs/components/vector-search"},{"title":"Wildcard Table Input","href":"/docs/components/wildcard-table-input"},{"title":"Window Calculation","href":"/docs/components/window-calculation"}]},{"group":"Test pipelines","root":{"title":"Test pipelines","href":"/docs/components/test-pipelines"},"pages":[{"title":"Test pipelines","href":"/docs/components/test-pipelines"},{"title":"Assert Table Values","href":"/docs/components/assert-table-values"},{"title":"Compare Table Values","href":"/docs/components/compare-table-values"},{"title":"Create Table From Values","href":"/docs/components/create-table-from-values"},{"title":"Run Pipeline To Test","href":"/docs/components/run-pipeline-to-test"},{"title":"Zero Copy Clone","href":"/docs/components/zero-copy-clone"}]}]},{"tab":"Guides","pages":[{"title":"Guides","href":"/docs/guides/maia-overview"}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/docs/api-reference/maia-api-overview"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/docs/changelog/2026-changelog"}]}]},"basePath":"","title":"Data Transfer - Maia Documentation","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":[],"chunks":[]}