FtpClient
Attributes
TRIGGER_OPERATIONS
module-attribute
TRIGGER_OPERATIONS: Dict[str, Dict[str, Any]] = {'OnUpdatedFiles': {'operation_id': 'OnUpdatedFiles', 'path': '/{connectionId}/datasets/default/triggers/batch/onupdatedfile', 'method': 'get', 'required_parameters': ['folderId'], 'callback_payload_type': 'BlobMetadata'}}
Classes
BlobMetadata
dataclass
BlobMetadata(*, id: Optional[str] = None, name: Optional[str] = None, display_name: Optional[str] = None, path: Optional[str] = None, last_modified: Optional[str] = None, size: Optional[int] = None, media_type: Optional[str] = None, is_folder: Optional[bool] = None, e_tag: Optional[str] = None, file_locator: Optional[str] = None)
Response for Create file
Attributes
id
class-attribute
instance-attribute
The unique id of the file or folder.
name
class-attribute
instance-attribute
The name of the file or folder.
display_name
class-attribute
instance-attribute
display_name: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'DisplayName'})
The display name of the file or folder.
path
class-attribute
instance-attribute
The path of the file or folder.
last_modified
class-attribute
instance-attribute
last_modified: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'LastModified'})
The date and time the file or folder was last modified.
size
class-attribute
instance-attribute
The size of the file or folder.
media_type
class-attribute
instance-attribute
media_type: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'MediaType'})
The media type of the file or folder.
is_folder
class-attribute
instance-attribute
is_folder: Optional[bool] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'IsFolder'})
A boolean value (true, false) to indicate whether or not the blob is a folder.
e_tag
class-attribute
instance-attribute
The etag of the file or folder.
DataSetsMetadata
dataclass
DataSetsMetadata(*, tabular: Optional[TabularDataSetsMetadata | Mapping[str, Any]] = None, blob: Optional[BlobDataSetsMetadata | Mapping[str, Any]] = None)
Definition: DataSetsMetadata
TabularDataSetsMetadata
dataclass
TabularDataSetsMetadata(*, source: Optional[str] = None, display_name: Optional[str] = None, url_encoding: Optional[str] = None, table_display_name: Optional[str] = None, table_plural_name: Optional[str] = None)
Definition: TabularDataSetsMetadata
Attributes
source
class-attribute
instance-attribute
Dataset source
display_name
class-attribute
instance-attribute
display_name: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'displayName'})
Dataset display name
url_encoding
class-attribute
instance-attribute
url_encoding: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'urlEncoding'})
Dataset url encoding
BlobDataSetsMetadata
dataclass
BlobDataSetsMetadata(*, source: Optional[str] = None, display_name: Optional[str] = None, url_encoding: Optional[str] = None)
BlobMetadataResponse
dataclass
BlobMetadataResponse(*, id: Optional[str] = None, name: Optional[str] = None, display_name: Optional[str] = None, path: Optional[str] = None, last_modified: Optional[str] = None, size: Optional[int] = None, media_type: Optional[str] = None, is_folder: Optional[bool] = None, e_tag: Optional[str] = None, file_locator: Optional[str] = None)
Definition: BlobMetadataResponse
Attributes
id
class-attribute
instance-attribute
The unique id of the file or folder.
name
class-attribute
instance-attribute
The name of the file or folder.
display_name
class-attribute
instance-attribute
display_name: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'DisplayName'})
The display name of the file or folder.
path
class-attribute
instance-attribute
The path of the file or folder.
last_modified
class-attribute
instance-attribute
last_modified: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'LastModified'})
The date and time the file or folder was last modified.
size
class-attribute
instance-attribute
The size of the file or folder.
media_type
class-attribute
instance-attribute
media_type: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'MediaType'})
The media type of the file or folder.
is_folder
class-attribute
instance-attribute
is_folder: Optional[bool] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'IsFolder'})
A boolean value (true, false) to indicate whether or not the blob is a folder.
e_tag
class-attribute
instance-attribute
The etag of the file or folder.
ObjectEntity
dataclass
BlobMetadataPage
dataclass
FtpClient
FtpClient(connection_runtime_url: str, credential: AsyncTokenCredential | AzureKeyCredential, *, max_retry_attempts: int = 3, timeout: float = 30.0, use_exponential_backoff: bool = True, initial_retry_delay_seconds: float = 0.5, maximum_retry_delay_seconds: float = 120.0, retry_jitter_factor: float = 0.1, retry_unsafe_http_methods: bool = False, transport: Optional[AsyncHttpTransport] = None, **kwargs: Any)
Bases: ConnectorClientBase
Typed client for ftp connector.
Initialize a FtpClient.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
connection_runtime_url
|
str
|
The connection runtime URL from Azure Portal. |
required |
credential
|
AsyncTokenCredential | AzureKeyCredential
|
Caller-owned Azure Core credential. |
required |
max_retry_attempts
|
int
|
The maximum number of request attempts. |
3
|
timeout
|
float
|
The network timeout in seconds for each request. The value configures Azure Core retry and transport deadlines. Nonpositive values disable SDK and transport deadlines. |
30.0
|
use_exponential_backoff
|
bool
|
Whether retries use exponential backoff. |
True
|
initial_retry_delay_seconds
|
float
|
The initial retry delay in seconds. |
0.5
|
maximum_retry_delay_seconds
|
float
|
The maximum retry delay in seconds. |
120.0
|
retry_jitter_factor
|
float
|
The jitter fraction applied to retry delays. |
0.1
|
retry_unsafe_http_methods
|
bool
|
Whether unsafe HTTP methods may be retried. |
False
|
transport
|
Optional[AsyncHttpTransport]
|
Optional Azure Core async HTTP transport closed by the client through its asynchronous lifecycle. |
None
|
**kwargs
|
Any
|
Optional Azure Core pipeline policy settings. |
{}
|
Methods:
create_file
async
create_file(input: bytes, folder_path: str, name: str, *, timeout: Optional[float] = None, headers: Optional[Mapping[str, str]] = None, client_request_id: Optional[str] = None, response_hook: Optional[ConnectorResponseHook] = None) -> dict[str, Any] | None
Create file
This operation creates a file. If a file is being deleted/renamed on server right after it was created, connector may return HTTP 404 error by it's design. Please use a delay for 1 minute before deleting or renaming newly created file.
Swagger operation ID: CreateFile.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
input
|
bytes
|
The binary request body. |
required |
folder_path
|
str
|
Select a folder. |
required |
name
|
str
|
Name of the file. |
required |
timeout
|
Optional[float]
|
The request timeout in seconds. |
None
|
headers
|
Optional[Mapping[str, str]]
|
Additional HTTP request headers. |
None
|
client_request_id
|
Optional[str]
|
A caller-provided request identifier. |
None
|
response_hook
|
Optional[ConnectorResponseHook]
|
A callback invoked with the connector response. |
None
|
Returns:
| Type | Description |
|---|---|
dict[str, Any] | None
|
dict[str, Any] | None: The connector operation result. |
Raises:
| Type | Description |
|---|---|
ConnectorException
|
If the connector request fails. |
get_file_metadata
async
get_file_metadata(id: str, *, timeout: Optional[float] = None, headers: Optional[Mapping[str, str]] = None, client_request_id: Optional[str] = None, response_hook: Optional[ConnectorResponseHook] = None) -> dict[str, Any] | None
Get file metadata
This operation gets the metadata for a file.
Swagger operation ID: GetFileMetadata.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
Select a file. |
required |
timeout
|
Optional[float]
|
The request timeout in seconds. |
None
|
headers
|
Optional[Mapping[str, str]]
|
Additional HTTP request headers. |
None
|
client_request_id
|
Optional[str]
|
A caller-provided request identifier. |
None
|
response_hook
|
Optional[ConnectorResponseHook]
|
A callback invoked with the connector response. |
None
|
Returns:
| Type | Description |
|---|---|
dict[str, Any] | None
|
dict[str, Any] | None: The connector operation result. |
Raises:
| Type | Description |
|---|---|
ConnectorException
|
If the connector request fails. |
update_file
async
update_file(input: bytes, id: str, *, timeout: Optional[float] = None, headers: Optional[Mapping[str, str]] = None, client_request_id: Optional[str] = None, response_hook: Optional[ConnectorResponseHook] = None) -> dict[str, Any] | None
Update file
This operation updates a file. If a file is being deleted/renamed on server right after it was updated, connector may return HTTP 404 error by it's design. Please use a delay for 1 minute before deleting or renaming recently updated file.
Swagger operation ID: UpdateFile.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
input
|
bytes
|
The binary request body. |
required |
id
|
str
|
Select a file. |
required |
timeout
|
Optional[float]
|
The request timeout in seconds. |
None
|
headers
|
Optional[Mapping[str, str]]
|
Additional HTTP request headers. |
None
|
client_request_id
|
Optional[str]
|
A caller-provided request identifier. |
None
|
response_hook
|
Optional[ConnectorResponseHook]
|
A callback invoked with the connector response. |
None
|
Returns:
| Type | Description |
|---|---|
dict[str, Any] | None
|
dict[str, Any] | None: The connector operation result. |
Raises:
| Type | Description |
|---|---|
ConnectorException
|
If the connector request fails. |
delete_file
async
delete_file(id: str, *, timeout: Optional[float] = None, headers: Optional[Mapping[str, str]] = None, client_request_id: Optional[str] = None, response_hook: Optional[ConnectorResponseHook] = None) -> None
Delete file
This operation deletes a file.
Swagger operation ID: DeleteFile.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
Select a file. |
required |
timeout
|
Optional[float]
|
The request timeout in seconds. |
None
|
headers
|
Optional[Mapping[str, str]]
|
Additional HTTP request headers. |
None
|
client_request_id
|
Optional[str]
|
A caller-provided request identifier. |
None
|
response_hook
|
Optional[ConnectorResponseHook]
|
A callback invoked with the connector response. |
None
|
Returns:
| Name | Type | Description |
|---|---|---|
None |
None
|
The operation completes without a response body. |
Raises:
| Type | Description |
|---|---|
ConnectorException
|
If the connector request fails. |
copy_file
async
copy_file(source: str, destination: str, *, overwrite: Optional[bool] = None, timeout: Optional[float] = None, headers: Optional[Mapping[str, str]] = None, client_request_id: Optional[str] = None, response_hook: Optional[ConnectorResponseHook] = None) -> dict[str, Any] | None
Copy file
This operation copies a file to an FTP server. If a file is being deleted/renamed on server right after it was copied, connector may return HTTP 404 error by it's design. Please use a delay for 1 minute before deleting or renaming newly created file.
Swagger operation ID: CopyFile.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
source
|
str
|
Url to source file. |
required |
destination
|
str
|
Destination file path, including target filename. |
required |
overwrite
|
Optional[bool]
|
Overwrites the destination file if set to 'true'. |
None
|
timeout
|
Optional[float]
|
The request timeout in seconds. |
None
|
headers
|
Optional[Mapping[str, str]]
|
Additional HTTP request headers. |
None
|
client_request_id
|
Optional[str]
|
A caller-provided request identifier. |
None
|
response_hook
|
Optional[ConnectorResponseHook]
|
A callback invoked with the connector response. |
None
|
Returns:
| Type | Description |
|---|---|
dict[str, Any] | None
|
dict[str, Any] | None: The connector operation result. |
Raises:
| Type | Description |
|---|---|
ConnectorException
|
If the connector request fails. |
get_file_metadata_by_path
async
get_file_metadata_by_path(path: str, *, timeout: Optional[float] = None, headers: Optional[Mapping[str, str]] = None, client_request_id: Optional[str] = None, response_hook: Optional[ConnectorResponseHook] = None) -> dict[str, Any] | None
Get file metadata using path
This operation gets the metadata of a file using the file path.
Swagger operation ID: GetFileMetadataByPath.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
str
|
Select a file. |
required |
timeout
|
Optional[float]
|
The request timeout in seconds. |
None
|
headers
|
Optional[Mapping[str, str]]
|
Additional HTTP request headers. |
None
|
client_request_id
|
Optional[str]
|
A caller-provided request identifier. |
None
|
response_hook
|
Optional[ConnectorResponseHook]
|
A callback invoked with the connector response. |
None
|
Returns:
| Type | Description |
|---|---|
dict[str, Any] | None
|
dict[str, Any] | None: The connector operation result. |
Raises:
| Type | Description |
|---|---|
ConnectorException
|
If the connector request fails. |
get_file_content_by_path
async
get_file_content_by_path(path: str, *, infer_content_type: Optional[bool] = None, timeout: Optional[float] = None, headers: Optional[Mapping[str, str]] = None, client_request_id: Optional[str] = None, response_hook: Optional[ConnectorResponseHook] = None) -> bytes
Get file content using path
This operation gets the content of a file using the file path.
Swagger operation ID: GetFileContentByPath.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
path
|
str
|
Select a file. |
required |
infer_content_type
|
Optional[bool]
|
Infer content-type based on extension. |
None
|
timeout
|
Optional[float]
|
The request timeout in seconds. |
None
|
headers
|
Optional[Mapping[str, str]]
|
Additional HTTP request headers. |
None
|
client_request_id
|
Optional[str]
|
A caller-provided request identifier. |
None
|
response_hook
|
Optional[ConnectorResponseHook]
|
A callback invoked with the connector response. |
None
|
Returns:
| Name | Type | Description |
|---|---|---|
bytes |
bytes
|
The connector operation result. |
Raises:
| Type | Description |
|---|---|
ConnectorException
|
If the connector request fails. |
get_file_content
async
get_file_content(id: str, *, infer_content_type: Optional[bool] = None, timeout: Optional[float] = None, headers: Optional[Mapping[str, str]] = None, client_request_id: Optional[str] = None, response_hook: Optional[ConnectorResponseHook] = None) -> bytes
Get file content
This operation gets the content of a file.
Swagger operation ID: GetFileContent.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
Select a file. |
required |
infer_content_type
|
Optional[bool]
|
Infer content-type based on extension. |
None
|
timeout
|
Optional[float]
|
The request timeout in seconds. |
None
|
headers
|
Optional[Mapping[str, str]]
|
Additional HTTP request headers. |
None
|
client_request_id
|
Optional[str]
|
A caller-provided request identifier. |
None
|
response_hook
|
Optional[ConnectorResponseHook]
|
A callback invoked with the connector response. |
None
|
Returns:
| Name | Type | Description |
|---|---|---|
bytes |
bytes
|
The connector operation result. |
Raises:
| Type | Description |
|---|---|
ConnectorException
|
If the connector request fails. |
list_folder
list_folder(id: str, *, timeout: Optional[float] = None, headers: Optional[Mapping[str, str]] = None, client_request_id: Optional[str] = None, response_hook: Optional[ConnectorResponseHook] = None) -> AsyncItemPaged[dict[str, Any]]
List files in folder
This operation gets the list of files and subfolders in a folder.
Returns a single-page Azure Core async collection.
Swagger operation ID: ListFolder.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
Select a folder. |
required |
timeout
|
Optional[float]
|
The request timeout in seconds. |
None
|
headers
|
Optional[Mapping[str, str]]
|
Additional HTTP request headers. |
None
|
client_request_id
|
Optional[str]
|
A caller-provided request identifier. |
None
|
response_hook
|
Optional[ConnectorResponseHook]
|
A callback invoked with the connector response. |
None
|
Returns:
| Type | Description |
|---|---|
AsyncItemPaged[dict[str, Any]]
|
AsyncItemPaged[dict[str, Any]]: An Azure Core pager over connector
results. Consume it with |
Raises:
| Type | Description |
|---|---|
ConnectorException
|
If the connector request fails. |
list_root_folder
list_root_folder(*, timeout: Optional[float] = None, headers: Optional[Mapping[str, str]] = None, client_request_id: Optional[str] = None, response_hook: Optional[ConnectorResponseHook] = None) -> AsyncItemPaged[dict[str, Any]]
List files in root folder
This operation gets the list of files and subfolders in the root folder.
Returns a single-page Azure Core async collection.
Swagger operation ID: ListRootFolder.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
timeout
|
Optional[float]
|
The request timeout in seconds. |
None
|
headers
|
Optional[Mapping[str, str]]
|
Additional HTTP request headers. |
None
|
client_request_id
|
Optional[str]
|
A caller-provided request identifier. |
None
|
response_hook
|
Optional[ConnectorResponseHook]
|
A callback invoked with the connector response. |
None
|
Returns:
| Type | Description |
|---|---|
AsyncItemPaged[dict[str, Any]]
|
AsyncItemPaged[dict[str, Any]]: An Azure Core pager over connector
results. Consume it with |
Raises:
| Type | Description |
|---|---|
ConnectorException
|
If the connector request fails. |
extract_folder
async
extract_folder(source: str, destination: str, *, overwrite: Optional[bool] = None, create_folders: Optional[bool] = None, timeout: Optional[float] = None, headers: Optional[Mapping[str, str]] = None, client_request_id: Optional[str] = None, response_hook: Optional[ConnectorResponseHook] = None) -> dict[str, Any] | None
Extract archive to folder
This operation extracts an archive file into a folder (example: .zip).
Swagger operation ID: ExtractFolderV2.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
source
|
str
|
Path to the archive file. |
required |
destination
|
str
|
Path to the destination folder. |
required |
overwrite
|
Optional[bool]
|
Overwrites the destination files if set to 'true'. |
None
|
create_folders
|
Optional[bool]
|
Extracts folders from archive if set to 'true'. |
None
|
timeout
|
Optional[float]
|
The request timeout in seconds. |
None
|
headers
|
Optional[Mapping[str, str]]
|
Additional HTTP request headers. |
None
|
client_request_id
|
Optional[str]
|
A caller-provided request identifier. |
None
|
response_hook
|
Optional[ConnectorResponseHook]
|
A callback invoked with the connector response. |
None
|
Returns:
| Type | Description |
|---|---|
dict[str, Any] | None
|
dict[str, Any] | None: The connector operation result. |
Raises:
| Type | Description |
|---|---|
ConnectorException
|
If the connector request fails. |