qr-cow

Gere códigos QR estilizados a partir de qualquer agente de IA: URL, Wi-Fi, vCard e 13 tipos de conteúdo, com cores e logotipos, além de códigos dinâmicos e análises de escaneamento da API qr-cow.

Documentação

Início rápido

1

Obter um token

Entre, abra Dashboard → API & MCP e clique em Criar token. Você receberá um valor qrc_live_…, copie-o uma vez; armazenamos apenas o hash.

2

Faça uma chamada

Envie o token como cabeçalho Bearer para api.qr-cow.com. Todo endpoint que uma sessão JWT pode acessar também aceita um token.

3

Ou conecte via MCP

Adicione o trecho JSON abaixo na configuração MCP do seu cliente de IA e o mesmo token funcionará lá, sem código de integração.

Experimente

Escolha um endpoint e um idioma. O token nos trechos é um espaço reservado; cole o seu próprio do dashboard.

Renderizar um QR estilizado

Dados mais um preset ou estilo de entrada, uma imagem estilizada de saída. Nenhum token é necessário.

# Styled image back, no account needed. Save straight to a file:
curl "https://qr-cow.com/api/v1/qr/render" \
  -H "Content-Type: application/json" \
  -o menu-qr.png \
  -d '{
    "data": "https://my-cafe.com/menu",
    "preset": "cafe",
    "size": 600,
    "format": "png"
  }'

# Full control instead of a preset:
#   "style": { "body": "rounded", "eye": "dots",
#     "gradient": { "from": "#06b6d4", "to": "#7c3aed", "direction": "vertical" } }

# Or drop it straight into an <img src>:
#   https://qr-cow.com/api/v1/qr/render?data=https://my-cafe.com&preset=cafe&size=600

API de renderização estilizada

Gere uma imagem QR estilizada e finalizada diretamente do seu código. Envie data mais um estilo (um preset, uma configuração de estúdio ou campos explícitos) e receba um PNG, JPG ou SVG de volta. Sem conta e sem registro armazenado, é ideal para gerar códigos em massa. POST /api/v1/qr/render para controle total, ou GET no mesmo caminho para inserir um código diretamente em uma tag de imagem.

ParâmetroAceitaO que faz
datastringO conteúdo a codificar: uma URL, texto simples ou uma string Wi-Fi / vCard pré-formatada.
presetnome ↓Um visual pronto, aplicado primeiro (veja a lista abaixo).
bodysquare · dots · rounded · extra-rounded · classy · classy-rounded · vertical-bars · horizontal-barsForma do módulo / ponto.
eyesquare · rounded · dotsForma do padrão de localização (cantos).
fg · bg#hexCores de primeiro plano e fundo, hex de 3, 6 ou 8 dígitos.
gradient{ from, to, direction }Gradiente de duas cores nos módulos; direção é horizontal, vertical ou radial.
logobase64 data URLUm logotipo central, passado como data URL base64. Use ecc Q ou H com um logotipo.
eccL · M · Q · HCorreção de erros. Níveis mais altos suportam mais danos e um logotipo, ao custo de densidade.
size64–2000Largura da saída em pixels (quadrado).
formatpng · jpg · svgpng e jpg carregam todos os estilos; svg é um vetor limpo com forma, cor e gradiente (sem logotipo).

Modelos que você pode escolher (passe o nome como preset): restaurant · cafe · tech · event · retail · wedding · healthcare · real-estate · business-card · crypto · sunset · ocean · forest · aurora · berry · mono

# Pick one of our templates — pass its name as "preset"
curl -X POST https://qr-cow.com/api/v1/qr/render \
  -H "Content-Type: application/json" \
  -d '{"data":"https://acme.com","preset":"restaurant","size":600,"format":"png"}' \
  --output qr.png

# Or your own template — set a style once and reuse it for every code
curl -X POST https://qr-cow.com/api/v1/qr/render \
  -H "Content-Type: application/json" \
  -d '{"data":"https://acme.com","style":{"body":"rounded","eye":"dots","fg":"#1F2937","gradient":{"from":"#F97316","to":"#F5A300"}}}' \
  --output qr.png

Feito para volume

Defina seu estilo de marca uma vez como um objeto style (ou escolha um preset): esse é seu estilo pessoal, definido antecipadamente e reutilizado para cada código. Faça um loop sobre o endpoint para gerar quantos precisar; cada chamada é independente e não armazena nada.

Mantenha-o escaneável

Módulos escuros sobre fundo claro escaneiam de forma mais confiável. Estilos de fundo escuro ou baixo contraste ficam ótimos, mas leem de forma menos confiável em scanners mais fracos, e com um logotipo use ecc Q ou H para que o código ainda seja resolvido.

Referência de endpoints

Tudo em /api/v1, mesma estrutura em todos os idiomas.

MétodoCaminhoO que faz
POST/qr/renderRenderiza uma imagem QR estilizada a partir de um estilo ou preset (sem autenticação, nada armazenado).
GET/qr/renderA mesma renderização como um GET simples, incorporável diretamente em uma tag de imagem.
GET/auth/meUsuário autenticado + plano
POST/qrcodesCria um QR estático ou dinâmico
GET/qrcodesLista seus códigos QR (paginado)
GET/qrcodes/{id}Obtém os detalhes completos de um QR
PATCH/qrcodes/{id}Atualiza nome / destino dinâmico
DELETE/qrcodes/{id}Exclusão suave de um QR
GET/analytics/qrcodes/{id}Escaneamentos, geo, dispositivo, hora do dia
GET/dev/tokensLista tokens de API
POST/dev/tokensCria um token (retorna texto simples UMA VEZ)
DELETE/dev/tokens/{id}Revoga um token

MCP, Model Context Protocol

MCP é um protocolo aberto publicado pela Anthropic para conectar clientes de IA a ferramentas externas. Uma vez conectado, seu assistente pode dizer coisas como "crie um código QR para meu novo cardápio" ou "mostre-me quais países escanearam meu QR do café na semana passada" e chamar qr-cow diretamente.

Claude Desktop / Claude Code

{
  "mcpServers": {
    "qr-cow": {
      "command": "uvx",
      "args": ["qr-cow-mcp"],
      "env": { "QRCOW_API_TOKEN": "qrc_live_..." }
    }
  }
}

Cursor / Zed / outros

Mesma estrutura, a configuração MCP do editor usa command, args e um bloco env. O servidor MCP é um processo stdio, qualquer coisa que fale MCP pode usá-lo.

Guia completo de configuração MCP ↗ qr-cow-mcp no PyPI ↗

Ferramentas expostas pelo servidor

FerramentaO que faz
create_qrcodeCria um QR estático ou dinâmico (URL, Wi-Fi, vCard, …).
render_styled_qrcodeRenderiza uma imagem QR totalmente estilizada (formas, gradiente, logotipo) a partir de dados mais um preset ou estilo. Retorna a imagem; nada é salvo.
list_qrcodesLista códigos QR recentes na conta do usuário.
get_qrcodeBusca o design atual + destino de um QR.
update_qrcode_destinationAltera o destino de um QR dinâmico, o código impresso continua funcionando.
delete_qrcodeExclusão suave de um código.
get_qrcode_analyticsEscaneamentos + detalhamento por país, dispositivo, hora.
mePerfil do usuário conectado + plano.

Autenticação

Envie Authorization: Bearer qrc_live_… em cada requisição. Tokens são universais, funcionam em todo endpoint que uma sessão JWT acessa. Tokens revogados são rejeitados imediatamente.

Erros

Todas as respostas seguem {success, data, error}. Os códigos de status HTTP seguem a RFC 7231; o campo error carrega um código curto legível por máquina (ex.: token_limit_reached).

Limites de taxa e segurança

  • Leituras Sem limite Listagem, busca e leituras de analytics não têm limite de taxa.
  • Criar / renderizar 20 / min por IP POST /qrcodes e /qr/render. Edição e exclusão não são limitadas.
  • Limite de tokens 20 / conta Tokens de API ativos. Revogue um para liberar um slot.

Os limites são baseados em IP e nenhum cabeçalho de limite de taxa é enviado, então em um 429 (erro "rate_limit_exceeded") recue e tente novamente. Armazenamos apenas o SHA-256 de cada token; revogue imediatamente se um vazar e provisione um novo em segundos.

Pronto para construir?

Providencie seu primeiro token e envie uma integração "crie um código QR a partir desta URL" em menos de 5 minutos.

Não é desenvolvedor? Experimente os geradores de código QR ou veja preços.