@wabox/sdk é o pacote oficial para TypeScript e JavaScript. Ele é gerado a partir do OpenAPI da API, então cada rota, body, parâmetro e resposta desta referência tem o tipo correspondente no editor. Toda página de endpoint mostra o equivalente em SDK na aba TypeScript.
Enviar e consultar
/send-text, /chats/{phone}, /groups): o SDK monta https://api.wabox.me/instances/{instance_id}/token/{token} por você. Parâmetros de rota e query vão em params:
{ data, error, response }: data tipado quando a resposta é 2xx, error tipado como { error: { code, message } } nos demais casos, e response é o Response cru (status, headers como Retry-After).
Preferir exceções
unwrap() devolve só o data e lança WaboxError (code, status, details) quando a API responde erro:
Receber webhooks
constructWebhookEvent verifica o X-Wabox-Signature (HMAC-SHA256 sobre o corpo cru, com janela de 5 minutos contra replay) e devolve o evento tipado, discriminado por type:
WaboxWebhookError.reason diz o motivo: invalid_signature (assinatura errada, ausente ou t fora da janela), invalid_json ou unknown_event. Se você só quer a verificação, use verifyWebhookSignature(secret, header, rawBody); para processar sem verificar (não recomendado), parseWebhookEvent(rawBody).
O secret (whsec_…) é por instância: GET /webhooks ou o painel em Webhooks e configurações gerais.
Partner API
Integradores criam e administram instâncias com o headerPartner-Token (veja Partner API):
Tipos
Todos os schemas nomeados da referência são exportados como tipos:Instance, Chat, Contact, Group, SendResponse, QueueItem, WebhookReceived, WebhookDelivery… e WebhookEvent (a união de todos os eventos). Para tipar o resto, use InstancePaths/PartnerPaths (todas as rotas) e Schemas:
Opções
O SDK não faz retry nem fila: trate
429 (Retry-After), 409 instance_not_connected e 402 como descrito em Rate limits e erros. Envios não são idempotentes — confira GET /queue antes de repetir uma chamada que falhou por rede.