Update:
Resolvi o problema (aparentemente)
Ao invés de declarar o tipo específico (string, array, etc) no serializer, o mesmo deve ser a entidade (que é um objeto):
Novosga\Entity\Cliente:
properties:
id:
read_only: true
nome:
type: string
documento:
type: string
endereco:
type: Novosga\Entity\Endereco
Nesse caso é só mandar um objeto vazio no lugar do endereço no JSON que ele vai retornar com a senha:
{
"unidade": $unidade,
"servico": $servico,
"prioridade": $prioridade,
"cliente": {
"nome": "$nome",
"documento": "$documento",
"endereco": {}
}
}
Estou fazendo testes aqui mas aparentemente deu certo.