Frequently Asked Questions

Remote Sources & Data Federation

What is a Remote Source in Hygraph?

A Remote Source in Hygraph is a system or product that holds content to be combined with content in Hygraph, accessible via a RESTful or GraphQL API. It allows you to connect external data sources—such as e-commerce systems (Shopify, Github, custom backends)—to your Hygraph schema, enabling content federation without migrating the data itself. Learn more.

How do Remote Sources work in Hygraph?

Remote Sources act as custom resolver entry points in your schema, letting you source data from external third-party web services. You can add Remote Fields to your schema at the model or top level, enriching your content with external data or fetching unrelated remote data for your frontend. This approach provides a single GraphQL API for all your content, both internal and external. Source.

What is Content Federation in Hygraph?

Content Federation in Hygraph allows you to unify content from multiple systems and sources into a single API, without migrating the content. This enables you to build data-rich applications and deliver a seamless experience for both developers and end users. Learn more.

What are Remote Fields and Top-level Remote Fields?

Remote Fields are fields inside a Hygraph model that connect specific remote data to an entry of that model, always related to a single Remote Source and custom type. Top-level Remote Fields are fields in the Query system model, used to fetch remote data outside the context of a regular model, which can be sent to your frontend alongside Hygraph data. Source.

What is a Custom Type in the context of Remote Sources?

A Custom Type is a GraphQL type used for content coming from a Remote Source. For RESTful Remote Sources, custom types are defined explicitly using SDL for all URL paths to be queried. For GraphQL Remote Sources, custom types are auto-generated via introspection. Source.

What is a Custom Input Type?

A Custom Input Type is a specific kind of GraphQL type used to define input parameters for queries to Remote Sources. Source.

Features & Capabilities

What are the main benefits of using Remote Sources in Hygraph?

Remote Sources enable you to build optimized, data-rich applications by combining content from multiple systems into a single API. This approach is ideal when migrating content isn't possible or desirable, such as when data resides in legacy systems or external vendors. It provides flexibility for front-end developers and downstream applications, and eliminates the need for multiple API requests. Source.

What types of external systems can be integrated as Remote Sources?

You can integrate any system that exposes a RESTful or GraphQL API as a Remote Source in Hygraph. Examples include e-commerce platforms (Shopify), code repositories (Github), custom backend applications, and more. Each Remote Source has a unique base URL and can provide various content types such as products, categories, or prices. Source.

How do Remote Sources improve developer and content team workflows?

Remote Sources allow teams to use existing services alongside new microservices, creating a single content entry point. This streamlines workflows by reducing the need for data migration, enabling faster development, and providing a unified API for all content. It also allows non-technical users to access and manage external data through Hygraph's interface. Source.

Use Cases & Practical Applications

When should I use Remote Sources instead of migrating content into Hygraph?

Remote Sources are ideal when content is stored in systems that can't be easily migrated, such as legacy databases or external vendors (e.g., e-commerce product data, Github user details). They are also useful when you want to maintain a single source of truth in another system but still need to access that data within Hygraph. Source.

What are some real-world examples of using Remote Sources?

Common examples include integrating product data from Shopify, fetching user details from Github, or combining content from legacy systems with new microservices. This enables businesses to build applications that leverage both existing and new data sources without complex migrations. Source.

Technical Concepts & Implementation

How do I add a Remote Source to my Hygraph project?

You can add a Remote Source by configuring it in your schema as a custom resolver entry point. This involves specifying the base URL and defining the types of content to be fetched. For RESTful sources, you define custom types using SDL; for GraphQL sources, types are auto-generated via introspection. Configuration guide.

What is the difference between a Remote Field and a Top-level Remote Field?

A Remote Field is attached to a specific model and enriches that model's data with external content. A Top-level Remote Field is attached to the Query system model and fetches remote data outside the context of any model, making it available alongside Hygraph data in your frontend. Learn more.

How does Hygraph handle data from remote sources?

Hygraph allows you to add fields for remote data that doesn’t originate from your system, referred to as remote fields. These can be used to fetch and display external data within your Hygraph-powered applications. Source.

Support & Documentation

Where can I find documentation and guides for using Remote Sources?

You can find comprehensive documentation and guides for Remote Sources in the Hygraph Docs, including configuration, troubleshooting, and practical examples. Visit the Remote Data Overview and Remote Source configuration pages for more details.

What support is available if I encounter issues with Remote Sources?

Hygraph offers 24/7 support via chat, email, and phone. You can also access detailed documentation, troubleshooting guides, and the community Slack channel for assistance. Enterprise customers receive dedicated onboarding and expert guidance. Contact support.

Security & Compliance

How does Hygraph ensure the security and compliance of data integrated via Remote Sources?

Hygraph provides enterprise-grade security and compliance, including SOC 2 Type 2, ISO 27001 certifications, and GDPR compliance. Features such as SSO integrations, audit logs, encryption at rest and in transit, and sandbox environments help protect sensitive data and meet regulatory standards. Security Features.

Help teams manage content creation and approval in a clear and structured way
Hygraph
Docs

#Remote data overview

#Overview

remote-sources-mainscreen.pngremote-sources-mainscreen.png

A Remote Source is a custom resolver entry point for your schema that allows data to be sourced from an external third-party web service and accept field values from other Hygraph fields as arguments.

With Remote Sources, our Content Federation utility, it's possible to add content from other systems and sources to the Hygraph API without having to migrate the content itself.

You can use Remote Sources to add Remote Fields to your schema, at the model or at the top level:

At the model level, you can use them to enrich data, which can then be queried in the context of the model they are a part of.

At the top level, you can use them to fetch remote data - unrelated to Hygraph - that can be consumed by your frontend alongside your Hygraph data.

#What you can do

Remote Sources enable teams to build optimized, data-rich applications where they can use existing services paired with new microservices to build user-friendly applications with a single content entry point.

There are many use cases where moving content into the CMS isn't possible or desirable. Examples include content for which there is a different system of record (e-commerce/product data like price or availability, content from a different vendor like Github or IMDBT, etc) and content that is stored in legacy systems that can't be easily migrated.

Remote Sources allow customers to create a single GraphQL API with content from all these different sources, providing flexibility for front-end developers and downstream applications.

#Important concepts

#Remote Source

A system or product that holds content that needs to be combined with content in Hygraph and which can be queried through a RESTful or GraphQL API. A single Remote Source can have different types of content (e.g., an e-commerce system might have products, categories, prices, etc). Every Remote Source has a unique (base) URL, such as Github, Shopify, Hasura, or a custom backend application.

#Remote content

These are fields that you can add to a model to fetch data from a Remote Source. There are two types: Remote Fields and Top-level Remote Fields.

#Remote Field

A field inside a Hygraph model that connects specific remote data to an entry of that model. Remote Fields are always related to a single Remote Source and a single custom type. RESTful Remote Fields are configured with a path to a specific endpoint in the Remote Source, such as user details from Github, or price & availability from Shopify.

#Top Level Remote Field

A field inside the Query system model in Hygraph. These fields are used to fetch remote data outside the context of a regular model, which is then sent to your frontend alongside your Hygraph data. This Content Federation utility eliminates the need to make separate API requests for data inside & outside of Hygraph.

#Custom Type

A GraphQL type that is used for content coming from a Remote Source. The custom types are combined with the auto-generated types inside Hygraph to create a single schema for content inside Hygraph and in the Remote Source. For RESTful Remote Sources, custom types need to be defined explicitly using SDL for all URL paths that will be queried in the Remote Source. For GraphQL Remote Sources, the custom types are auto-generated by using introspection on the Remote Source.

#Custom Input type

A specific kind of GraphQL type which is used to define input parameters for queries to Remote Sources.