Streams is the cutting-edge architecture developed to streamline the delivery of data from the Knowledge Graph to our consumer-facing systems, like Answers, Pages, and Listings. With the Summer ’21 Release, we are happy to announce that we will be granting developers access to this same infrastructure that delivers data downstream to Yext’s products.
Users can configure a specific list of fields that they want to access from the Knowledge Graph with Streams Endpoints. A Streams Endpoint is how an external user is able to interface with Streams so that they can take advantage of its entire infrastructure. The Streams infrastructure includes:
Streams API: an extremely low latency, consumer-grade API that is optimized for fetching the content you need to publish on consumer experiences from your Knowledge Graph.
Streams Webhook: a method of receiving proactive notifications about changes to the data in your Streams Endpoint in a push data flow.
For additional details on creating a Streams Endpoint, or configuring webhooks visit our Developer guides.
Users of Streams will unlock benefits like:
Relationship Traversal: Streams introduces a new way to traverse entity relationships, including support for “multi-hops,’’ where users can reference data across multiple relationships. For example, using Streams API, users could query the doctors who accept a specific insurance plan, who also treat a specific condition with their treatments offered.
Efficiency: Streams is a tremendously efficient and effective way to fetch data from the Knowledge Graph. This is because data is pre-processed according to the Streams Endpoint configuration supplied by the user, so that at query time, the system does not need to traverse the Knowledge Graph to return results.
Flexibility: Not only is Streams fast, but it’s also incredibly flexible. The Streams infrastructure allows users to query any combination of fields in the Yext Knowledge Graph, across entity relationships, and even across other data sources, including Reviews. Also, since users define exactly the fields they want to receive in a Streams Endpoint configuration, they also don’t have to deal with any extraneous data.
Streams CLI Commands: The Yext CLI has added a set of Streams commands which will provide users visibility into the Streams associated with their Streams Endpoint, which will also help you debug the Streams Endpoint if necessary.