Frequently Asked Questions

Getting Started & Implementation

How do I use Hygraph to build a streaming platform like Netflix?

Hygraph enables you to build a streaming platform by acting as a centralized content platform that unifies, structures, and dispenses data from multiple sources and endpoints. You can federate content from APIs like Cloudinary (for video hosting) and OMDb (for metadata) using Hygraph's remote sources feature. The tutorial on building a streaming platform walks you through setting up models, integrating APIs, and deploying your app using Next.js and Tailwind CSS.

What is the typical implementation timeline for a Hygraph-powered streaming platform?

Implementation timeframes can vary based on project complexity. For example, Top Villas launched a new project in just 2 months, while Si Vale met aggressive deadlines with a smooth initial phase. Hygraph's low-code approach and structured onboarding (including intro calls, account provisioning, and technical/content kickoffs) help accelerate deployment. Read more.

How easy is it to get started with Hygraph?

Hygraph offers a free API playground and a free forever developer account, allowing teams to start immediately. The onboarding process includes introduction calls, account provisioning, business and technical kickoffs, and access to training resources like webinars and documentation. Explore documentation.

What technical documentation is available for Hygraph?

Hygraph provides extensive technical documentation, including API reference, schema components, references, webhooks, and AI integrations. Key resources include the API Reference, Components Guide, and AI Agents Documentation.

Can I use Hygraph with my preferred frontend framework?

Yes, Hygraph is compatible with popular frontend frameworks such as Next.js, React, and others. The streaming platform tutorial uses Next.js and Tailwind CSS, but the principles can be transferred to other frameworks. Learn more.

Features & Capabilities

What are the key features of Hygraph for building a streaming platform?

Hygraph offers GraphQL-native architecture, remote sources for API integration, content federation, asset management (including Cloudinary integration), and user-friendly schema modeling. These features enable you to unify video assets, metadata, and other content for scalable streaming platforms. See all features.

Does Hygraph support integration with video hosting and metadata APIs?

Yes, Hygraph supports integration with video hosting platforms like Cloudinary and metadata sources like OMDb via its remote sources feature. You can connect REST and GraphQL APIs, and use marketplace apps for additional integrations. Integration docs.

What APIs does Hygraph provide?

Hygraph offers multiple APIs: Content API (read/write), High Performance Content API (low latency, high throughput), MCP Server API (AI assistant integration), Asset Upload API, and Management API. API Reference.

How does Hygraph handle asset management for streaming platforms?

Hygraph integrates with digital asset management systems like Cloudinary, AWS S3, Bynder, and more. You can upload, organize, and retrieve video assets directly within your content models. Cloudinary integration guide.

Can I build custom integrations with Hygraph?

Yes, developers can build custom functionalities using Hygraph's SDK or connect external APIs via REST and GraphQL. The Hygraph Marketplace also offers pre-built apps for headless commerce, PIMs, and more. Explore Marketplace.

How does Hygraph optimize performance for content delivery?

Hygraph provides high-performance endpoints designed for low latency and high read-throughput. It actively measures GraphQL API performance and offers practical advice for optimization. Performance blog.

Pricing & Plans

What pricing plans does Hygraph offer?

Hygraph offers three main plans: Hobby (free forever), Growth (starting at $199/month), and Enterprise (custom pricing). Each plan includes different limits and features tailored to individual, small business, and enterprise needs. See pricing details.

What features are included in the Hobby plan?

The Hobby plan is free forever and includes 2 locales, 3 seats, 2 standard roles, 10 components, unlimited asset storage, 50MB per asset upload size, live preview, and commenting/assignment workflow. Sign up.

What does the Growth plan cost and include?

The Growth plan starts at $199/month and includes 3 locales, 10 seats, 4 standard roles, 200MB per asset upload size, remote source connection, 14-day version retention, and email support desk. Get started.

What is included in the Enterprise plan?

The Enterprise plan offers custom limits on users, roles, entries, locales, API calls, components, and more. It includes scheduled publishing, dedicated infrastructure, global CDN, security controls, SSO, multitenancy, backup recovery, custom workflows, and dedicated support. Try Enterprise.

Security & Compliance

What security and compliance certifications does Hygraph have?

Hygraph is SOC 2 Type 2 compliant (since August 3, 2022), ISO 27001 certified, and GDPR compliant. It uses ISO 27001-certified providers and data centers for hosting. Security features.

How does Hygraph ensure data security for streaming platforms?

Hygraph provides enterprise-grade security features including granular permissions, audit logs, SSO integrations, encryption at rest and in transit, regular backups, and dedicated hosting options in multiple regions. Learn more.

Use Cases & Benefits

What problems does Hygraph solve for streaming platforms?

Hygraph addresses operational inefficiencies (developer dependency, legacy tech stacks), financial challenges (high costs, slow speed-to-market), and technical issues (complex schema evolution, integration difficulties, performance bottlenecks, localization, and asset management). See case studies.

Who can benefit from using Hygraph?

Hygraph is ideal for developers, product managers, content creators, marketing professionals, and solutions architects at enterprises, agencies, eCommerce platforms, media/publishing companies, technology firms, and global brands. Industries served.

What business impact can customers expect from using Hygraph?

Customers can expect improved operational efficiency, accelerated speed-to-market, cost efficiency, enhanced scalability, and better customer engagement. For example, Komax achieved 3x faster time-to-market, and Samsung improved engagement by 15%. Read success stories.

Can you share specific case studies of customers using Hygraph?

Yes. Notable case studies include Samsung (scalable API-first app), Dr. Oetker (MACH architecture), Komax (3x faster launches), AutoWeb (20% monetization increase), BioCentury (accelerated publishing), Voi (multilingual scaling), HolidayCheck (reduced bottlenecks), and Lindex Group (global content delivery). See all case studies.

What industries are represented in Hygraph's case studies?

Industries include SaaS, marketplace, education technology, media/publication, healthcare, consumer goods, automotive, technology, fintech, travel/hospitality, food/beverage, eCommerce, agency, online gaming, events/conferences, government, consumer electronics, engineering, and construction. Industry list.

How does Hygraph help with localization and asset management?

Hygraph offers advanced localization and asset management features, supporting multiple locales, digital asset integrations, and content federation for global teams. Voi, for example, scaled content across 12 countries and 10 languages. Voi case study.

Competition & Comparison

How does Hygraph compare to traditional CMS platforms?

Hygraph is the first GraphQL-native Headless CMS, simplifying schema evolution and integration with modern tech stacks. Unlike traditional CMS platforms that rely on REST APIs and developer intervention, Hygraph offers content federation, user-friendly tools, and enterprise-grade features. Migration story.

Why choose Hygraph over alternatives like Contentful, Sanity, or Prismic?

Hygraph stands out for its GraphQL-native architecture, content federation, cost efficiency, accelerated speed-to-market, robust integration options, and enterprise-grade security. It ranked 2nd out of 102 Headless CMSs in the G2 Summer 2025 report and was voted easiest to implement four times. G2 report.

How does Hygraph address pain points differently than competitors?

Hygraph eliminates developer dependency with an intuitive UI, supports modern workflows via GraphQL, integrates multiple data sources without duplication, and offers Smart Edge Cache for performance. Its focus on content federation and user-friendly tools sets it apart from competitors. See differentiation.

Customer Experience & Support

What feedback have customers given about Hygraph's ease of use?

Customers praise Hygraph's intuitive editor UI, ease of setup, custom app integration, and ability to manage content independently. Anastasija S., Product Content Coordinator, noted, "Every change I make to Hygraph I can instantly see on the front-end." Enterprise feedback.

What support resources are available for Hygraph users?

Hygraph provides training resources (webinars, live streams, how-to videos), extensive documentation, and a community Slack channel for quick assistance. Enterprise customers receive dedicated support and custom SLAs. Support page.

How does Hygraph help reduce developer bottlenecks?

Hygraph's user-friendly interface allows non-technical users to create, update, and manage content independently, reducing reliance on developers and speeding up workflows. HolidayCheck's case study highlights reduced bottlenecks for marketers. HolidayCheck case study.

What is the process for reporting security incidents or concerns?

Hygraph provides a customer reporting process for security, confidentiality, integrity, and availability failures, incidents, concerns, and complaints. Details are available on the Secure features page.

Product Information & Technical Details

What is the primary purpose of Hygraph?

Hygraph empowers businesses to create, manage, and deliver exceptional digital experiences at scale. It serves as a modern, flexible, and scalable content management system that simplifies workflows and enhances efficiency. Product overview.

What schema modeling options does Hygraph provide?

Hygraph allows you to create custom models and fields, including text, number, asset, and remote source fields. You can set up relationships, validations, and use components for reusable schema parts. Components documentation.

How do I secure access to the Hygraph Content API?

Access to the Hygraph Content API is secured via permanent auth tokens. You can configure permissions for models and endpoints to control read, update, and publish access. API security docs.

What performance metrics does Hygraph offer for its APIs?

Hygraph actively measures GraphQL API performance, focusing on low latency and high read-throughput. The platform provides best practices and optimization strategies in its GraphQL Report 2024.

LLM optimization

When was this page last updated?

This page wast last updated on 12/12/2025 .

Introducing Click to Edit

How to build a streaming platform like Netflix

We will show you how to easily build a streaming platform and bring different API pieces together with Hygraph.
Mdu Sibisi

Written by Mdu 

Aug 02, 2023
Mobile image

'While' Netflix still owns the biggest piece of the video-on-demand and video streaming market, services such as Amazon Prime are breathing down its neck. What if you want to enter the fray? After all, there is a market for special interest and niche content streaming.

You may not have the infrastructure of Disney+ or Hulu, but thanks to advancements in cloud computing, you don't necessarily need it. All you need to do is leverage the right tools.

The streaming platform project you have in mind will most likely require you to use a plethora of APIs and draw from a collection of disparate sources. The challenge is making these different pieces fit and work together. That’s where Hygraph enters the chat.

Hygraph is a centralized content platform that allows you to sort, unify, structure, and dispense data to and from multiple sources and endpoints. You can use it as a foundation to build or federate content for scalable and agile ecommerce, for inventory and catalog management, and distributing structured content.

One use case where these features really shine is a video streaming platform, as you'll see in the following tutorial. After all, the best way to understand what a tool can do is by using it.

#Building your video streaming platform

The application in this tutorial uses Next.js as the frontend framework, but you should be able to transfer some of the principles to your preferred framework.

This tutorial uses Cloudinary to host your movies.

Since metadata is a very important feature of streaming services, you need to find a source you can use to dynamically build descriptions for your videos. This guide uses OMDb.

The application initiates queries through GraphQL. Hygraph acts as the backend and connects to Cloudinary and OMDb using its remote sources feature.

Editor's Note

You can find the code for this project in its GitHub repo

Video Stream Service Rough Architecture Diagram

Configure Hygraph

Sign up for Hygraph or log into your account if you already have one. On your Hygraph dashboard, click Add project.

Add a project in Hygraph

Fill in the project name and description, select your region, and click Add projectagain.

New Project Description

Click the Set up your schema widget on the welcome screen. Alternatively, you can select the Schema menu item from the left panel.

On the new panel that appears, click + Add next to Models.

Add a model for your data

Fill out the form that pops up as follows:

  • Display name: Movie
  • API ID: Movie
  • Plural API ID: Movies
  • Description: Video Streaming Content

Click Add model. Add a new model for videos

Now that you've created your streaming content model, you can add the necessary fields to it. There are many fields you can pull from OMDb, but this tutorial keeps it simple and only uses four. You will find a panel on the left side of the window with a list of fields. Add the following to your schema:

  • Title: A single-line text field to store the video title. This will be used as an ID to fetch data from OMDb too. Make sure to use this as a title field.
  • Year: A number field with the year when the movie/episode was released.

The entire process is similar to adding a model, though you do get additional options such as validations and initial/default values. Keep everything simple for now. All you need to do is add a name and make sure the Use as Title Field checkbox is selected for the Title and unselected for the rest of the fields.

Add fields

Click Content from the sidebar, then click the Movie model under Default Views.

Upload videos to Cloudinary

As mentioned earlier, this tutorial uses Cloudinary as the video library, so sign up for Cloudinary if you don't already have an account.

After logging in, click Media Library from the sidebar, then select Folders from the top menu bar. Click the Create A Folder icon underneath the navigation panel.

Name your folder Movies and click Save.

Create Folder

Open the new folder, and click Upload to upload your video.

Upload content

In the screen that appears, expand the Advanced option and enter a Public ID. It’s a good idea to use the title of the movie/video you’re working with. Make a note of the Public ID, as you'll need it to retrieve the video later.

You can also attach tags to the video, which you can use for grouping later on.

Next, click Browse under the My Files tab.

Upload a video

Select a movie or a clip from your local system; depending on its size, it may take a few moments to upload. Cloudinary will inform you of a successful upload with a popup notification on your screen. Click the notification to refresh your list of assets and see the video. Do this for every video you want to add to your streaming service’s movie list.

Set up your frontend

This tutorial uses Next.js as your framework with Tailwind CSS.

Open a command line terminal of your choice (Command Prompt, PowerShell, etc.). Set the directory to the one you use for your programming projects, eg. Documents\Programming Projects\.

Enter and run the following command:

npx create-next-app

You'll be asked to name your project. You can call it hygraph-video-streaming or anything else you think is appropriate.

Select No when prompted if you'd like to use TypeScript and ESLint (respectively).

Select No when asked if you want to use the 'src/' directory, and No when asked if you want to use the experimental 'app/' directory.

Use Next/* as your import alias.

NPX Create-Next-App

Change the directory to the newly created project folder:

cd hygraph-video-streaming

Install Tailwind CSS with its dependencies using the following command:

npm install -D tailwindcss postcss autoprefixer

Initialize Tailwind:

npx tailwindcss init -p

This generates the files tailwind.cofig.jsand postcss.config.js. They allow you to configure your project's themes, fonts, color schemes, plugins, and so on.

Open the tailwind.cofig.js in a code editor such as VS Code. You need to tell Tailwind where it can find all your project's templates, components, and plugins, so add the following code to the content list:

"./pages/**/*.{js,ts,jsx,tsx}",
"./components/**/*.{js,ts,jsx,tsx}",

Your tailwind.cofig.js should now look like this, as seen in this tutorial’s repository.

Next, navigate to the styles folder and open the globals.css file. Replace its contents with the following directives:

@tailwind base;
@tailwind components;
@tailwind utilities;

This allows you to access Tailwind's CSS classes from all your components.

Next, create a simple navigation bar. Create a folder named components in your project's root folder. Change the directory to it and create a new file called navbar.jsx.

Add the following code to it:

export default function NavBar() {
return (
<nav
className={
"flex justify-between items-center p-2 px-4 border-b-4 border-zinc-500"
}
>
<h1 className={"text-orange-700 font-bold text-2xl"}>
Horoma Video Streaming
</h1>
</nav>
);
}

Now, you must add your component to the main page. Open the pages/_app.js file and replace it with the following code:

import 'Next/styles/globals.css';
import NavBar from "Next/components/NavBar";
export default function App({ Component, pageProps }) {
return (
<main className={"max-w-[990px] mx-auto py-4"}>
<NavBar />
<Component {...pageProps} />
</main>
);
}

Navigate to the pages/index.js file and open it. Replace all its contents with the following code:

export default function Home() {
}

Editor's Note

You'll add more code to it later.

Next, return to your command line terminal and run the following command to launch your project:

npm run dev

Open your web browser and navigate to http://localhost:3000. If you've performed all the preceding steps correctly, your page should look this:

Initial video streaming page

This is the foundation of your video streaming website.

Now, it’s time to add some necessary functions and behaviors. Go back to your terminal and press Ctrl + C to terminate the batch job (ie, undeploy the application). Answer yes (Y) when asked to confirm.

Fetch the OMDb API key

Navigate to OMDb's API key page. Select the radio button labeled FREE, and new fields should appear on the form. Fill in the form with all the necessary details and then click Submit.

OMDB Generate API Key

OMDb sends the generated API key along with a link to activate the email address you provided. You'll use the key to query your metadata later, so make sure to note the address attached to your API Key and activate it using the link OMDb sent you.

Add OMDB as a Remote Source in Hygraph

On the Schema page of your Hygraph dashboard, click Add next to Remote Sources to add OMDb’s REST API as a remote source. Fill out the Create Remote Source form as follows:

  • Display name: OMDb
  • Prefix: OMDb
  • Type: REST
  • Base URL: http://www.omdbapi.com/?i=tt3896198&apikey=[YourAPIKEY]

You can leave the Description field blank, but make sure to add your API Key to the Base URL. Finally, click Add.

Add Remote Resource

Open the MOVIE model page and add a new REST field from the sidebar. Fill out the form as follows:

  • Display name: OMDB Meta Data
  • API ID: omdbMD
  • Remote source: OMDb
  • Method: GET
  • Return type: JSON
  • Path: &t={{doc.title}}&{{doc.year}}

Click Add.

Add Field

Configure Hygraph and Cloudinary authentication

Since Hygraph features a direct integration for Cloudinary, you don't have to set up an additional remote source. Simply navigate to the Hygraph Cloudinary installation page then click on Install Cloudinary for Hygraph.

Install Cloudinary for Hygraph

On the next screen, you must choose on which project and environment you'd like to install the Cloudinary app. Select Video Streaming for the project name and Master Environment for the environment, then click Install app.

App installation configuration

On the app permission authorization screen, click Authorize app**.

App Authorization Screen

Cloudinary will then direct you to the configuration screen where you must input your Cloudinary cloud name and API key. Both can be found using the Cloudinary console. Navigate to the Cloudinary dashboard and click Programmable Media (<o>) in the sidebar:

Programmable media

This screen allows you to see all your cloud credentials.

Cloud name

Copy the code in the Cloud Name and API Key widgets, paste it into the corresponding fields in the Hygraph Cloudinary configuration screen, and click Save.

Cloudinary configuration screen

Next, you must add the Cloudinary asset to your schema so you can access your video library. While you're still on the Hygraph dashboard, click on Schema on the left panel then select Movie from the Schema panel. Scroll through the list of fields on the far-right panel until you find the Cloudinary Asset entry. Single-click on it.

Add a Cloudinary asset

In the field configuration screen that launches, set the Display Name as Cloudinary Video Library. Leave everything else as is and click on Add.

Cloudinary asset field

Add content to Hygraph

To add content to Hygraph, click Content in the sidebar, select Movie under DEFAULT VIEWS, and then click Add entry.

Add entry

Add your movie's public ID and the year of its release in the corresponding fields.

Please note that if your movie’s title contains special characters such as colons (:), semi-colons (;), or single inverted commas ('), you should replace them with URL encoding references. For instance, write Child’s Play as Child%27s Play. Alternatively, you can encode the title in your JavaScript/React code.

Next, click Add from Cloudinary.

Content screen

In the Cloudinary asset picker screen that is launched, select the corresponding movie from your video library and then click Add & close:

Cloudinary asset picker

Click Save and Publish and, when prompted, confirm your selection.

Publish your content

Follow the steps above for every movie in your library until you've populated your content list.

Content list

Secure access to the Hygraph content API

Since the Hygraph Content API rejects unauthenticated requests by default, you must create a permanent auth token on the Project Settings page to securely connect to it.

In the Permanent Auth Tokens section of the Project Settings page, click Add Token.

Add token

Enter a token name such as Movie Token and click Add & configure permissions.

Add and configure permissions

On the token permissions page, copy and save the token value for later use, then click Add permission.

Add permission

In the Add Permissions pop-up, select Movie from the Model dropdown list. Select the Read, Update, and Publish permissions checkboxes. Leave everything else as is and click Add.

Add permission for movie model

Click API Access under Endpoints in the Settings pane. Copy and save the content API endpoint to use in your Next.js application.

Endpoints options in Settings

Using GraphQL to fetch the metadata

Create a .env.local in the root of your project directory, and add the following values to it:

HYGRAPH_URL=<CONTENT_API_ENDPOINT_FROM_HYRAPH>
API_TOKEN=<PERMANENT_AUTH_TOKEN_FROM_HYGRAPH>

Replace the tags with the actual values you copied and saved earlier on.

Now you need to install the GraphQL client's dependencies. Execute the following command:

npm i graphql graphql-request

Create a new file named graphql.js at the project root. Enter the following code to initialize it:

import { GraphQLClient } from "graphql-request";
const hygraph = new GraphQLClient(process.env.HYGRAPH_URL);
hygraph.setHeader("Authorization", `Bearer ${process.env.API_TOKEN}`);
export default hygraph;

Add the following code below the Home function:

export async function getStaticProps() {
const movieQuery = gql`
{
movies {
omdbMD
cloudinaryVideoLibrary
}
}
`;
const { movies } = await hygraph.request(movieQuery);
return {
props: {
movies
},
};
}

This builds the GraphQL query and executes and returns the results as a set of properties (movies), which will be passed to the Home function.

Add the necessary fields to the Home function by looping through the static properties (Query Results) and adding a video player for each loop. You can use the results to display the omdbMD property to display the video's metadata, with fields like year, plot, genre, and so on.

import Head from "next/head";
import React, { StrictMode } from 'react';
/*
* Add necessary hygraph and GraphQL imports
*/
import hygraph from "Next/graphql";
import { gql } from "graphql-request";
export default function Home({ movies }) {
return (
<>
<Head>
<title>Video Streaming with Hygraph</title>
</Head>
{movies.map((movie, index) => (
<div className="text-sm" key={index}>
<video width="320" height="240" controls>
<source src= {movie.cloudinaryVideoLibrary.url} type="video/mp4"/>
Your browser does not support the video tag.
</video>
<p>Movie Title: {movie.omdbMD.Title}</p>
<p>Year: {movie.omdbMD.Year}</p>
<p>
Plot Summary: {movie.omdbMD.Plot}
</p>
</div>
))}
</>
);
}

The complete index file should resemble the following file.

Your video streaming website is functionally ready! You can now personalize the design and add more components as you see fit. You can use the OMDb metadata to generate thumbnails for your movies, too. Once it looks presentable, you can deploy and publish it.

Final result

#Conclusion

This tutorial showed you how to use Hygraph to create a streaming video platform.

It goes without saying that streaming platforms have complex architecture; they can take months to build. But with Hygraph, what would take you a month can take you a week or a day. Its low-code approach decreases manual coding and debugging, and it gives you a central point for altering or keeping track of your software stack, which ultimately grants your products greater interoperability and flexibility.

Contact Hygraph for an enterprise demo today.

Blog Author

Mdu Sibisi

Mdu Sibisi

Technical writer

Mdu Sibisi is an Oracle-certified software developer and blogger with over ten years of experience, primarily in object-orientated languages. He's been writing about tech for eight years.

Share with others

Sign up for our newsletter!

Be the first to know about releases and industry news and insights.