Menu
Products
Products
Video Hosting
Upload and manage your videos in a centralized video library.
Image Hosting
Upload and manage all your images in a centralized library.
Galleries
Choose from 100+templates to showcase your media in style.
Video Messaging
Record, and send personalized video messages.
CincoTube
Create your own community video hub your team, students or fans.
Pages
Create dedicated webpages to share your videos and images.
Live
Create dedicated webpages to share your videos and images.
For Developers
Video API
Build a unique video experience.
DeepUploader
Collect and store user content from anywhere with our file uploader.
Solutions
Solutions
Enterprise
Supercharge your business with secure, internal communication.
Townhall
Webinars
Team Collaboration
Learning & Development
Creative Professionals
Get creative with a built in-suite of editing and marketing tools.
eCommerce
Boost sales with interactive video and easy-embedding.
Townhall
Webinars
Team Collaboration
Learning & Development
eLearning & Training
Host and share course materials in a centralized portal.
Sales & Marketing
Attract, engage and convert with interactive tools and analytics.
"Cincopa helped my Enterprise organization collaborate better through video."
Book a Demo
Resources
Resources
Blog
Learn about the latest industry trends, tips & tricks.
Help Centre
Get access to help articles FAQs, and all things Cincopa.
Partners
Check out our valued list of partners.
Product Updates
Stay up-to-date with our latest greatest features.
Ebooks, Guides & More
Customer Stories
Hear how we've helped businesses succeed.
Boost Campaign Performance Through Video
Discover how to boost your next campaign by using video.
Download Now
Pricing
Watch a Demo
Demo
Login
Start Free Trial
An admin portal for video review enables authenticated users to manage, inspect, and approve video content before it becomes publicly available. This workflow is useful for moderation, compliance checks, and internal quality assurance. The architecture typically involves uploading videos to Amazon S3, processing metadata using AWS Lambda, exposing APIs via Amazon API Gateway, and managing access control through Amazon Cognito. The front-end interface can be developed using frameworks like Vue.js and connected through AWS Amplify. Together, these components form a serverless and scalable portal for reviewing video assets efficiently and securely. Key AWS Services for Video Review Portal To build an efficient and scalable admin portal for video review, it is essential to integrate various AWS services that provide a smooth workflow for managing video files, processing metadata, and facilitating secure communication. Amazon S3 for Video Storage Amazon S3 (Simple Storage Service) provides a scalable solution for storing video files. Videos can be uploaded directly to S3 buckets, which ensures easy access, retrieval, and management of large video files. Using S3 allows administrators to organize videos into folders, track file versions, and apply access control policies. Example S3 Bucket Setup for Video Storage: aws s3 mb s3://your-video-review-bucket aws s3 cp your-video.mp4 s3://your-video-review-bucket/videos/ Explanation: Bucket Creation: The aws s3 mb command creates an S3 bucket for video storage. Uploading Video: Videos are uploaded using the aws s3 cp command, placing them in the appropriate folder (videos/) for review. Using AWS Lambda for Video Metadata Processing AWS Lambda can be used to process videos after they are uploaded to S3. This can include generating video metadata, such as duration, resolution, or performing actions like transcoding or extracting thumbnails. Lambda functions are triggered by events such as a new file being uploaded to S3, making it an ideal tool for serverless processing. Example Lambda Function for Video Metadata Extraction: import boto3 import json import moviepy.editor as mp def lambda_handler(event, context): s3 = boto3.client('s3') # Extract file info from event bucket = event['Records'][0]['s3']['bucket']['name'] key = event['Records'][0]['s3']['object']['key'] # Download video from S3 file_path = '/tmp/video.mp4' s3.download_file(bucket, key, file_path) # Extract video metadata using MoviePy video = mp.VideoFileClip(file_path) duration = video.duration # Video duration in seconds resolution = video.size # (width, height) # Store metadata back in S3 or a database metadata = { 'duration': duration, 'resolution': resolution } # Optionally store metadata in S3 or DynamoDB s3.put_object(Bucket=bucket, Key=f'{key}-metadata.json', Body=json.dumps(metadata)) return { 'statusCode': 200, 'body': json.dumps('Metadata extraction complete') } Explanation: Lambda Trigger: The Lambda function is triggered by an S3 event when a new video is uploaded. Metadata Extraction: The function uses the MoviePy library to extract metadata like video duration and resolution. Storage of Metadata: The metadata is stored back in S3, enabling easy access by the admin portal. Building an Admin Portal Using AWS Amplify AWS Amplify is a development platform that simplifies building web applications, including admin portals. Amplify can be used to create the frontend UI and handle user authentication via Amazon Cognito while interacting with backend APIs built using Amazon API Gateway and Lambda functions. Setting Up Amplify for Admin Portal Step 1: Install AWS Amplify CLI: npm install -g @aws-amplify/cli amplify configure Step 2: Create a New Amplify Project: amplify init Step 3: Add Authentication (Cognito): amplify add auth Step 4: Add API for Video Review (GraphQL or REST): amplify add api Explanation: Amplify CLI: The AWS Amplify CLI simplifies the setup and management of backend resources like authentication (via Cognito) and APIs (via API Gateway). Authentication: Amazon Cognito handles user authentication and authorization, ensuring that only authorized admins can access the video review portal. Building API Endpoints for Video Review API endpoints are needed for various actions such as fetching video data, retrieving metadata, and updating review statuses. You can use AWS API Gateway in conjunction with AWS Lambda to build these API endpoints. Example API Endpoint for Fetching Video Data Step 1: Create a Lambda Function to Handle Video Data: import json import boto3 def lambda_handler(event, context): s3 = boto3.client('s3') # Fetch video metadata from S3 bucket = event['queryStringParameters']['bucket'] key = event['queryStringParameters']['key'] metadata_key = f'{key}-metadata.json' # Retrieve metadata from S3 metadata = s3.get_object(Bucket=bucket, Key=metadata_key) metadata_content = json.loads(metadata['Body'].read().decode('utf-8')) return { 'statusCode': 200, 'body': json.dumps(metadata_content) } Step 2: Create an API Gateway REST API: amplify add api # Choose REST API and link the Lambda function Explanation: Lambda Function: The Lambda function fetches video metadata stored in S3 when an API request is made. API Gateway: API Gateway acts as the frontend interface to access the Lambda function, enabling HTTP requests to interact with the video data. Admin Portal User Interface The admin portal should allow users to: View videos: Display video thumbnails and metadata. Review videos: Provide options to approve, reject, or flag videos. View comments or ratings: Collect feedback from users about video content. Example Vue.js Frontend for Admin Portal
Video Review Portal
{{ video.title }}
Approve
Reject
Explanation: Vue.js Frontend: The frontend displays a list of videos fetched from the API and provides options for admins to approve or reject videos. API Integration: API calls are made to interact with the backend, such as fetching videos and updating their statuses. Final Considerations for Admin Portal Security: Ensure that the admin portal has proper authentication and authorization, restricting access to only authorized users (using Cognito). Performance: Consider using pagination or lazy loading for displaying large numbers of videos. User Experience: Provide clear feedback on video approval/rejection statuses and allow easy navigation within the portal.