Documentation Index
Fetch the complete documentation index at: https://mintlify.com/cgwire/zou/llms.txt
Use this file to discover all available pages before exploring further.
Overview
The Comments API provides comprehensive functionality for managing task feedback, review comments, attachments, and threaded discussions. Comments are tightly integrated with task status changes, creating an audit trail of task progression.Key Concepts
Comments and Task Status
Comments in Zou are unique because they’re linked to task status changes:- Every comment includes a
task_status_idthat records the task state when the comment was made - Creating a comment can change the task status
- Comments maintain history of status transitions (WIP, Pending Review, Retake, Done, etc.)
- The
last_comment_dateon tasks tracks the most recent feedback
Review Workflow
Status Types:is_wip: Marks task as work in progress, setsreal_start_dateis_retake: Incrementsretake_count, subject to project retake limitsis_feedback_request: Sets taskend_datewhen first requested
- Configured via
max_retakeson project or entity data - Prevents infinite revision cycles
- Raises
WrongParameterExceptionwhen limit exceeded
Comment Threads
Comments support nested replies for detailed discussions:- Top-level comments: Linked to task status changes
- Replies: Stored in JSONB
repliesfield on parent comment - Each reply has its own
id,person_id,text,mentions, andcreated_at - Replies can include attachments via
attachment_files
Attachments
Upload files to comments or replies:- Supports multiple file types (images, videos, documents, PDFs)
- Stored with metadata:
name,size,mimetype,extension - Can be linked to top-level comments or specific replies
- Retrievable by task or project for batch operations
Core Features
1. Mentions and Notifications
Person Mentions:2. Hashtag Linking
Link comments across task types using hashtags:3. Comment Acknowledgements
Team members can acknowledge comments:- Toggle acknowledgement on/off per user
- Tracks who has seen and acknowledged feedback
- Useful for confirming review notes are understood
4. Checklists and Links
Enhance comments with structured data:Status Automations
Comments trigger status automations defined at the project level: Automation Types:- Status Change: When task A reaches status X, set task B to status Y
- Ready For: Update asset
ready_forfield based on task completion - Import Revision: Copy latest preview from triggering task to target task
- When Animation reaches “Approved”, automatically set Lighting to “Ready to Start”
- When Lighting reaches “Waiting for Approval”, mark asset as “ready_for” Compositing
- Import approved animation preview into Lighting task
Comment Data Structure
Permissions
Creating Comments
- Requires
task_action_access(assigned to task or supervisor) - Can specify
person_idonly with manager permissions - Can set custom
created_atonly with manager permissions
Managing Attachments
- Delete own attachments: Comment author
- Delete others’ attachments: Project managers only
Replies
- Add reply: Task access or comment author
- Delete reply: Reply author or administrators
- Clients can only reply to comments from their studio
Acknowledgements
- Any user with task access can acknowledge/unacknowledge
Events and Notifications
Comments trigger multiple event types:comment:new- New comment createdcomment:reply- Reply added to commentcomment:delete-reply- Reply deletedcomment:acknowledge/comment:unacknowledge- Acknowledgement toggledtask:status-changed- Task status changed via comment (when status differs)
- Task assignees
- Mentioned users (@mentions)
- Mentioned departments
- Comment thread participants (for replies)
- Task subscribers
Best Practices
- Always include task_status_id: Even for simple notes, specify the current status
- Use mentions wisely: Mention specific people who need to take action
- Leverage hashtags: Link related feedback across departments with #hashtags
- Attach reference files: Include screenshots, videos, or documents to clarify feedback
- Structure feedback: Use checklists for multi-item feedback
- Monitor retakes: Check project
max_retakessettings to avoid blocking tasks - Reply for clarification: Use replies to keep discussions threaded and organized
Related Endpoints
See the Comments & Playlists Endpoints for full API reference.Service Functions
Key functions incomments_service.py:
create_comment()- Creates comment with status change, hashtag linking, and notificationsreply_comment()- Adds threaded reply with mentionsacknowledge_comment()- Toggles acknowledgement for current useradd_attachments_to_comment()- Uploads files to comment or replyget_comment_mentions()- Parses @mentions from textget_comment_hashtags()- Parses #hashtags from textget_attachment_file()- Retrieves attachment metadatadelete_reply()- Removes reply and associated attachments