# Content > God node · 24 connections · [/home/scheianu/digiserver-v2/app/models/content.py](file:///home/scheianu/digiserver-v2/app/models/content.py#L8) ## Call Trace Diagram ```mermaid sequenceDiagram participant P0 as Content participant P1 as Playlist participant P2 as Models package for digiserver-v2. participant P3 as PlayerEdit participant P4 as PlayerUser participant P5 as HTTPSConfig participant P6 as User participant P7 as Player participant P8 as ServerLog participant P9 as Group participant P10 as PlayerFeedback participant P11 as API blueprint for REST endpoints and player communication. participant P12 as Rate limiting decorator. Args: max_requests: Maximum number of participant P13 as Decorator to verify player authentication via auth code. participant P14 as API health check endpoint. participant P15 as Get server SSL certificate. participant P16 as Authenticate a player and return auth code and configuration. Request J participant P17 as Verify an auth code and return player information. Request JSON: participant P18 as Get playlist using hostname and quickconnect code (Kivy player compatible). participant P19 as Get playlist for a specific player. Requires player authentication via participant P20 as Get current playlist version for a player. Lightweight endpoint for pla participant P21 as Get cached playlist for a player based on assigned playlist. participant P22 as Receive feedback/status updates from players (Kivy player compatible). participant P23 as Get current status of a player (public endpoint for monitoring). participant P24 as Get progress of a file upload. participant P25 as Get system information and statistics. participant P26 as List all content with basic information. participant P27 as Get recent server logs. Query parameters: limit: Number of logs participant P28 as Receive edited media from player. Expected multipart/form-data: - i participant P29 as Test SSH connection to a remote host. Request JSON: hostname: T participant P30 as Deploy player code to a remote host via SSH. Request JSON: host participant P31 as Handle 404 errors in API. participant P32 as Handle 405 errors in API. participant P33 as Handle 500 errors in API. participant P34 as Main Blueprint - Dashboard and Home Routes participant P35 as Health check endpoint participant P36 as create_playlist() participant P37 as upload_media() participant P38 as process_file_in_background() participant P39 as upload_content() participant P40 as add_weblink() participant P41 as add_weblink_to_playlist() participant P42 as Playlist model for managing content collections. participant P43 as Playlist model representing a collection of content. Attributes: participant P44 as String representation of Playlist. participant P45 as Increment playlist version for sync detection. participant P46 as Get content items ordered by position. participant P47 as Get number of players assigned to this playlist. participant P48 as Get number of content items in this playlist. participant P49 as Calculate total duration of all content in seconds. P0->>+ P1: uses P1-->>- P0: return P1->>+ P0: uses P0-->>- P1: return P1->>+ P2: uses P2-->>- P1: return P2->>+ P3: uses P3-->>- P2: return P2->>+ P4: uses P4-->>- P2: return P2->>+ P1: uses P1-->>- P2: return P2->>+ P5: uses P5-->>- P2: return P2->>+ P0: uses P0-->>- P2: return P2->>+ P6: uses P6-->>- P2: return P2->>+ P7: uses P7-->>- P2: return P2->>+ P8: uses P8-->>- P2: return P2->>+ P9: uses P9-->>- P2: return P2->>+ P10: uses P10-->>- P2: return P1->>+ P11: uses P11-->>- P1: return P11->>+ P3: uses P3-->>- P11: return P11->>+ P4: uses P4-->>- P11: return P11->>+ P1: uses P1-->>- P11: return P1->>+ P12: uses P12-->>- P1: return P1->>+ P13: uses P13-->>- P1: return P1->>+ P14: uses P14-->>- P1: return P1->>+ P15: uses P15-->>- P1: return P1->>+ P16: uses P16-->>- P1: return P1->>+ P17: uses P17-->>- P1: return P1->>+ P18: uses P18-->>- P1: return P1->>+ P19: uses P19-->>- P1: return P1->>+ P20: uses P20-->>- P1: return P1->>+ P21: uses P21-->>- P1: return P1->>+ P22: uses P22-->>- P1: return P1->>+ P23: uses P23-->>- P1: return P1->>+ P24: uses P24-->>- P1: return P1->>+ P25: uses P25-->>- P1: return P1->>+ P26: uses P26-->>- P1: return P1->>+ P27: uses P27-->>- P1: return P1->>+ P28: uses P28-->>- P1: return P1->>+ P29: uses P29-->>- P1: return P1->>+ P30: uses P30-->>- P1: return P1->>+ P31: uses P31-->>- P1: return P1->>+ P32: uses P32-->>- P1: return P1->>+ P33: uses P33-->>- P1: return P1->>+ P34: uses P34-->>- P1: return P1->>+ P35: uses P35-->>- P1: return P1->>+ P36: calls P36-->>- P1: return P0->>+ P2: uses P2-->>- P0: return P0->>+ P37: calls P37-->>- P0: return P0->>+ P38: calls P38-->>- P0: return P0->>+ P39: calls P39-->>- P0: return P0->>+ P40: calls P40-->>- P0: return P0->>+ P41: calls P41-->>- P0: return P0->>+ P34: uses P34-->>- P0: return P0->>+ P35: uses P35-->>- P0: return P0->>+ P42: uses P42-->>- P0: return P0->>+ P43: uses P43-->>- P0: return P0->>+ P44: uses P44-->>- P0: return P0->>+ P45: uses P45-->>- P0: return P0->>+ P46: uses P46-->>- P0: return P0->>+ P47: uses P47-->>- P0: return P0->>+ P48: uses P48-->>- P0: return P0->>+ P49: uses P49-->>- P0: return ``` ## Connections by Relation ### calls - [[upload_media()]] `INFERRED` - [[process_file_in_background()]] `INFERRED` - [[upload_content()]] `INFERRED` - [[add_weblink()]] `INFERRED` - [[add_weblink_to_playlist()]] `INFERRED` ### contains - [[content.py]] `EXTRACTED` ### method - [[.__repr__()]] `EXTRACTED` - [[.is_image()]] `EXTRACTED` - [[.is_video()]] `EXTRACTED` - [[.is_pdf()]] `EXTRACTED` - [[.is_weblink()]] `EXTRACTED` ### rationale_for - [[Content model representing media files for display. Attributes:]] `EXTRACTED` ### uses - [[Playlist]] `INFERRED` - [[Models package for digiserver-v2.]] `INFERRED` - [[Main Blueprint - Dashboard and Home Routes]] `INFERRED` - [[Health check endpoint]] `INFERRED` - [[Playlist model for managing content collections.]] `INFERRED` - [[Playlist model representing a collection of content. Attributes:]] `INFERRED` - [[String representation of Playlist.]] `INFERRED` - [[Increment playlist version for sync detection.]] `INFERRED` - [[Get content items ordered by position.]] `INFERRED` - [[Get number of players assigned to this playlist.]] `INFERRED` - [[Get number of content items in this playlist.]] `INFERRED` - [[Calculate total duration of all content in seconds.]] `INFERRED` --- *Part of the graphify knowledge wiki. See [[index]] to navigate.*