List Publication Collaborators

View as Markdown

Mixin that provides common permission checking methods for publication-related views.

Path parameters

idintegerRequired

Response

idintegerRead-only
userobject

Mixin to handle profile_picture serialization for WebSocket compatibility.

This mixin adds a SerializerMethodField for profile_picture that converts ImageFieldFile objects to URL strings, making them JSON serializable for WebSocket consumers.

The mixin intelligently handles profile pictures from IAMUserDetail by:

  1. Accessing the related details queryset on the IAMUser model
  2. Extracting the ImageFieldFile from the first detail record
  3. Converting it to a URL string for JSON serialization

Usage:

1class MyUserSerializer(ProfilePictureMixin, serializers.ModelSerializer):
2 class Meta:
3 model = User
4 fields = ['id', 'username', 'profile_picture', ...]

Note:

  • This mixin expects the model to have a details related manager
  • The related detail should have a profile_picture ImageField
  • Returns None if no profile picture is found or an error occurs
emailstring or nullRead-onlyformat: "email"

Email of the co-creator. Required if user is not set.

roleenum or any or nullRead-only

Role of the co-creator in the publication

  • owner - Owner
  • admin - Admin
  • editor - Editor
  • viewer - Viewer
statusenum
  • not_started - Not Started
  • in_progress - In Progress
  • completed - Completed
  • failed - Failed
Allowed values:
created_atdatetimeRead-only
is_invitebooleanRead-onlyDefaults to false