The JavaMail API allows Java applications to send and receive email. It includes core classes like Session, Message, Transport, and Store. A Session represents a mail session with an email server. Messages can be composed and sent using Transport, and email can be retrieved from mailboxes using Store and Folder classes. The API supports authentication, sending attachments, and receiving notifications about mail events.