← Back to all articles
Blog

SAAS integration API added, cloud-native distributed architecture completed, and BeeCMS frontend 70% finished

I have said EFVCMS will ultimately serve as an SAAS system, connecting to any frontend through simple API calls with distributed scalability. This update completes an easy integration API: POST a video URL to EFVCMS, then receive multi-resolution m3u8 URLs, video information and posters after transcoding. The BeeCMS design is complex: a cloud-native system with unlimited scaling, cloud storage by default through self-hosted Minio, with minio itself a distributed open-source cloud-native storage system. All user uploads go to cloud storage. Mongodb and redis provide scalable database and memory caching. The new SAAS API in EFVCMS connects user uploads to EFVCMS transcoding jobs and returns results seamlessly. Videos and images upload directly to cloud storage, and EFVCMS remotely transcodes the stored video data.

Beecms user-upload diagram

Updates

  • One: Added the SAAS API. Use EFVCMS as an SAAS backend, create jobs through the api and receive results easily.
  • Two: The BeeCMS frontend is 70% complete. A preview may arrive by the end of the month. It uses advanced modern technologies and feels very smooth.
  • Three: Further logic improvements and BUG fixes.

Future plans include smart editing on frontend playback pages: users choose an output resolution, music and time range to generate short videos for Douyin, Kuaishou, social sharing or friends. The design is complete and powerful. It can also join videos, append intros and outros, add audio and images, picture-in-picture, canvas and webGL. These will be exposed in EFVCMS through SAAS API services.

API overview

post /fluentapi/createjob
data clientId, remotePath, notifyUrl, apikey, apisecret

clientId is the client's unique ID for identification.

remotePath is the remote video URL. In Beecms, users upload through the frontend to minio, exposing a URL from cloud storage. Future API calls will not upload videos to EFVCMS; cloud storage and EFVCMS remain fully separate.

notifyUrl receives completed-transcoding notifications. Data is sent by post to this domain. The post includes apikey, apisecret and movie; movie contains complete output data, including duration, posters and multi-resolution m3u8 URLs.

apikey and apisecret verify permission to use the endpoint.

The client only needs to store the final notification data in its database.

BeeCMS screenshots