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.
Como funciona
1
Inicie a criação em massa
Envie as suas linhas com Criar a partir de JSON ou Criar a partir de um ficheiro CSV. A API responde
202 com a criação em massa e o respetivo id.2
Acompanhe o progresso
Chame Obter uma criação em massa a cada poucos segundos até
status ser completed ou failed.3
Transfira o arquivo ZIP
Quando
status for completed, chame Transferir o arquivo ZIP para obter um ZIP com as imagens dos códigos QR.- Limite. Até 100 linhas por criação em massa.
- Uma de cada vez. Só é executada uma criação em massa por espaço de trabalho. Se iniciar outra enquanto uma está em curso, é devolvida a que está em curso.
- Idempotência. Cada pedido precisa de um
idempotencyKey. Repetir um pedido com a mesma chave e o mesmo corpo devolve a criação em massa já iniciada. A mesma chave com outro corpo devolve422. - Linhas. Cada linha precisa de um
namee de umurl. Consulte Linhas. - Plano. A criação em massa não está disponível no plano Single QR: o pedido devolve
403 exceeded_limit.
Linhas
- Nome. Passa a ser o título do código QR. Os espaços no início e no fim são removidos e é cortado a 40 caracteres. Os nomes repetidos (sem distinguir maiúsculas de minúsculas) recebem um número:
Menu,Menu 2,Menu 3. - URL. Passa a ser o destino. Tem de ser um endereço
httpouhttpscom um domínio real, comoexample.com/menu, e não pode conter espaços. A um URL sem esquema é acrescentadohttps://. - Linhas vazias. As linhas sem nome nem URL são ignoradas. Uma linha com apenas um dos dois é rejeitada.
website com uma ligação curta. Consulte Tipos de QR.
Cabeçalhos
string
obrigatório
Bearer seguido da sua chave de API. Consulte Autenticação.string
application/json para Criar a partir de JSON, multipart/form-data para Criar a partir de um ficheiro CSV.O objeto de criação em massa
string
ID da criação em massa, por exemplo
cm2k7x9qb0003ax8eb4f6gh2t.string
queued, processing, packaging ou completed. Uma criação em massa falhada ou cancelada passa por rollingBack até failed.string
Nome do ficheiro de origem.
integer
Número de linhas.
integer
Códigos QR criados até ao momento.
integer
Imagens de códigos QR geradas até ao momento.
integer
Progresso global, de 0 a 100. A criação vai até 40, a geração das imagens até 90, o empacotamento corresponde a 95 e
completed a 100.boolean
true quando uma criação em massa em curso não avança há 2 minutos. Continue a consultar: Obter uma criação em massa reinicia uma criação em massa parada.object | null
Quando
status é failed: code e message. Uma criação em massa cancelada tem o código cancelled_by_user. Uma criação em massa falhada é revertida, pelo que nenhum dos respetivos códigos QR é mantido.string | null
Caminho de Transferir o arquivo ZIP, quando
status é completed.string
Data de início, ISO 8601.
string
Data da última atualização, ISO 8601.
string | null
Data de conclusão, ISO 8601.
string | null
Data da falha, ISO 8601.
Obter a criação em massa atual
GET /api/v1/bulk-qr-creations
Devolve a criação em massa que ainda está em curso no seu espaço de trabalho. Quando nenhuma está em curso, devolve a última concluída (completed ou failed) até ser dispensada: transferir o respetivo arquivo ou dispensá-la no painel tem esse efeito. Caso contrário, devolve null. Use-o para retomar o acompanhamento após um reinício.
Criar a partir de JSON
POST /api/v1/bulk-qr-creations
Inicia uma criação em massa a partir de uma lista de linhas. Responde 202 Accepted. A criação em massa é executada em segundo plano.
object[]
obrigatório
Códigos QR a criar, até 100. Cada linha é
{ "name": "...", "url": "..." } e não aceita outros campos. Consulte Linhas.object
obrigatório
Design aplicado a todos os códigos QR:
styles, frameOptions e logoOptions, todos opcionais. Envie {} para o design predefinido. Os outros campos são rejeitados. Consulte Personalização.string
obrigatório
Nome apresentado no painel e usado para o arquivo, de 1 a 255 caracteres.
string
obrigatório
A sua própria chave para esta criação em massa, de 8 a 100 caracteres.
Criar a partir de um ficheiro CSV
POST /api/v1/bulk-qr-creations/csv
Igual a Criar a partir de JSON, mas recebe as linhas num ficheiro CSV enviado como multipart/form-data. Responde 202 Accepted.
O ficheiro tem de ser um .csv com, no máximo, 1 000 000 bytes. A linha de cabeçalho tem de ser exatamente name,url, seguida de até 100 linhas de dados. Consulte Formato CSV.
file
obrigatório
O ficheiro CSV.
string
obrigatório
O objeto de design, serializado em JSON, por exemplo
{"styles":{"dotsOptions":{"type":"rounded"}}}. Envie {} para o design predefinido.string
obrigatório
A sua própria chave para esta criação em massa, de 8 a 100 caracteres.
string
Nome apresentado no painel e usado para o arquivo, até 255 caracteres. Por predefinição, o nome do ficheiro carregado.
Obter uma criação em massa
GET /api/v1/bulk-qr-creations/{id}
Devolve o estado e o progresso de uma criação em massa. Consulte-o enquanto status for queued, processing ou packaging. downloadUrl aparece assim que o arquivo estiver pronto.
string
obrigatório
ID da criação em massa. Obtenha-o na resposta da criação ou da criação em massa atual.
Cancelar uma criação em massa
DELETE /api/v1/bulk-qr-creations/{id}
Para uma criação em massa em curso e elimina os códigos QR que já criou. A reversão é executada durante o pedido, pelo que a resposta tem normalmente status failed e error.code cancelled_by_user. Cancelar uma criação em massa que já falhou devolve-a sem alterações.
string
obrigatório
ID da criação em massa.
Transferir o arquivo ZIP
GET /api/v1/bulk-qr-creations/{id}/download
Devolve um arquivo ZIP com um JPEG de 1024 px por código QR, com o nome da respetiva linha: 001-Menu.jpg, 002-Wine list.jpg e assim por diante. O arquivo recebe o nome de sourceFilename. Disponível quando status é completed. A transferência dispensa a criação em massa, pelo que Obter a criação em massa atual deixa de a devolver.
string
obrigatório
ID da criação em massa.
Problemas comuns
422 com "contains an invalid HTTP(S) URL"
422 com "contains an invalid HTTP(S) URL"
A mensagem indica a linha. Cada URL tem de ser um endereço
http ou https com um domínio real, como example.com/menu. Corrija a linha e volte a enviar o pedido.422 "CSV headers must be exactly: name,url."
422 "CSV headers must be exactly: name,url."
A primeira linha do CSV tem de ser
name,url, por esta ordem e em minúsculas, sem outras colunas.422 "This idempotencyKey was already used with a different request body."
422 "This idempotencyKey was already used with a different request body."
As chaves não podem ser reutilizadas para outro lote. Envie um novo
idempotencyKey.409 "The bulk QR archive is not ready for download."
409 "The bulk QR archive is not ready for download."
A criação em massa ainda não terminou. Continue a consultar até
status ser completed.400 "Cannot cancel a finished bulk QR creation."
400 "Cannot cancel a finished bulk QR creation."
A criação em massa já foi concluída, pelo que não pode ser revertida.
403 exceeded_limit
403 exceeded_limit
O seu espaço de trabalho está no plano Single QR, que não inclui a criação em massa. Mude para um plano superior.
Recebi uma criação em massa anterior em vez de uma nova
Recebi uma criação em massa anterior em vez de uma nova
Outra criação em massa ainda está em curso no seu espaço de trabalho, ou reutilizou um
idempotencyKey. Aguarde que termine ou use uma nova chave.