Pesquisas de satisfação
Uma pesquisa de satisfação é o modelo de questionário usado para medir a satisfação. Cada pesquisa tem um tipo, áreas com perguntas (veja Áreas e Perguntas) e convites enviados aos respondentes (veja Convites). Esta página cobre o cadastro das pesquisas e os lookups de tipos de pesquisa e de tipos de pergunta. Corresponde à tela Pesquisas de satisfação, do módulo Operacional.
A pesquisa é identificada pelo uuid, que é devolvido na criação e usado nos caminhos. As regras gerais estão em Convenções.
Endpoints
| Método | Caminho | Descrição |
|---|---|---|
| GET | /operational/surveys | Lista as pesquisas |
| POST | /operational/surveys | Cadastra uma pesquisa |
| GET | /operational/surveys/{uuid} | Consulta uma pesquisa |
| PUT | /operational/surveys/{uuid} | Altera uma pesquisa |
| DELETE | /operational/surveys/{uuid} | Apaga uma pesquisa |
| GET | /operational/surveys/types | Lista os tipos de pesquisa |
| GET | /operational/surveys/questions-types | Lista os tipos de pergunta |
GET /operational/surveys
Lista as pesquisas da empresa cliente do usuário.
Parâmetros de URL
| Parâmetro | Obrigatório | Descrição |
|---|---|---|
| type_id | Não | Lista só as pesquisas do tipo informado (id do lookup de tipos) |
| is_active | Não | Use 1 para listar só as pesquisas ativas |
| column | Não | Coluna de ordenação, com o nome da tabela (por exemplo, surveys.name) |
| order | Não | Direção da ordenação: asc ou desc |
| per_page | Não | Quantidade de registros por página. Se omitido, a lista vem completa |
| page | Não | Número da página, quando per_page é informado |
Resposta (200). Com per_page, a resposta é paginada. Sem per_page, é uma lista direta. Cada item traz os campos da pesquisa (uuid, name, description, days_to_answer, version, is_active, type_id, client_id e as datas de criação e alteração), além de survey_type (nome do tipo), user_create_name e user_update_name.
curl -X GET "https://api.pedagogo.app/operational/surveys?type_id=1&is_active=1&per_page=15&page=1" \
-H "Accept: application/json" \
-H "Authorization: Bearer <token-de-sessao>"
POST /operational/surveys
Cadastra uma pesquisa. O servidor preenche o uuid, a empresa cliente e o usuário que criou o registro.
Corpo
| Campo | Obrigatório | Tipo | Descrição |
|---|---|---|---|
| type_id | Sim | Número inteiro | Tipo da pesquisa. Use o id de GET /operational/surveys/types |
| name | Sim | Texto | Nome da pesquisa |
| description | Não | Texto | Descrição da pesquisa |
| days_to_answer | Não | Número inteiro | Prazo, em dias, para o respondente responder ao convite |
| version | Não | Número inteiro | Número da versão da pesquisa |
| is_active | Não | Booleano | Indica se a pesquisa está ativa |
Resposta (200). A pesquisa criada, com o uuid gerado.
curl -X POST https://api.pedagogo.app/operational/surveys \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <token-de-sessao>" \
-d '{"type_id": 1, "name": "Curso exemplo", "days_to_answer": 7, "is_active": true}'
GET /operational/surveys/{uuid}
Consulta uma pesquisa. A resposta traz o objeto type, com o tipo da pesquisa.
Resposta (200). A pesquisa, com o objeto type.
PUT /operational/surveys/{uuid}
Altera uma pesquisa. Os campos não enviados mantêm o valor atual.
Corpo
| Campo | Obrigatório | Tipo | Descrição |
|---|---|---|---|
| type_id | Não | Número inteiro | Tipo da pesquisa. Use o id de GET /operational/surveys/types |
| name | Não | Texto | Nome da pesquisa |
| description | Não | Texto | Descrição da pesquisa |
| days_to_answer | Não | Número inteiro | Prazo, em dias, para responder ao convite |
| version | Não | Número inteiro | Número da versão da pesquisa |
| is_active | Não | Booleano | Indica se a pesquisa está ativa |
Resposta (200). A pesquisa após a alteração.
DELETE /operational/surveys/{uuid}
Apaga a pesquisa. A exclusão é lógica: o registro deixa de aparecer nas consultas.
Resposta (200). Confirma a operação, sem devolver os dados da pesquisa.
GET /operational/surveys/types
Lista os tipos de pesquisa. Use o id de um tipo no campo type_id do cadastro.
Parâmetros de URL: column, order, per_page e page, com o mesmo comportamento da listagem de pesquisas.
Resposta (200). Lista de tipos, cada um com id e type (nome do tipo):
[
{ "id": 1, "type": "Nome do tipo" }
]
GET /operational/surveys/questions-types
Lista os tipos de pergunta. Use o id de um tipo no campo question_type_id da pergunta, na página Perguntas.
Parâmetros de URL: column, order, per_page e page, com o mesmo comportamento da listagem de pesquisas.
Resposta (200). Lista de tipos, cada um com id, type (nome do tipo) e is_scoreable (booleano, indica se o tipo pode ter pontuação):
[
{ "id": 1, "type": "Nome do tipo", "is_scoreable": true }
]