Download the PHP package sixtec/wbapi without Composer
On this page you can find all versions of the php package sixtec/wbapi. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Package wbapi
Short Description PHP 8.1+ library for WhatsApp Business Cloud API (Meta) integration
License MIT
Informations about the package wbapi
sixtec/wbapi
Biblioteca PHP 8.1+ para integração com a Meta Cloud API (WhatsApp Business).
Construída com Clean Architecture, Fluent Interface, DTOs e client HTTP desacoplado — sem expor nenhum payload bruto da Meta ao consumidor da biblioteca.
Autor: Mário Lucas
Criação: 12 de abril de 2026
Licença: MIT
Requisitos
| Requisito | Versão |
|---|---|
| PHP | ^8.1 |
| Guzzle | ^7.0 |
Instalação
Configuração
Cliente instanciável
Use WBMetaClient quando sua aplicação precisa de injeção de dependência, múltiplos números, multi-tenant ou workers long-running:
Facade estática
A facade continua disponível para aplicações simples:
Envio de Mensagens
Texto simples
Texto com preview de URL
Imagem
Vídeo
Áudio
Documento
Sticker
Responder uma mensagem
Reação
Localização
Contato
Para contatos completos, informe diretamente os objetos no formato da Meta:
Botões interativos
Lista interativa
Produto de catálogo
Lista de produtos de catálogo
Payload interativo avançado
Marcar mensagem como lida
Template
Retorno
Todos os métodos send() retornam um MessageResponseDTO:
Webhooks
1. Verificação do Desafio (GET)
2. Recebimento de Eventos (POST)
Arquitetura
Princípios aplicados
| Princípio | Aplicação |
|---|---|
| Clean Architecture | Domain isolado de infraestrutura (HTTP, Auth) |
| Fluent Interface | WBMetaClient::fromConfig($config)->to()->text()->send() e WBMeta::to()->text()->send() |
| DTOs | Nunca expostos payloads brutos da Meta |
| Mappers | Conversão DTO → payload em classes dedicadas |
| Dependency Inversion | HttpClientInterface e TokenStorageInterface |
| PSR-4 | Autoload Sixtec\WBApi\ → src/ |
Injeção de Dependências / Frameworks
Para integrar em um container DI (Laravel, Symfony, etc.), registre WBMetaClient:
Se precisar controlar o transporte HTTP, injete um client compatível com HttpClientInterface:
Testes
A suite usa FakeHttpClient — sem chamadas reais à API.
Para testar com sua própria lógica, injete um FakeHttpClient em WBMetaClient::fromConfig():
Exceções
| Classe | Quando é lançada |
|---|---|
WBMetaException |
Base — erros gerais da biblioteca |
HttpException |
Resposta HTTP não-2xx ou falha de rede |
WebhookVerificationException |
Token ou mode inválido no desafio do webhook |
Licença
MIT © Mário Lucas