Hello, folks! I've just completed creating a custo...
# ask-community-for-troubleshooting
e
Hello, folks! I've just completed creating a custom Python connector for Gmail and while it passes the check (both locally and running in the container), the connection fails to write to S3 for what appears to be a JSON validation error (see attached logs). The odd part is it appears it's trying to use OAuth despite the fact that I successfully configured it to use service account credentials (see screenshot). Any thoughts on what I'm doing wrong here?
✍️ 1
For reference, this is what my
spec.yaml
looks like, which I've basically just pilfered from the Google Sheets connector.
u
@[DEPRECATED] Marcos Marx turned this thread into Zendesk ticket 2599 to ensure timely resolution!
e
Hi. I would start by looking at the source data - i.e. look at the structure of the json data - in my experience with gmail api i noticed it depends on the data that is inside the email so the json could be different for each different emails i.e. if one has word file and the other has csv (if you always have csv it will be the same each time - and same goes for each file format) it will look different also, the body in the response from the api is a bit messy so it requires some insights about it in order to better help out. It`s probably the json format in the email the root cause here
e
Thank you for the insights, @Eli Sigal. If I'm understanding you correctly, you're suggesting that the JSON validation error messages are "second order" errors and that the underlying error stems from the response from Gmail. Is that right? I guess I'm confused how it ran correctly locally via the
python main.py
command but fails to run in the container. Is that a common issue with custom connectors?
For context, engineering leadership at my company have tasked me with building out a PoC of Airbyte (e.g. deployment, upgrading, using catalog connectors, and, most importantly, building custom connectors). I'm concerned that if I cannot iron out a solution, this will result in an item in the "CONs" column for our decision matrix.
e
Hi. use postman (or any other tool or just write code etc..) to inspect the json response and make sure your class is mapping out correctly the data. it should work fine - I do it
🙏 1
e
@Eli Sigal, you're a true mensch. I have to admit that I was skeptical given the error logs, but you were right on the mark: after taking a closer look at the returned response from Gmail, I realized the issue had to do with my catalog schema. With that said, I'm still confused by the error logs at the beginning of the sync logs given they remain the same ones I called out yesterday, but the PoC is working and my colleagues are eager to try it out for themselves. Thank you for you help! 🙌
n
Thanks for helping out, Eli!
octavia partying 1