curl -X POST "https://api.oxenty.api.br/api/sessions" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "atendimento-principal",
"allowGroup": true,
"webhookUrl": "https://seu-servidor.com/webhook",
"webhookEvents": ["message.received", "message.status"]
}'
const session = await client.sessions.create({
name: 'atendimento-principal',
allowGroup: true,
webhookUrl: 'https://seu-servidor.com/webhook',
webhookEvents: ['message.received', 'message.status'],
});
session = client.sessions.create(
name='atendimento-principal',
allow_group=True,
webhook_url='https://seu-servidor.com/webhook',
webhook_events=['message.received', 'message.status']
)
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "atendimento-principal",
"status": "disconnected",
"allowGroup": true,
"webhookUrl": "https://seu-servidor.com/webhook",
"webhookEvents": ["message.received", "message.status"],
"hasWebhook": true,
"createdAt": "2024-01-15T10:00:00.000Z",
"updatedAt": "2024-01-15T10:00:00.000Z"
}
{
"statusCode": 400,
"error": "VALIDATION_ERROR",
"message": "O campo 'name' é obrigatório"
}
{
"statusCode": 409,
"error": "SESSION_ALREADY_EXISTS",
"message": "Já existe uma sessão com o nome 'atendimento-principal'"
}
{
"statusCode": 403,
"error": "SESSION_LIMIT_REACHED",
"message": "Limite de sessões do plano atingido (3/3)"
}
Sessões
Criar Sessão
Cria uma nova sessão do WhatsApp
POST
/
api
/
sessions
curl -X POST "https://api.oxenty.api.br/api/sessions" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "atendimento-principal",
"allowGroup": true,
"webhookUrl": "https://seu-servidor.com/webhook",
"webhookEvents": ["message.received", "message.status"]
}'
const session = await client.sessions.create({
name: 'atendimento-principal',
allowGroup: true,
webhookUrl: 'https://seu-servidor.com/webhook',
webhookEvents: ['message.received', 'message.status'],
});
session = client.sessions.create(
name='atendimento-principal',
allow_group=True,
webhook_url='https://seu-servidor.com/webhook',
webhook_events=['message.received', 'message.status']
)
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "atendimento-principal",
"status": "disconnected",
"allowGroup": true,
"webhookUrl": "https://seu-servidor.com/webhook",
"webhookEvents": ["message.received", "message.status"],
"hasWebhook": true,
"createdAt": "2024-01-15T10:00:00.000Z",
"updatedAt": "2024-01-15T10:00:00.000Z"
}
{
"statusCode": 400,
"error": "VALIDATION_ERROR",
"message": "O campo 'name' é obrigatório"
}
{
"statusCode": 409,
"error": "SESSION_ALREADY_EXISTS",
"message": "Já existe uma sessão com o nome 'atendimento-principal'"
}
{
"statusCode": 403,
"error": "SESSION_LIMIT_REACHED",
"message": "Limite de sessões do plano atingido (3/3)"
}
Cria uma nova sessão que pode ser conectada a uma conta do WhatsApp.
A sessão é criada com status
disconnected. Você precisa chamar o endpoint de conectar para obter o QR Code.Request Body
string
required
Nome identificador da sessão. Deve ser único dentro do tenant.Exemplo:
"atendimento-principal"boolean
default:"true"
Se a sessão deve processar mensagens de grupos.
string
URL que receberá eventos via webhook (HTTPS obrigatório em produção).Exemplo:
"https://seu-servidor.com/webhook"string[]
Lista de eventos que o webhook receberá. Se não especificado, recebe todos.Valores possíveis:
message.receivedmessage.sentmessage.statussession.connectedsession.disconnected
string
Secret para validação de assinatura dos webhooks.
Resposta
string
ID único da sessão (UUID).
string
Nome da sessão.
string
Status atual da sessão (
disconnected).boolean
Se mensagens de grupo estão habilitadas.
string
URL do webhook configurado.
boolean
Se há webhook configurado.
string
Data de criação (ISO 8601).
curl -X POST "https://api.oxenty.api.br/api/sessions" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "atendimento-principal",
"allowGroup": true,
"webhookUrl": "https://seu-servidor.com/webhook",
"webhookEvents": ["message.received", "message.status"]
}'
const session = await client.sessions.create({
name: 'atendimento-principal',
allowGroup: true,
webhookUrl: 'https://seu-servidor.com/webhook',
webhookEvents: ['message.received', 'message.status'],
});
session = client.sessions.create(
name='atendimento-principal',
allow_group=True,
webhook_url='https://seu-servidor.com/webhook',
webhook_events=['message.received', 'message.status']
)
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "atendimento-principal",
"status": "disconnected",
"allowGroup": true,
"webhookUrl": "https://seu-servidor.com/webhook",
"webhookEvents": ["message.received", "message.status"],
"hasWebhook": true,
"createdAt": "2024-01-15T10:00:00.000Z",
"updatedAt": "2024-01-15T10:00:00.000Z"
}
{
"statusCode": 400,
"error": "VALIDATION_ERROR",
"message": "O campo 'name' é obrigatório"
}
{
"statusCode": 409,
"error": "SESSION_ALREADY_EXISTS",
"message": "Já existe uma sessão com o nome 'atendimento-principal'"
}
{
"statusCode": 403,
"error": "SESSION_LIMIT_REACHED",
"message": "Limite de sessões do plano atingido (3/3)"
}