Automate Screenshots and Metadata Checks with SnapAPI + Zapier (No Code Required)
Source: Dev.to
SnapAPI + Zapier Integration Guide
Automate screenshots, metadata checks, and OG audits — no code required.
What You Can Automate
Zapier connects apps with “if this, then that” workflows called Zaps. Connect it to SnapAPI and you can:
- Screenshot every new form submission URL – someone fills out a lead form with their website, Zapier screenshots it automatically and saves it to Google Drive.
- Audit OG tags on every new blog post – your CMS publishes a post, Zapier checks the metadata and alerts you in Slack if
og:imageis missing. - Monitor competitor pages – every Monday, take a fresh screenshot of a list of competitor URLs and save them to a Notion database.
None of these require writing code. Zapier’s built‑in Webhooks action handles the SnapAPI call.
What You Need
- A Zapier account – the free tier (100 tasks/month) is enough to get started.
- A SnapAPI API key – free at , 100 calls/month, no credit card required.
Step‑by‑Step: Screenshot a URL with Zapier
This example Zap screenshots any new Google Form response URL and saves the image to Google Drive. Adapt the trigger to whatever fits your workflow.
Step 1 – Create a New Zap
Go to zapier.com/app/zaps and click + Create Zap.
Step 2 – Set the Trigger
Choose your trigger app and event. For this example:
- App: Google Forms
- Trigger Event: New Response in Spreadsheet
Connect your Google account and select the spreadsheet. In the “Set up trigger” step, map the column that contains the URL you want to screenshot.
Step 3 – Add a Webhooks by Zapier Action
- Click + to add an action step.
- App: Webhooks by Zapier
- Action Event: GET
- Click Continue.
Step 4 – Configure the Webhooks Action
URL
https://api.snapapi.tech/v1/screenshot
Query String Params – add two rows:
| Key | Value |
|---|---|
url | {{your URL field from the trigger}} |
format | png |
Headers – add one row:
| Key | Value |
|---|---|
x-api-key | YOUR_SNAPAPI_KEY |
Response Type: File
Step 5 – Test the Step
Click Test step. Zapier will make a live request to SnapAPI. If successful, you’ll see a file object in the response – that’s your screenshot.
Step 6 – Add a Final Action (Save or Send)
Add another action after the Webhooks step:
- Save to Google Drive: App = Google Drive, Action Event = Upload File, File = the Webhooks response file.
- Or send via Slack: App = Slack, Action Event = Send File, File = the Webhooks response.
Step 7 – Turn on the Zap
Click Publish. The Zap runs automatically from now on.
Alternative: Code by Zapier (for Metadata)
If you need the JSON metadata (og:title, og:image, etc.) rather than the image file, use Code by Zapier instead of Webhooks.
App: Code by Zapier
Action Event: Run Javascript
const url = inputData.pageUrl; // mapped from your trigger
const apiKey = 'YOUR_SNAPAPI_KEY';
const res = await fetch(
`https://api.snapapi.tech/v1/metadata?url=${encodeURIComponent(url)}`,
{ headers: { 'x-api-key': apiKey } }
);
const data = await res.json();
return {
title: data.og_title || data.title,
description: data.og_description || data.description,
og_image: data.og_image,
missing_og: !data.og_image ? 'YES' : 'NO'
};
The output fields (title, description, og_image, missing_og) become available in downstream steps – pipe them into Slack, Notion, or a Google Sheet.
Three Complete Zap Ideas
Zap 1 – Screenshot New Leads Automatically
| Step | Action |
|---|---|
| Trigger | Google Sheets → New Row (lead’s website URL in column B) |
| Action 1 | Webhooks by Zapier → GET https://api.snapapi.tech/v1/screenshot?url={{Column B}}&format=png with x-api-key header |
| Action 2 | Google Drive → Upload File (save screenshot, named by lead name) |
Result: Every new lead in your CRM gets a screenshot of their site saved to Drive automatically.
Zap 2 – OG Tag Alert on New Blog Posts
| Step | Action |
|---|---|
| Trigger | RSS by Zapier → New Item in Feed (your blog RSS URL) |
| Action 1 | Code by Zapier → run the metadata snippet above with inputData.pageUrl = RSS Item URL |
| Action 2 | Filter by Zapier → Only continue if missing_og equals YES |
| Action 3 | Slack → Send Message (“⚠️ Missing og:image on: {{RSS Item URL}}”) |
Result: Slack alert every time a post goes live without an OG image.
Zap 3 – Weekly Competitor Screenshot Archive
| Step | Action |
|---|---|
| Trigger | Schedule by Zapier → Every Monday at 9 am |
| Action 1 | Webhooks by Zapier → GET screenshot for competitor URL #1 |
| Action 2 | Google Drive → Upload File |
| … | (duplicate actions for each competitor URL) |
Result: A weekly visual archive of competitor homepages in a dated Google Drive folder.
Get Your Free SnapAPI Key
100 API calls/month, no credit card, active in 30 seconds.