I need a script upload all the files in the file path into a ftp.

I need a script that will upload all the files to an FTP and send out an email notification.

I have the FTP credential and the ssh key. I have the all the username, password, and SMTP for the email.

Thank you in advance for your help.

What have you tried already.
Put your code sample and describe / show the issues you any or may not be having. It is there where we can assist.
If you had not done that yet, just use your search engine of choice and use the sting ‘powershell ftp’
You’ll get several hits leading to examples on how to do what you are asking.

For example:
PowerShell FTP Client Module

The PSFTP module allow you to connect and manage the contents of ftp account. Module contain set of function to get list of items, download and send files on ftp location.
https://gallery.technet.microsoft.com/scriptcenter/PowerShell-FTP-Client-db6fe0cb