Portanto, foi devido à maneira como meu objeto de cor estava sendo liberado quando a solicitação estava sendo tratada. Ao entrar, estava vendo o objeto, mas os valores aninhados não eram válidos e, portanto, estava jogando fora a gravação para o banco de dados como esperava Strings. Acabei fazendo um POST em vez disso e passando o objeto json no parâmetro de dados e depois lendo-o de volta pelo corpo e funciona como esperado e criou automaticamente o db conforme desejado. Obrigado Noé pela resposta!