A API do GetQR está em beta e disponível para workspaces selecionados. Os detalhes podem mudar antes do lançamento oficial.
Antes de começar
- Função. Definir regras, pausar, reativar e excluir exigem acesso de escrita aos QR codes do workspace. Veja Autenticação.
- Assinatura. Toda requisição à API exige uma assinatura ativa do proprietário do workspace, inclusive estas.
O objeto access
Envie um objetoaccess ao criar ou atualizar um QR code:
Os campos omitidos permanecem inalterados. Envie
null para limpar uma regra. Um objeto access parcial nunca redefine regras que você não mencionou.
Agende um início e um fim
activeAt e pauseAt são independentes: defina um deles ou os dois. Ambos aceitam data e hora ISO 8601, com Z ou um deslocamento de UTC.
null para limpar o agendamento. Isso deixa o QR code ativo imediatamente e remove a data de término:
Limite de leituras
Limite o número total de leituras. Depois disso, o QR code deixa de ser resolvido:- Aumentar o limite libera exatamente (novo limite menos total de leituras) leituras adicionais.
- Reduzir o limite abaixo do total atual bloqueia o QR code imediatamente.
- Definir um limite depois conta as leituras feitas enquanto não havia limite.
scanLimit deve ser um inteiro positivo, até 2147483647. Envie null para ilimitado.
Proteção por senha
Defina uma senha pelo mesmo objetoaccess. A senha armazenada é mantida quando você desativa a proteção, então você pode reativá-la sem enviar a senha de novo.
1
Defina ou altere a senha
Isso também ativa a proteção.
2
Desative a proteção
A senha armazenada é mantida.
3
Reative a proteção
Não é preciso reenviar a senha. Isso só funciona depois que uma senha foi definida. Caso contrário, a requisição recebe
422.- Na criação. Envie
passwordpara ativar a proteção.passwordProtectedsozinho não tem efeito enquanto não existir uma senha. - Remover a senha. Envie
"password": null. A proteção também é desativada. - Leitura. As respostas nunca retornam a senha, apenas
access.passwordProtected.
Pausar, reativar e excluir
Pausar e reativar são endpoints separados, e não campos deaccess, porque entram em vigor na hora, e não por agendamento.
Pausar e ativar não recebem corpo de requisição e retornam o QR code atualizado:
PUT /api/v1/qrs/{qrId} e { "archived": true }, ou com archived em um PATCH. Veja Definir o estado de pausa.
A exclusão remove o QR code e o link curto dele juntos:
Quando as mudanças entram em vigor
- Próxima leitura. As regras são verificadas quando um código é lido, então uma mudança vale a partir da próxima leitura, não retroativamente.
- Página de pausa. Um QR code bloqueado por agendamento, limite de leituras ou pausa mostra a página de pausa. A leitura não é redirecionada.
- Senha. Visitantes que já digitaram a senha mantêm o acesso até a senha mudar, ou até a proteção ser desativada e ativada de novo.
- Relógio. Os agendamentos usam o relógio do servidor em UTC, não o horário local do visitante.
- Regras combinadas. Um QR code só é resolvido quando não está pausado, está dentro do agendamento e está abaixo do limite de leituras.
Problemas comuns
422 ao definir uma regra dentro de link
422 ao definir uma regra dentro de link
Envie a regra em
access, não em link.422 ao ativar a proteção por senha
422 ao ativar a proteção por senha
O QR code ainda não tem senha. Envie
password em vez de passwordProtected: true.O QR code continua mostrando a página de pausa depois de reativado
O QR code continua mostrando a página de pausa depois de reativado
Um agendamento ou limite de leituras ainda se aplica. Verifique
access.activeAt, access.pauseAt e access.scanLimit no QR code e compare scans com o limite.Preciso que o link expire
Preciso que o link expire
link.expiresAt não está disponível nesta API. Use access.pauseAt.