Make, Zapier and SheetsMenu
Make, Zapier and Google Sheets
Make, Zapier and Google Sheets have no Scrape Everything app. You call the API with their general HTTP step instead. Every endpoint works the same way: one POST with a Bearer header and a small JSON body.
The request
- Method:
POST - URL:
https://api.scrapeeverything.com/v1/instagram/profile. Swap the path for any endpoint in the endpoint reference. - Header:
Authorizationwith the valueBearer ssk_live_...(your API key). - Body: JSON, for example:
{
"username": "nasa",
"cache_days": 1
}The response is { success, data, meta }. Map your fields from data, for example data.follower_count. On an error, success is false and code says why (see Errors). cache_days: 1 makes a repeat lookup of the same target within a day free.
Make
- Add the HTTP app and its Make a request module.
- Enter the URL and choose
POST. - Add a header named
Authorizationwith the valueBearer ssk_live_.... - Send the body as JSON (content type
application/json), and turn on response parsing so the next modules can mapdatafields. - Set the module's timeout to 90 seconds or more, so slow requests are not cut off.
Zapier
- Add an action step with Webhooks by Zapier and choose POST. Webhooks by Zapier is a premium Zapier app, so it needs a paid Zapier plan.
- Enter the URL, set the payload type to JSON and add the body fields, for example
username. - Under Headers, add
Authorizationwith the valueBearer ssk_live_.... - Test the step, then map the returned fields (for example Data Follower Count) into the next steps.
cache_days: 1 in the body: if the first request finished on our side, the replay is a free cache hit. Requests that fail on our side are refunded.Google Sheets (Apps Script)
This script adds a Scrape Everything menu to your sheet. It reads usernames from column A and writes the numbers next to them. It runs from a menu, not as a cell formula, for two reasons: custom formulas must finish within 30 seconds, and they can recalculate on their own, which would spend credits again.
- In your sheet, open Extensions → Apps Script.
- Paste the script below and save it.
- In Project Settings → Script properties, add
SCRAPEEVERYTHING_API_KEYwith your key. Keep the key out of the sheet itself, where anyone with access could see it. - Reload the sheet, then run Scrape Everything → Fill Instagram profiles. Google asks you to authorize the script the first time.
// Extensions → Apps Script: paste this file and save.
// Project Settings → Script properties: add SCRAPEEVERYTHING_API_KEY = ssk_live_...
const API = "https://api.scrapeeverything.com";
function onOpen() {
SpreadsheetApp.getUi()
.createMenu("Scrape Everything")
.addItem("Fill Instagram profiles", "fillInstagramProfiles")
.addToUi();
}
function scrape(path, body) {
const key = PropertiesService.getScriptProperties().getProperty("SCRAPEEVERYTHING_API_KEY");
const res = UrlFetchApp.fetch(API + path, {
method: "post",
contentType: "application/json",
headers: { Authorization: "Bearer " + key },
payload: JSON.stringify(body),
muteHttpExceptions: true,
});
return JSON.parse(res.getContentText());
}
// Column A: usernames (row 1 is the header).
// Writes followers, posts and verified to B-D, or an error code to E.
// Rows that already have a value in B are skipped, so you can run it again.
function fillInstagramProfiles() {
const sheet = SpreadsheetApp.getActiveSheet();
for (let row = 2; row <= sheet.getLastRow(); row++) {
const username = String(sheet.getRange(row, 1).getValue()).trim();
if (!username || sheet.getRange(row, 2).getValue() !== "") continue;
const json = scrape("/v1/instagram/profile", { username, cache_days: 1 });
if (json.success) {
const d = json.data;
sheet.getRange(row, 2, 1, 4).setValues([[d.follower_count, d.post_count, d.is_verified, ""]]);
} else {
sheet.getRange(row, 5).setValue(json.code);
}
}
}Use another endpoint
Change the path and the body, then map the fields you need from json.data. For example, /v1/tiktok/profile with { username } returns follower_count, like_count and video_count.
More
Using n8n? There is a community node and ready-made workflows. Timeouts and retries for every tool are covered in Rate limits.