Cursos do contrato
Esta página descreve os endpoints da aba Cursos, da tela Contratos. Ela define quais cursos o contrato inclui e quanto cada um vale para a empresa cliente. Esses valores são os que os alunos vinculados passam a ter.
Cursos só podem ser incluídos, alterados ou removidos enquanto o contrato está em preparação.
Endpoints
| Método | Caminho | Descrição |
|---|---|---|
| GET | /comercial/contracts/{contract_uuid}/courses | Lista os cursos do contrato |
| POST | /comercial/contracts/{contract_uuid}/courses | Inclui um curso no contrato |
| GET | /comercial/contracts/{contract_uuid}/courses/{id} | Consulta um curso do contrato |
| PUT | /comercial/contracts/{contract_uuid}/courses/{id} | Altera um curso do contrato |
| DELETE | /comercial/contracts/{contract_uuid}/courses/{id} | Remove um curso do contrato |
| GET | /comercial/contracts/food-vouchers | Lista os vouchers de almoço, para o campo de voucher de almoço |
| GET | /comercial/contracts/accommodation-vouchers | Lista os vouchers de hospedagem, para o campo de voucher de hospedagem |
Consultar
GET /comercial/contracts/{contract_uuid}/courses
Lista os cursos do contrato.
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
search | Texto livre: nome ou nome curto do curso, código do curso ou modalidade |
columnName e orderData | Ordenação: nome da coluna e asc ou desc. Sem ordenação, a lista sai pelo nome do curso |
Resposta: lista. Campos principais: id, contract_id, course_id, course_name, course_short_name, course_code, course_workload, course_validity, modality_id, modality, amount, online, vourcher_food_id, food_vaucher_value, food_voucher_customer_vendor_name, vourcher_accommodation_id, accommodation_vaucher_value, accommodation_voucher_customer_vendor_name e os dados de criação e alteração.
GET /comercial/contracts/{contract_uuid}/courses/{id}
Consulta um curso do contrato pelo id. A resposta traz o registro com os dados do contrato.
Incluir, alterar e remover
POST /comercial/contracts/{contract_uuid}/courses
Inclui um curso no contrato. Se o contrato já tem o mesmo curso com a mesma modalidade, o sistema atualiza esse registro, em vez de criar outro.
Corpo
| Campo | Obrigatório | Tipo | Descrição |
|---|---|---|---|
course_id | Sim | Número (id) | Curso do contrato. Use o id do curso |
amount | Sim | Número | Valor do treinamento para o contrato. É o valor aplicado aos alunos vinculados |
modality_id | Não | Número (id) | Modalidade do treinamento. Veja GET /comercial/contracts/modalities em Contratos |
online | Não | Booleano | Marca o curso como sem turma presencial. Use quando não houver modalidade |
vourcher_food_id | Não | Número (id) | Voucher de almoço cadastrado para o cliente. O valor e o fornecedor vêm do voucher |
vourcher_accommodation_id | Não | Número (id) | Voucher de hospedagem cadastrado para o cliente. O valor e o fornecedor vêm do voucher |
Os vouchers de almoço e de hospedagem são aplicados aos alunos cadastrados em turma com vínculo ao contrato. Nesse caso, o sistema cria as despesas de almoço e de hospedagem na turma, com o valor do voucher multiplicado pela quantidade de dias da turma.
Exemplo
curl -X POST "https://api.pedagogo.app/comercial/contracts/<uuid-do-contrato>/courses" \
-H "Authorization: Bearer <token-de-sessao>" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"course_id": 45, "amount": 1500.00, "modality_id": 2}'
Resposta: 201 com o curso incluído no contrato. Se o contrato não está em preparação, a inclusão é recusada com a mensagem You cannot add a course to a contract that is not "In preparation"..
PUT /comercial/contracts/{contract_uuid}/courses/{id}
Altera um curso do contrato. course_id e amount são obrigatórios também nesta alteração. Os demais campos são os mesmos do cadastro.
Resposta: 200 com o registro alterado. Se o contrato não está em preparação, a alteração é recusada com message.
DELETE /comercial/contracts/{contract_uuid}/courses/{id}
Remove o curso do contrato. A exclusão é lógica. Só é possível em contrato em preparação.
Resposta: 200 com {"message": "Contract Course removed."}. Se o contrato não está em preparação, a exclusão é recusada com message.
Listas de apoio
GET /comercial/contracts/food-vouchers
Lista os vouchers de almoço cadastrados para o cliente. Use o id no campo vourcher_food_id. O valor e o fornecedor do voucher são usados no contrato.
GET /comercial/contracts/accommodation-vouchers
Lista os vouchers de hospedagem cadastrados para o cliente. Use o id no campo vourcher_accommodation_id.