Skip to main content
GET
https://api.enviaai.app
/
v1
/
instances
/
{instanceId}
/
qrcode
Obter QR Code
curl --request GET \
  --url https://api.enviaai.app/v1/instances/{instanceId}/qrcode \
  --header 'Authorization: Bearer <token>'
{
  "success": true,
  "data": {
    "qrCode": "data:image/png;base64,iVBORw0KGgo...",
    "expiresAt": "2026-02-03T12:05:00.000Z",
    "status": "qr_pending"
  }
}

Path Parameters

instanceId
string
required
ID da instância

Response

qrCode
string
QR Code em Base64 (data:image/png;base64,…)
expiresAt
string
Timestamp de expiração
status
string
Status atual da instância

Exemplo

const qr = await client.instances.getQRCode('inst_abc123');

if (qr.qrCode) {
  console.log('QR Code:', qr.qrCode);
  console.log('Expira em:', qr.expiresAt);
} else {
  console.log('Instância já conectada');
}
{
  "success": true,
  "data": {
    "qrCode": "data:image/png;base64,iVBORw0KGgo...",
    "expiresAt": "2026-02-03T12:05:00.000Z",
    "status": "qr_pending"
  }
}

Exibindo o QR Code

HTML

<img id="qrcode" src="" alt="QR Code" />

<script>
const response = await fetch('/api/qrcode');
const { qrCode } = await response.json();
document.getElementById('qrcode').src = qrCode;
</script>

React

function QRCode({ instanceId }) {
  const [qr, setQr] = useState(null);

  useEffect(() => {
    const interval = setInterval(async () => {
      const { data } = await client.instances.getQRCode(instanceId);
      if (data.status === 'connected') {
        clearInterval(interval);
      } else if (data.qrCode) {
        setQr(data.qrCode);
      }
    }, 2000);

    return () => clearInterval(interval);
  }, [instanceId]);

  return qr ? <img src={qr} alt="Scan QR Code" /> : <p>Carregando...</p>;
}

Fluxo de Conexão

1

Solicitar QR

Chame GET /instances/{id}/qrcode
2

Exibir QR

Mostre a imagem Base64 para o usuário
3

Aguardar scan

Faça polling a cada 2-3 segundos
4

Conexão estabelecida

Status muda para connected

Erros

CódigoDescrição
instance_not_foundInstância não existe
already_connectedJá está conectada
official_api_instanceUse API Oficial para conectar