A partir do Node.js 18, o fetch já vem embutido — não precisa instalar nenhuma biblioteca HTTP extra pra consumir a API.

Requisição básica

const TOKEN = process.env.SCRAPEGRAM_TOKEN;

async function buscarPerfil(username) {
  const resp = await fetch(
    `https://scrapegram.cloud/api/v1/instagram/profile?username=${username}`,
    { headers: { Authorization: `Bearer ${TOKEN}` } }
  );
  if (!resp.ok) throw new Error(`HTTP ${resp.status}`);
  return resp.json();
}

const perfil = await buscarPerfil("nike");
console.log(perfil.followers);

Tratando erros de forma explícita

try {
  const perfil = await buscarPerfil("nike");
  console.log(perfil);
} catch (e) {
  console.error("Falha ao buscar perfil:", e.message);
}

Consultando vários perfis em paralelo (com cuidado)

const usuarios = ["nike", "adidas", "puma"];
const resultados = await Promise.all(usuarios.map(buscarPerfil));

Cuidado: disparar tudo em paralelo sem controle pode estourar seu rate limit rapidinho — veja rate limit e proxies antes de escalar isso em produção.