curl · bash · shell scripts
Gerador de Empresa via curl
A API REST do FakeForge gera empresa fictícia completa (CNPJ, razão social, endereço, telefone) direto via curl. Um GET com type=company retorna o objeto todo; combinado com jq, monta CSV ou SQL pra seed de banco.
TL;DR
curl "https://fakeforge.com.br/api/generate?type=company&quantity=50"Rota 1: API REST oficial
# 5 empresas em JSON
curl "https://fakeforge.com.br/api/generate?type=company&quantity=5"
# 500 empresas em SQL, pronto pra seed
curl -X POST https://fakeforge.com.br/api/generate \
-H "Content-Type: application/json" \
-d '{"type":"company","quantity":500,"format":"sql"}' \
> seed_empresas.sql
# 500 empresas em CSV
curl -X POST https://fakeforge.com.br/api/generate \
-H "Content-Type: application/json" \
-d '{"type":"company","quantity":500,"format":"csv"}' \
> empresas.csvRota 2: algoritmo local em bash (offline)
Pra gerar CNPJ sem chamar a API (útil em pipelines isolados), o mod-11 dá pra fazer com aritmética pura de bash:
#!/usr/bin/env bash
# empresa.sh - gera CNPJ mod-11 localmente, sem API
gerar_cnpj() {
local n=()
for i in {1..8}; do n+=($((RANDOM % 10))); done
n+=(0 0 0 1) # sufixo /0001 (matriz)
local pesos1=(5 4 3 2 9 8 7 6 5 4 3 2)
local soma=0
for i in "${!pesos1[@]}"; do soma=$((soma + n[i] * pesos1[i])); done
local resto=$((soma % 11))
local d1=$((resto < 2 ? 0 : 11 - resto))
n+=($d1)
local pesos2=(6 5 4 3 2 9 8 7 6 5 4 3 2)
soma=0
for i in "${!pesos2[@]}"; do soma=$((soma + n[i] * pesos2[i])); done
resto=$((soma % 11))
local d2=$((resto < 2 ? 0 : 11 - resto))
n+=($d2)
local cnpj="${n[0]}${n[1]}.${n[2]}${n[3]}${n[4]}.${n[5]}${n[6]}${n[7]}/${n[8]}${n[9]}${n[10]}${n[11]}-${n[12]}${n[13]}"
echo "$cnpj"
}
for i in $(seq 1 5); do
gerar_cnpj
doneShell script — CSV de empresas pronto pro seed
#!/usr/bin/env bash
# seed-empresas.sh - popula staging com 1000 empresas fictícias
curl -s -X POST https://fakeforge.com.br/api/generate \
-H "Content-Type: application/json" \
-d '{"type":"company","quantity":1000,"format":"csv"}' \
> empresas.csv
echo "COPY empresas(razao_social, cnpj, estado, telefone) FROM 'empresas.csv' CSV HEADER;" \
| psql "$DATABASE_URL"
echo "1000 empresas importadas pra staging"Comparação: qual escolher
| Cenário | API REST | Algoritmo bash local |
|---|---|---|
| Só CNPJ simples | ✅ | ✅ |
| Empresa completa correlacionada | ✅ | ❌ só CNPJ |
| Export CSV/SQL nativo | ✅ | ❌ |
| 100% offline | ❌ | ✅ |
| Custo | Free 50/dia | R$0 |
Perguntas frequentes
Como gerar empresa fictícia completa via curl?+
GET https://fakeforge.com.br/api/generate?type=company&quantity=50 retorna CNPJ, razão social, endereço e telefone correlacionados em JSON. 100 chamadas grátis por dia.
Dá pra exportar direto em SQL pra popular banco de staging?+
Sim. Use POST com {"type":"company","format":"sql"} no body e o retorno já vem como INSERT pronto pra rodar.
Existe jeito de gerar CNPJ sem chamar a API?+
Sim. O algoritmo local em bash implementa o mod-11 da Receita direto em aritmética de shell, sem depender de rede.
Preciso de autenticação pra usar a API de empresa?+
Não pro plano free (50 chamadas/dia). Planos pagos usam header de API key, documentado em /docs.