Pesquisas
Endpoints para consulta de pesquisas disponíveis.
Listar Pesquisas
GET /api/searches
Retorna a lista de pesquisas vinculadas ao token do usuário.
Casos de uso:
- Obter IDs de pesquisas para integração
- Popular seletores de pesquisa
- Validar pesquisas disponíveis para disparo
Exemplo de Requisição
bash
curl -X GET "https://api-b2s.experienciab2s.com/api/searches" \
-H "Authorization: Bearer SEU_TOKEN"Resposta de Sucesso (200)
json
[
{
"id": "103a525c-0ce3-4182-a504-aad595425233",
"name": "Pesquisa de Satisfação - Restaurante",
"company_id": "603a525c-0ce3-4182-a504-aad595425233"
},
{
"id": "203a525c-0ce3-4182-a504-aad595425233",
"name": "Pesquisa de Satisfação - Delivery",
"company_id": "503a525c-0ce3-4182-a504-aad595425233"
}
]Estrutura da Resposta
| Campo | Tipo | Descrição |
|---|---|---|
id | string | ID único da pesquisa (UUID) |
name | string | Nome da pesquisa |
company_id | string | ID da empresa vinculada (UUID) |
Códigos de Resposta
| Código | Descrição |
|---|---|
| 200 | Pesquisas encontradas |
| 401 | Token ausente ou inválido |
| 403 | Token inválido ou usuário não autorizado |
| 404 | Token de integração não encontrado |
Obter Pesquisa com Questões
GET /api/searches/:id
Retorna os detalhes completos de uma pesquisa específica, incluindo todas as questões configuradas, opções de resposta e traduções disponíveis.
Casos de uso:
- Renderizar formulário de pesquisa customizado
- Obter estrutura completa de questões para integração
- Carregar traduções das questões para sistemas multilíngue
- Validar tipos e formatos de questões antes do envio
Parâmetros de URL
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
id | string | Sim | ID único da pesquisa (UUID) |
Exemplo de Requisição
bash
curl -X GET "https://api-b2s.experienciab2s.com/api/searches/103a525c-0ce3-4182-a504-aad595425233" \
-H "Authorization: Bearer SEU_TOKEN"Resposta de Sucesso (200)
json
{
"nps": "Como você avalia sua experiência?",
"discursive_question": "Deixe seu comentário",
"questions": [
{
"id": "q1-uuid-example",
"name": "Como você avalia o atendimento?",
"required": true,
"others": false,
"unknown": false,
"description": "Avalie a qualidade do atendimento recebido",
"type": "Rating",
"format": "default",
"detractor_replica": "Lamentamos pela sua experiência",
"neutral_replica": "Obrigado pelo feedback",
"promoter_replica": "Ficamos felizes com sua avaliação!",
"options": [
{
"id": "opt1-uuid",
"name": "Excelente",
"optionTranslations": [
{
"id": "trans1-uuid",
"option_id": "opt1-uuid",
"language_code": "en",
"name": "Excellent"
},
{
"id": "trans2-uuid",
"option_id": "opt1-uuid",
"language_code": "es",
"name": "Excelente"
}
]
}
],
"translations": [
{
"id": "qtrans1-uuid",
"question_id": "q1-uuid-example",
"language_code": "en",
"name": "How do you rate the service?",
"description": "Rate the quality of the service received",
"promoter_replica": "We are happy with your rating!",
"neutral_replica": "Thank you for your feedback",
"detractor_replica": "We are sorry for your experience"
}
]
},
{
"id": "q2-uuid-example",
"name": "Selecione o atendente",
"required": true,
"others": false,
"unknown": true,
"description": "Escolha o atendente que te atendeu",
"type": "Atendente",
"format": "select",
"options": [
{
"id": "att1-uuid",
"name": "João Silva",
"optionTranslations": []
},
{
"id": "att2-uuid",
"name": "Maria Santos",
"optionTranslations": []
}
],
"translations": []
}
]
}Estrutura da Resposta
| Campo | Tipo | Descrição |
|---|---|---|
nps | string | Texto da pergunta NPS principal |
discursive_question | string | Texto da pergunta discursiva/comentário |
questions | array | Lista de questões da pesquisa |
Estrutura de Question
| Campo | Tipo | Descrição |
|---|---|---|
id | string | ID único da questão (UUID) |
name | string | Texto/título da questão |
required | boolean | Se a questão é obrigatória |
others | boolean | Se permite opção "Outros" |
unknown | boolean | Se permite opção "Não sei/Desconhecido" |
description | string | Descrição auxiliar da questão |
type | string | Tipo da questão (ver tabela abaixo) |
format | string | Formato de exibição (ver tabela abaixo) |
detractor_replica | string | Pergunta de acompanhamento para notas baixas - opcional |
neutral_replica | string | Pergunta de acompanhamento para notas médias - opcional |
promoter_replica | string | Pergunta de acompanhamento para notas altas - opcional |
options | array | Opções de resposta disponíveis |
translations | array | Traduções da questão em outros idiomas |
Tipos de Questão (type)
| Tipo | Descrição |
|---|---|
Atendente | Seleção de atendente/funcionário |
Caixa de seleção | Múltipla escolha com checkboxes |
CSAT | Customer Satisfaction Score (1-5) |
Data | Campo de seleção de data |
Emoticon | Avaliação por emoticons/emojis |
Like/Dislike | Avaliação binária (gostei/não gostei) |
Multipla escolha | Seleção entre múltiplas opções |
NPS | Net Promoter Score (0-10) |
Rating | Avaliação por estrelas/nota |
Resposta curta | Campo de texto livre |
Formatos de Exibição (format)
| Formato | Descrição | Disponível em |
|---|---|---|
default | Exibição padrão (botões/cards) | Todos os tipos |
select | Menu suspenso (dropdown) | Atendente, Múltipla escolha |
checkbox | Caixa de seleção múltipla | Atendente |
Estrutura de Option
| Campo | Tipo | Descrição |
|---|---|---|
id | string | ID único da opção (UUID) |
name | string | Texto da opção |
optionTranslations | array | Traduções da opção em outros idiomas |
Estrutura de OptionTranslation
| Campo | Tipo | Descrição |
|---|---|---|
id | string | ID único da tradução (UUID) |
option_id | string | ID da opção relacionada |
language_code | string | Código do idioma (ex: "en", "es") |
name | string | Texto traduzido da opção |
Estrutura de QuestionTranslation
| Campo | Tipo | Descrição |
|---|---|---|
id | string | ID único da tradução (UUID) |
question_id | string | ID da questão relacionada |
language_code | string | Código do idioma (ex: "en", "es") |
name | string | Texto traduzido da questão |
description | string | Descrição traduzida (opcional) |
promoter_replica | string | Pergunta de acompanhamento (notas altas) traduzida (opcional) |
neutral_replica | string | Pergunta de acompanhamento (notas médias) traduzida (opcional) |
detractor_replica | string | Pergunta de acompanhamento (notas baixas) traduzida (opcional) |
criteria | string | Critério traduzido (opcional) |
Códigos de Resposta
| Código | Descrição |
|---|---|
| 200 | Pesquisa encontrada com sucesso |
| 401 | Token ausente ou inválido |
| 403 | Token inválido ou usuário não autorizado |
| 404 | Pesquisa não encontrada |
