API de conversão

Integre conversões SQL em pipelines, CI/CD ou ferramentas internas. O contrato abaixo descreve request, response e limites do plano gratuito.

Endpoints

GET/api/convertmetadados e exemplo de contrato
curl https://sqlshifter.com/api/convert
POST/api/convertconverter SQL

Headers

Content-Type: application/json
Authorization: Bearer SHIFT-XXXX-XXXX   # opcional — Plano Pro

Body

{
  "sql": "SELECT TOP 10 * FROM pedidos",
  "from": "sqlserver",
  "to": "postgresql"
}

cURL

curl -X POST https://sqlshifter.com/api/convert \
  -H "Content-Type: application/json" \
  -d '{"sql":"SELECT TOP 10 * FROM pedidos","from":"sqlserver","to":"postgresql"}'

Contrato de resposta

200 — sucesso

{
  "ok": true,
  "sql": "SELECT ... LIMIT 10",
  "warnings": ["TOP 10 convertido para LIMIT 10."],
  "warningsTotal": 3,
  "premiumTeaser": true
}
  • warnings lista visível (no plano gratuito, até 1 item).
  • warningsTotal total real de pontos de revisão.
  • premiumTeaser indica avisos ocultos no plano gratuito.

403 — limite mensal (20 conversões grátis)

{
  "ok": false,
  "error": "usage_limit",
  "message": "Limite de conversões gratuitas atingido."
}

403 — limite de linhas (grátis)

{
  "ok": false,
  "error": "lines_limit",
  "message": "Scripts com mais de 1000 linhas exigem o Plano Pro.",
  "maxLines": 1000
}

400 — dialeto inválido

{
  "ok": false,
  "error": "invalid_dialect",
  "message": "Rotas suportadas: sqlserver → postgresql e postgresql → sqlserver."
}

Rotas e aliases

OrigemDestinoAliases aceitos
sqlserverpostgresqlmssql, postgres, pg
postgresqlsqlservermesmos aliases

Plano Pro na API

Crie uma conta, assine na dashboard e use o header Authorization: Bearer SHIFT-… para remover os limites.