A API do GetQR está em versão beta e só está disponível para alguns espaços de trabalho. Os detalhes podem mudar antes do lançamento geral.
qrType, e o tipo define o que data tem de conter. Este guia indica o formato de cada tipo, um corpo de pedido que funciona e o que ainda pode alterar depois de o código ser impresso.
Os exemplos são corpos de pedido para Criar um código QR. Envie-os assim:
Todos os tipos num relance
Como um código QR é resolvido
Cada código QR é uma ligação curta mais um payload. O conteúdo é transportado por dois campos:
Regras para todos os tipos:
- Predefinições. Na criação, um
link.urlomitido ou vazio passa a serdata, e pode omitir todo o objetolink. Quando ambos são enviados e são diferentes, prevalecelink.url. Envie-os iguais ou envie apenasdata. - O que a imagem codifica. A imagem codifica a ligação curta em todos os tipos, exceto
wifi. Assim, pode alterar o destino de um código impresso, e as respetivas leituras são registadas. Um código QR WiFi codifica a própria rede: não o pode alterar após a impressão e as leituras não são registadas. - Esquemas.
link.urlsó aceitahttp:,https:,wifi:,mailto:,sms:ebegin:. Qualquer outro, incluindogeo:,smsto:,matmsg:etel:, devolve422 Invalid destination URL, mesmo quandodatao aceita. - Data vazio. Um
datavazio ignora a validação do tipo. Num tipo de redirecionamento,link.urltem então de estar definido, caso contrário a chamada devolve400 Missing destination URL. - Estrutura. Para além da validação do tipo, o servidor não valida o payload. Um tipo JSON só tem de ser interpretável como objeto JSON, e um vCard só tem de começar por
BEGIN:VCARD.
Website
qrType: "website". Guia do painel: Código QR 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: Código QR de Feedback.
data é o URL http(s) do formulário de feedback, por exemplo um Google Form ou uma página de avaliações. Tudo o resto funciona como em Website.
Request body
Pagamento
qrType: "payment". Guia do painel: Código QR de Pagamento.
data é o URL de pagamento do fornecedor, por exemplo:
paypal.me, paypal.com/paypalme, cash.app, venmo.com, buy.stripe.com, stripe.com, square.link e payoneer.com. No PayPal, o montante é o último segmento do caminho. Qualquer outro URL http(s) também funciona, mas o editor não o separa em fornecedor e montante. Tudo o resto funciona como em Website.
Request body
qrType: "whatsapp". Guia do painel: Código QR WhatsApp.
data é uma ligação wa.me: o número internacional em dígitos sem +, opcionalmente com um texto predefinido.
api.whatsapp.com/send. Tudo o resto funciona como em Website.
Request body
Localização
qrType: "location". Guia do painel: Código QR de Localização.
data é o URL de um mapa. Use este formato para manter o código QR editável no painel (query_place_id é opcional):
geo: passa a validação de data, mas é rejeitado como destino, por isso não o utilize. Tudo o resto funciona como em Website.
Request body
App Link
qrType: "app". Guia do painel: Código QR de App Link.
Request body
422 Invalid URL400 Missing destination URL
qrType: "email". Guia do painel: Código QR de Email.
Request body
422 Expected a mailto URI, e.g. "mailto:[email protected]?subject=Hello" for qrType "email".
SMS
qrType: "sms". Guia do painel: Código QR de SMS.
Request body
422 Expected an SMS URI, e.g. "sms:+14155550123?body=Hello" for qrType "sms".
WiFi
qrType: "wifi". Guia do painel: Código QR WiFi.
Request body
422 Expected a Wi-Fi payload, e.g. "WIFI:T:WPA;S:MyNetwork;P:secret;H:false;" for qrType "wifi".
PDF, imagem e vídeo
qrType: "pdf", "image" ou "video". Guias do painel: PDF, Image, Video.
Um ficheiro por código QR: os conjuntos de PDF e as galerias de imagens não estão disponíveis na API. Consulte Não suportado na API.
fileId, consulte Ficheiros.
vCard
qrType: "vcard". Guia do painel: Código QR de vCard.
A página de destino e o editor só leem os formatos de linha abaixo. Outras variantes, como
TEL;CELL: ou EMAIL;TYPE=INTERNET:, são guardadas, mas não aparecem na página.
N:<last>;<first>;;;: apelido e nome próprio. Editor: ambos obrigatórios, até 40 caracteres.FN:<first> <last>: não é lido pela página. É daqui que vem a etiqueta na lista do painel.ORG:<company>eTITLE:<role>: empresa e cargo. Editor: até 40 caracteres.TEL;TYPE=HOME:,TEL;TYPE=CELL:,TEL;TYPE=WORK:,TEL;TYPE=FAX:: números de telefone, telemóvel, trabalho e fax (+e dígitos).EMAIL:<email>: endereço de email.URL:<url>: website.NOTE:<text>: resumo. Escape\\,\n,\;e\,. Editor: até 200 caracteres.ADR:;;<street>;<city>;<state>;<zip>;<country>: morada.X-SOCIALPROFILE;TYPE=<platform>:<url>ouURL;TYPE=<PLATFORM>:<url>: ligações para redes sociais, uma linha por plataforma.PHOTO;VALUE=URI:<url>: URL da imagem de perfil. Prevalece sobre qualquer ID de ficheiro.X-GETQR-IMAGE-FILEID:<fileId>: imagem de perfil (targetlogo).X-GETQR-PAGE-LOGO-FILEID:<fileId>: logótipo da página (targetlogo).X-GETQR-LANDING-THEME:p|<0-4>ouX-GETQR-LANDING-THEME:c|#RRGGBB|#RRGGBB|#RRGGBB: tema da página, seja um índice de predefinição (de 0 a 4) ou cores personalizadas de fundo, botões e ícones.
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: Código QR 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: Código QR 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: é apresentado um ícone alternativo. Editor: pelo menos uma ligação 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: Código QR 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, travelTourInstalações
Instalações
Request body
422 Expected a JSON object describing the event page for qrType "event".
Ficheiros em códigos QR
Registe um ficheiro com Ficheiros, carregue-o e depois passe o respetivofileId. Use o target que corresponde à utilização:
pdf,image,video. O conteúdo de um código QR de PDF, imagem ou vídeo.logo. Imagens de perfil, logótipos de página, ícones de ligações personalizadas e logótipos centrais.
fileId, devolvidos na criação e em PATCH quando fileId é enviado:
Os IDs de ficheiro dentro de um payload (
fileId, pageLogoFileId, customItems[].logoFileId, linhas X-GETQR-*-FILEID) não são validados. Só são apresentados se tiverem sido carregados com o target logo. O código QR reclama-os, pelo que a limpeza não lhes toca.
Mudar de tipo
Pode alterarqrType com Atualizar um código QR. Envie um data que corresponda ao novo tipo: o payload guardado pertence ao tipo antigo, por isso uma mudança sem ele é rejeitada.
Após uma atualização, o destino é resolvido por esta ordem:
vcard,social,multilink,event: sempre a página alojada.- Um conjunto de PDF ou uma galeria de imagens criados no painel: a respetiva página de destino.
pdf,image,video: o URL do ficheiro (um novofileIdou, na falta deste, o guardado).link.url, quando enviado.- O
dataalterado. - O URL guardado.
- Ao sair de
pdf,imageouvideo.fileIde qualquer conjunto ou galeria são apagados. - Ao passar para
pdf,imageouvideo. Envie tambémfileId, caso contrário é reutilizado o guardado, que pode ser a fotografia de um vCard. - Ao sair de
app. O nome da aplicação,link.ioselink.androidsão apagados, pelo que os telemóveis passam a seguir o novo destino. - Ao passar para
wifi. A imagem passa a usar o payload em bruto. Os códigos já impressos continuam a conter a ligação curta, que agora redireciona para um URLwifi:. - Ao sair de
wifi. Os códigos impressos mantêm a rede antiga. - Ao passar para
vcard,social,multilinkouevent. A ligação curta passa a apontar para a nova página alojada. - Ao sair de
vcard,social,multilinkouevent. Envie o novodata. O destino acompanha-o.
link.url devolve 422.
Não suportado na API
Estas funcionalidades do painel não fazem parte da API v1. Os campos desconhecidos são descartados sem erro, pelo que enviá-los não tem qualquer efeito.
Os conjuntos e as galerias criados no painel podem continuar a ser consultados, colocados em pausa e eliminados através da API, mas os respetivos ficheiros não podem ser alterados através dela.
Problemas comuns
422 Invalid destination URL
422 Invalid destination URL
link.url usa um esquema para o qual a ligação curta não pode 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 existe link.url. Em app, defina pelo menos um de link.ios, link.android, link.url ou data.Na resposta, data é uma ligação curta e não o meu URL
Na resposta, data é uma ligação curta e não o meu URL
Nos tipos de ligação, o
data guardado é a ligação curta. Leia o destino em url.Faltam na página de destino dados do meu payload
Faltam na página de destino dados do meu payload
A página só lê os campos e os formatos de linha indicados para o tipo. Os outros campos são guardados, mas não são apresentados.