1. Email Sending: Send emails programmatically, which is ideal for transactional emails. 2. Email Reading: Access and read emails, useful for applications that need to process incoming messages. 3. Label Management: Create and manage labels to organize emails efficiently. 4. Draft Management: Save and manage email drafts before sending.