---
title: "Create a new FTP account on the caller's account"
method: POST
path: "/api/client/ftp-accounts"
tags: ["Client - FTP Accounts"]
---

# Create a new FTP account on the caller's account

`POST /api/client/ftp-accounts`

## Request body

- object
  - `ftp_username` string, required
  - `ftp_password` string, required
  - `ftp_path` string, required — Relative path under the account home only (e.g. test). Never pass a full /home/<username>/... path.

## Response `201`

FTP account created successfully

- HostingAccountFtpAccount — FTP Account model for HostingAccount
  - `id` integer — ID of the FTP account
  - `hosting_account_id` integer — ID of the related hosting account
  - `domain_id` integer, nullable — ID of the related domain (nullable)
  - `ftp_username` string — FTP username
  - `ftp_username_prefix` string, nullable — FTP username prefix (nullable)
  - `ftp_path` string, nullable — Subdirectory under the hosting account home only (e.g. public_html or test). Do not send /home/<username>/... or home/<username>/...; the system adds the account home root.
  - `ftp_quota` integer, nullable — FTP quota in MB (nullable)
  - `ftp_quota_type` string, nullable — FTP quota type (nullable)
  - `ftp_username_with_prefix` string — FTP username with prefix
  - `ftp_host_text` string — FTP host address
  - `ftp_port_text` string — FTP port number
  - `ftp_path_text` string — FTP path
  - `ftp_quota_text` string — FTP quota as text

## Other responses

- `422` — Validation or creation failure (e.g. invalid ftp_path, quota reached, duplicate)

---

[API](https://skmtc.dev/adminbolt/apis/adminbolt-api-documentation.md) · [All operations](https://skmtc.dev/adminbolt/apis/adminbolt-api-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/adminbolt/adminbolt-api-documentation/revisions/bf4f36fbfbd3/schema)
