Opening this on behalf of @martinmaillard (https://github.com/django-json-api/django-rest-framework-json-api/issues/122#issuecomment-146879198) `ResourceRelatedField` is way too rigid when it checks the valid type. It gets the expected type from the queryset, which means that: - it's not possible to customize the type of a relation (what is allowed by the resource_name on the serializer) - it's not possible to allow multiple types to be valid for one relation (useful with polymorphic relationships)