Gmail tap class.
Built with the Meltano SDK for Singer Taps and Targets.
catalog
state
discover
about
stream-maps
schema-flattening
Setting | Required | Default | Description |
---|---|---|---|
oauth_credentials.client_id | False | None | Your google client_id |
oauth_credentials.client_secret | False | None | Your google client_secret |
oauth_credentials.refresh_token | False | None | Your google refresh token |
user_id | False | me | The user's email address. The special value me can be used to indicate the authenticated user. More info here |
messages.include_spam_trash | False | 0 | Include messages from SPAM and TRASH in the results. |
stream_maps | False | None | Config object for stream maps capability. For more information check out Stream Maps. |
stream_map_config | False | None | User-defined config values to be used within map expressions. |
flattening_enabled | False | None | 'True' to enable schema flattening and automatically expand nested properties. |
flattening_max_depth | False | None | The max depth to flatten schemas. |
A full list of supported settings and capabilities is available by running: tap-gmail --about
-
Developer TODO:
Update the below as needed to correctly describe the install procedure. For instance, if you do not have a PyPi repo, or if you want users to directly install from your git repo, you can modify this step as appropriate.
poetry install
poetry run tap-gmail
This Singer tap will automatically import any environment variables within the working directory's
.env
if the --config=ENV
is provided, such that config values will be considered if a matching
environment variable is set either in the terminal context or in the .env
file.
Look at the ./generate_refresh_token.py file to generate a refresh token
You can easily run tap-gmail
by itself or in a pipeline using Meltano.
tap-gmail --version
tap-gmail --help
tap-gmail --config CONFIG --discover > ./catalog.json
-
Developer TODO:
As a first step, scan the entire project for the text "TODO:
" and complete any recommended steps, deleting the "TODO" references once completed.
pipx install poetry
poetry install
Create tests within the tap_gmail/tests
subfolder and
then run:
poetry run pytest
You can also test the tap-gmail
CLI interface directly using poetry run
:
poetry run tap-gmail --help
Testing with Meltano
Note: This tap will work in any Singer environment and does not require Meltano. Examples here are for convenience and to streamline end-to-end orchestration scenarios.
Your project comes with a custom meltano.yml
project file already created. Open the meltano.yml
and follow any "TODO" items listed in
the file.
Next, install Meltano (if you haven't already) and any needed plugins:
# Install meltano
pipx install meltano
# Initialize meltano within this directory
cd tap-gmail
meltano install
Now you can test and orchestrate using Meltano:
# Test invocation:
meltano invoke tap-gmail --version
# OR run a test `elt` pipeline:
meltano elt tap-gmail target-jsonl
See the dev guide for more instructions on how to use the SDK to develop your own taps and targets.