Skip to content

createFtpsProviderFactory

function createFtpsProviderFactory(options?: FtpsProviderOptions): ProviderFactory;

Defined in: src/providers/classic/ftp/FtpProvider.ts:241

Creates a provider factory for explicit or implicit FTPS connections.

The factory resolves TLS material from each connection profile, upgrades explicit sessions with AUTH TLS, and applies the configured PROT data-channel policy.

ParameterTypeDescription
optionsFtpsProviderOptionsOptional provider defaults.

ProviderFactory

Provider factory suitable for createTransferClient({ providers: [...] }).

import { createFtpsProviderFactory, createTransferClient } from "@zero-transfer/sdk";
const client = createTransferClient({ providers: [createFtpsProviderFactory()] });
const session = await client.connect({
host: "ftps.example.com",
provider: "ftps",
username: "deploy",
password: { env: "FTPS_PASSWORD" },
tls: { minVersion: "TLSv1.2" },
});
await client.connect({
host: "ftps.internal.example",
provider: "ftps",
username: "audit",
tls: {
ca: { path: "./certs/ca-bundle.pem" },
cert: { path: "./certs/client.crt" },
key: { path: "./certs/client.key" },
// Optional but recommended:
pinnedFingerprint256: "AA:BB:CC:DD:EE:FF:00:11:22:33:44:55:66:77:88:99:AA:BB:CC:DD:EE:FF:00:11:22:33:44:55:66:77:88:99",
},
});