gmail.mdx 1.6 KB

12345678910111213141516171819202122232425262728293031323334
  1. ---
  2. title: '📬 Gmail'
  3. ---
  4. To use GmailLoader you must install the extra dependencies with `pip install --upgrade embedchain[gmail]`.
  5. The `source` must be a valid Gmail search query, you can refer `https://support.google.com/mail/answer/7190?hl=en` to build a query.
  6. To load Gmail messages, you MUST use the data_type as `gmail`. Otherwise the source will be detected as simple `text`.
  7. To use this you need to save `credentials.json` in the directory from where you will run the loader. Follow these steps to get the credentials
  8. 1. Go to the [Google Cloud Console](https://console.cloud.google.com/apis/credentials).
  9. 2. Create a project if you don't have one already.
  10. 3. Create an `OAuth Consent Screen` in the project. You may need to select the `external` option.
  11. 4. Make sure the consent screen is published.
  12. 5. Enable the [Gmail API](https://console.cloud.google.com/apis/api/gmail.googleapis.com)
  13. 6. Create credentials from the `Credentials` tab.
  14. 7. Select the type `OAuth Client ID`.
  15. 8. Choose the application type `Web application`. As a name you can choose `embedchain` or any other name as per your use case.
  16. 9. Add an authorized redirect URI for `http://localhost:8080/`.
  17. 10. You can leave everything else at default, finish the creation.
  18. 11. When you are done, a modal opens where you can download the details in `json` format.
  19. 12. Put the `.json` file in your current directory and rename it to `credentials.json`
  20. ```python
  21. from embedchain import App
  22. app = App()
  23. gmail_filter = "to: me label:inbox"
  24. app.add(gmail_filter, data_type="gmail")
  25. app.query("Summarize my email conversations")
  26. ```