DEV Community

Arman Tarkhanian
Arman Tarkhanian

Posted on

2023-07-21: Webhooks

I think I'm just going to hold off talking about the game project till I actually had a chance to do literally anything, since I've been busy with a bunch of stuff.

So I'll just jump straight into what I've been doing for work.

Most of what I've been doing is messing around with various no-code sites that are designed to handle automation of data entry, and we used four different approaches to do that. I'll go in order of what we did.

The first two were with Zapier. I worked with M to create the first Zap in which we took our Typeform data and fed it into a Google Sheet and a Slack message and an email. That worked fine as of last Friday.

The second one, my boss wanted me to work on it alone. This time, I was to make the same Zap but using webhooks to send to Discord and Slack. That was definitely a lot more of a pain, since for whatever reason, parsing out the data from the Typeform JSON came out extremely weird through Zapier's interface:

Image description

Even though it looks perfectly normal in the actual JSON that I get:

Image description

I'm not sure what's up with that.

Anyway, that worked fine after I added a Python code block to parse out the data to remove those commas and whatever. After that, it just sends a POST to both Discord and Slack with the same exact data. Simple enough.

Image description
Image description

Next up, for the third one, I had to make the data go to a Notion CRM table. This one was definitely much simpler, but at the cost of not being customizable at all. I couldn't even carry over the submission date/time because it just wasn't an option. I personally don't think it's a good method of storing data at all, but my boss is saying it's meant for our internal testing for the folks who are not as technically inclined or something like that. I do like that Notion has AI-generated columns though.

Finally, the task was to create a similar thing with Pipedream, which is more oriented toward developers, and as such, it is probably the most complex yet customizable one of the bunch. However, I noticed the UI is extremely glitchy. There is some possibility for using YAMLs to make it even more programmatic, just like with GitHub Actions and Kubernetes.

Overall, I think Zapier is the best in terms of trade-off between customizability and simplicity. Zapier can be dead simple, or we can make it sufficiently customized with Python insertion. I don't think we necessarily need that much control at this stage. Maybe later on we'll need an even more robust CI/CD pipeline, but for now: Zapier.

Anyway, till next week, cheers!

Top comments (0)