Вы можете использовать MediaTypeFormatter, чтобы определить форматтер для обработки данных вашего типа мультимедиа. Хорошее объяснение здесь: http://blog.marcinbudny.com/2014/02/sending-binary-data-along-with-rest-api.html
Обычно я бы предложил сказать ему игнорировать родительские свойства (которые создают циклы) - в этом случае путем добавления [Scriptignore]
- но я не вижу Что-нибудь, кроме основных членов - это класс по себе достаточно, чтобы вызвать ошибку?