A API do GetQR está em beta e disponível para workspaces selecionados. Os detalhes podem mudar antes do lançamento oficial.
qrType, e o tipo define o que data deve conter. Este guia mostra o formato de cada tipo, um corpo de requisição que funciona e o que você ainda pode alterar depois que o código for impresso.
Os exemplos são corpos de requisição para Criar um QR code. Envie-os assim:
Todos os tipos em resumo
Como um QR code é resolvido
Todo QR code é um link curto mais um payload. Dois campos guardam o conteúdo:
Regras para todos os tipos:
- Padrões. Na criação, um
link.urlomitido ou vazio passa a serdata, e você pode omitir o objetolinkinteiro. Quando os dois são enviados e são diferentes, vale olink.url. Envie os dois iguais ou envie sódata. - O que a imagem codifica. A imagem codifica o link curto em todos os tipos, exceto
wifi. Assim, você pode mudar para onde um código impresso leva, e as leituras dele são rastreadas. Um QR code de WiFi codifica a própria rede: não dá para alterá-lo depois de impresso, e as leituras dele não são rastreadas. - Esquemas.
link.urlaceita apenashttp:,https:,wifi:,mailto:,sms:ebegin:. Qualquer outro, incluindogeo:,smsto:,matmsg:etel:, recebe422 Invalid destination URL, mesmo quandodatao aceita. - Dados vazios. Um
datavazio pula a validação do tipo. Em um tipo de redirecionamento, olink.urlprecisa estar definido, ou a chamada recebe400 Missing destination URL. - Estrutura. Além da validação do tipo, o servidor não valida o payload. Um tipo JSON só precisa ser interpretável como um objeto JSON, e um vCard só precisa começar com
BEGIN:VCARD.
Website
qrType: "website". Guia do painel: QR code de Website.
Request body
422 Expected an http(s) URL, e.g. "https://example.com" for qrType "website".422 Invalid destination URL
Feedback
qrType: "feedback". Guia do painel: QR code de Feedback.
data é a URL http(s) do formulário de feedback, por exemplo um Google Form ou uma página de avaliações. Todo o resto funciona como em Website.
Request body
Pagamento
qrType: "payment". Guia do painel: QR code de Pagamento.
data é a URL de pagamento do provedor, por exemplo:
paypal.me, paypal.com/paypalme, cash.app, venmo.com, buy.stripe.com, stripe.com, square.link e payoneer.com. No PayPal, o valor é o último segmento do caminho. Qualquer outra URL http(s) também funciona, mas o editor não a separa em provedor e valor. Todo o resto funciona como em Website.
Request body
qrType: "whatsapp". Guia do painel: QR code de WhatsApp.
data é um link wa.me: o número internacional em dígitos, sem +, opcionalmente com um texto pré-preenchido.
api.whatsapp.com/send. Todo o resto funciona como em Website.
Request body
Localização
qrType: "location". Guia do painel: QR code de Localização.
data é uma URL de mapa. Use este formato para manter o QR code editável no painel (query_place_id é opcional):
geo: passa na validação de data, mas é rejeitado como destino, então não o use. Todo o resto funciona como em Website.
Request body
App Link
qrType: "app". Guia do painel: QR code de App Link.
Request body
422 Invalid URL400 Missing destination URL
qrType: "email". Guia do painel: QR code de E-mail.
Request body
422 Expected a mailto URI, e.g. "mailto:[email protected]?subject=Hello" for qrType "email".
SMS
qrType: "sms". Guia do painel: QR code de SMS.
Request body
422 Expected an SMS URI, e.g. "sms:+14155550123?body=Hello" for qrType "sms".
WiFi
qrType: "wifi". Guia do painel: QR code de WiFi.
Request body
422 Expected a Wi-Fi payload, e.g. "WIFI:T:WPA;S:MyNetwork;P:secret;H:false;" for qrType "wifi".
PDF e arquivos de imagem ou vídeo
qrType: "pdf", "image" ou "video". Guias do painel: PDF, Image, Video.
Um arquivo por QR code: pacotes de PDFs e galerias de imagens não estão disponíveis na API. Veja Não suportado pela API.
fileId dele, veja Arquivos.
vCard
qrType: "vcard". Guia do painel: QR code de vCard.
A página de destino e o editor leem apenas os formatos de linha abaixo. Outras variantes, como
TEL;CELL: ou EMAIL;TYPE=INTERNET:, são armazenadas, mas não aparecem na página.
N:<last>;<first>;;;: sobrenome e nome. Criador: ambos obrigatórios, até 40 caracteres.FN:<first> <last>: não é lido pela página. O rótulo na lista do painel vem daqui.ORG:<company>eTITLE:<role>: empresa e cargo. Criador: até 40 caracteres.TEL;TYPE=HOME:,TEL;TYPE=CELL:,TEL;TYPE=WORK:,TEL;TYPE=FAX:: números de telefone, celular, trabalho e fax (+e dígitos).EMAIL:<email>: endereço de e-mail.URL:<url>: site.NOTE:<text>: resumo. Escape\\,\n,\;e\,. Criador: até 200 caracteres.ADR:;;<street>;<city>;<state>;<zip>;<country>: endereço.X-SOCIALPROFILE;TYPE=<platform>:<url>ouURL;TYPE=<PLATFORM>:<url>: links de redes sociais, uma linha por plataforma.PHOTO;VALUE=URI:<url>: URL da imagem de perfil. Prevalece sobre qualquer ID de arquivo.X-GETQR-IMAGE-FILEID:<fileId>: imagem de perfil (targetlogo).X-GETQR-PAGE-LOGO-FILEID:<fileId>: logo da página (targetlogo).X-GETQR-LANDING-THEME:p|<0-4>ouX-GETQR-LANDING-THEME:c|#RRGGBB|#RRGGBB|#RRGGBB: tema da página de destino, seja um índice predefinido (de 0 a 4), seja cores personalizadas de fundo, botão e ícone.
facebook, whatsapp, instagram, youtube, tiktok, messenger, snapchat, linkedin, x, reddit, pinterest, telegram, wechat, viber, line.
Request body
422 Expected a vCard payload starting with "BEGIN:VCARD" for qrType "vcard".
Social Media
qrType: "social". Guia do painel: QR code de Social Media.
Campos em
data:
Request body
422 Expected a JSON object describing the social profile page for qrType "social".
Multi-Link
qrType: "multilink". Guia do painel: QR code de Multi-Link.
Os campos em
data são os de Social Media, exceto que firstName, lastName e summary são substituídos por:
Em
customItems, logoFileId é opcional: um ícone padrão é exibido. Criador: pelo menos um link social ou um item personalizado não vazio.
Request body
422 Expected a JSON object describing the multi-link page for qrType "multilink".
Evento
qrType: "event". Guia do painel: QR code de Evento.
Campos em
data:
Tipos de evento
Tipos de evento
conference, seminar, workshop, training, webinar, meetup, networking, corporateEvent, productLaunch, tradeShow, jobFair, fundraiser, charity, wedding, engagement, birthday, anniversary, babyShower, graduation, reunion, party, religious, funeralMemorial, ceremony, concert, festival, clubNight, theater, comedy, filmScreening, exhibition, sports, tournament, raceMarathon, fitnessClass, foodDrink, market, openHouse, community, schoolEvent, kids, travelTourComodidades
Comodidades
Request body
422 Expected a JSON object describing the event page for qrType "event".
Arquivos em QR codes
Registre um arquivo com Arquivos, envie-o e depois passe ofileId dele. Use o target que corresponde ao uso:
pdf,image,video. O conteúdo de um QR code de PDF, Image ou Video.logo. Imagens de perfil, logos de página, ícones de links personalizados e logos centrais.
fileId, retornados na criação e no PATCH quando fileId é enviado:
IDs de arquivo dentro de um payload (
fileId, pageLogoFileId, customItems[].logoFileId, linhas X-GETQR-*-FILEID) não são validados. Eles só são exibidos quando enviados com o target logo. O QR code passa a ser dono deles, então a limpeza não os remove.
Mudança de tipo
Você pode alterar oqrType com Atualizar um QR code. Envie um data compatível com o novo tipo: o payload armazenado pertence ao tipo antigo, então uma mudança sem ele é rejeitada.
Depois de uma atualização, o destino é resolvido nesta ordem:
vcard,social,multilink,event: sempre a página hospedada.- Um pacote de PDFs ou uma galeria de imagens criados no painel: a página de destino deles.
pdf,image,video: a URL do arquivo (um novofileIdou, se não houver, o armazenado).link.url, quando enviado.- O
dataalterado. - A URL armazenada.
- Saindo de
pdf,imageouvideo. OfileIde qualquer pacote ou galeria são limpos. - Entrando em
pdf,imageouvideo. Envie também ofileId, ou o armazenado é reaproveitado, e ele pode ser uma foto de vCard. - Saindo de
app. O nome do app,link.ioselink.androidsão limpos, então os celulares seguem o novo destino. - Entrando em
wifi. A imagem passa a codificar o payload bruto. Os códigos já impressos continuam com o link curto, que agora redireciona para uma URLwifi:. - Saindo de
wifi. Os códigos impressos mantêm a rede antiga. - Entrando em
vcard,social,multilinkouevent. O link curto passa a apontar para a nova página hospedada. - Saindo de
vcard,social,multilinkouevent. Envie o novodata. O destino o acompanha.
link.url deles retorna 422.
Não suportado pela API
Estes recursos do painel não fazem parte da API v1. Campos desconhecidos são descartados sem erro, então enviá-los não tem efeito.
Pacotes e galerias criados no painel ainda podem ser lidos, pausados e excluídos pela API, mas os arquivos deles não podem ser alterados por ela.
Problemas comuns
422 Invalid destination URL
422 Invalid destination URL
O
link.url usa um esquema para o qual o link curto não consegue redirecionar, como geo:, smsto:, matmsg: ou tel:. Use os formatos desta página.400 Missing destination URL
400 Missing destination URL
data está vazio e não há link.url. Para app, defina pelo menos um entre link.ios, link.android, link.url ou data.O data da resposta é um link curto, não a minha URL
O data da resposta é um link curto, não a minha URL
Nos tipos de link, o
data armazenado é o link curto. Leia o destino em url.A página de destino não mostra detalhes do meu payload
A página de destino não mostra detalhes do meu payload
A página lê apenas os campos e formatos de linha listados para o tipo. Outros campos são armazenados, mas não exibidos.