Guias de integração

Salvar a imagem de um QR Code

Decodifique a resposta em base64 para salvar o PNG ou SVG e exibir a imagem.

Gerar QR Code retorna a imagem em dados.imagem_base64. Para usar o resultado, confirme o sucesso da requisição e decodifique esse campo.

Gere e salve o arquivo

Este exemplo usa JavaScript no servidor, em Node.js com fetch disponível. Salve-o como gerar-qr.mjs, configure PQNO_TOKEN e execute node gerar-qr.mjs:

import { writeFile } from 'node:fs/promises';

const resposta = await fetch('https://pqno.app/admin/api/encurtar-link/gerarqrcode', {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.PQNO_TOKEN}`,
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({ conteudo: 'https://pqno.app', formato: 'png', tamanho: 1024 })
});
const json = await resposta.json();
if (!resposta.ok || json.status !== 'ok') throw new Error(json.mensagem);
const imagem = Buffer.from(json.dados.imagem_base64, 'base64');
await writeFile(`qrcode.${json.dados.formato}`, imagem);

O arquivo será salvo como qrcode.png no diretório da execução. Para SVG, altere formato para svg; a mesma decodificação salva qrcode.svg.

Exiba a imagem em uma página

Você pode servir o arquivo salvo com o tipo informado em dados.mime ou montar uma URL de dados no servidor:

const src = `data:${json.dados.mime};base64,${json.dados.imagem_base64}`;

Use src no atributo src de uma imagem. Mantenha a requisição autenticada no servidor para preservar o token.

Ao gerar a imagem com link_id ou com a URL curta em conteudo, o QR Code usa o redirecionamento do link. Você poderá alterar o destino com Editar link mantendo o código do link.

Quando conteudo recebe o endereço de destino diretamente, esse endereço fica gravado na imagem. Para mudar o que ela contém, gere outra imagem.

Confira a leitura

Abra o arquivo gerado, teste com a câmera do celular e confira o destino antes de imprimir ou compartilhar. Mensagens de erro e limites devem ser tratados conforme Respostas e erros.