FTP reply code 200 is the general-purpose success response confirming that the server processed the command. It is used for commands that do not have a more specific success code — such as TYPE (setting transfer mode), MODE, STRU, PORT, NOOP, and SITE commands. Unlike 250 (which specifically confirms file/directory operations), 200 confirms protocol-level commands that configure the session. For example, TYPE I returns 200 to confirm binary transfer mode is set, and NOOP returns 200 to confirm the connection is still alive.
The client sent TYPE I (binary) or TYPE A (ASCII) and the server confirmed the transfer mode was set. This is issued before every file transfer to ensure the correct encoding.
The client sent NOOP to prevent the server from timing out an idle connection. The server responds with 200 to confirm it is still alive and the connection is active.
In active mode, the client sends PORT to tell the server which IP and port to connect back to for data transfers. A 200 response confirms the server accepted the address.
The client sent a server-specific SITE command (such as SITE CHMOD to change permissions) and the server executed it successfully. SITE commands are vendor-specific extensions.
Code 200 is a success response. If you are receiving it, the command was executed correctly. Continue with the next command in your FTP workflow.
If files are being corrupted during transfer, check the TYPE response. Use TYPE I for binary files (images, archives, executables) and TYPE A only for plain text files.
curl -v ftp://ftp.example.com/ -Q 'TYPE I'