Anypoint DataGraph Overview | MuleSoft Documentation
# Anypoint DataGraph Overview
Anypoint DataGraph enables you to unify all the data within your application network in a unified schema. With Anypoint DataGraph you can:
  * Dynamically query data from a unified schema
  * Explore your application network from a single UI
  * Discover, reuse, and serve information from your application network without writing new code


## How Anypoint DataGraph Works
Every time you add a new API to your application network, Anypoint Platform stores it as a graph of metadata. Anypoint DataGraph enables you to connect those graphs into one _unified schema_ that runs as a single SaaS GraphQL endpoint and contains and links all of the fields defined within all of your APIs. As a result, you can query across the underlying APIs without needing to understand all of the relationships or specific capabilities that exist within them.
### The Unified Schema
The unified schema is a single, always-current collection of types from different API schemas that you’ve added to Anypoint DataGraph and made available for consumers to query. The query type in the unified schema contains all the query methods from the different API schemas that you’ve added to DataGraph. Your consumers can access the unified schema to see exactly what data is available to them, all in one place, and request a specific subset of that data in a single query.
To help you create a more clean and connected unified schema, Anypoint DataGraph provides three additional functionalities that allow you to:
  1. Enable collaboration between object types
  2. Link object types to create connections between them
  3. Merge object types to combine similar types into a single type to extend their fields and datasets for a more enriched query result


### Example Use Case
Consider an organization using the following APIs:
  * An order API that provides information about specific purchase orders
  * A shipment API that provides shipment information for each purchase order
  * A product API that provides product information and specifications


The organization wants to create a mobile application to provide specific order status details for its customers.
To deliver this mobile application, API developers must build a new API that identifies all orders for a customer, finds the products in those orders, identifies each shipment record, and finds delivery dates and tracking numbers. The enterprise architect must first grant the developers access to each necessary API, and then manage and secure this API after the developers build and deliver it.
Now consider that this organization also wants to provide a web application to a warehouse stocking agent for all existing orders of each product, and the web application must also allow stocking agents to return or delete orders. The team would need to go through a similar development to deliver these features.
By using Anypoint DataGraph, the organization does not need to create a new API for every new business requirement. The enterprise architect can discover the existing order, shipment, and product APIs and add each API schema to Anypoint DataGraph. Developers can then request access to the unified schema and query the data that they need or update it from a single endpoint.
## Anypoint DataGraph API Support
Anypoint DataGraph supports:
  * REST APIs with RAML and OAS specifications
  * Up to 250 APIs per unified schema
  * Up to 16,000 fields per unified schema
  * A query depth of 100 nested levels
  * A 30 second timeout per query


## Anypoint DataGraph Administration in API Manager
You manage Anypoint DataGraph in API Manager. Typical management tasks include:
  * Using the DataGraph Administration settings to view and edit the GraphQL endpoint of a unified schema, configure policies, and configure client providers.
  * Managing contracts to ensure that only authorized client applications can consume the unified schema.
  * Managing SLA tiers for each Anypoint DataGraph instance.
  * Using the API Manager Client Applications page to view and manage client application contracts.


## Anypoint Platform Requirements and Licensing
To use Anypoint DataGraph, ensure you meet the following requirements:
  * You must have a license for each of the following:
    * Anypoint Platform
    * API Manager and Analytics
    * Anypoint DataGraph
The API calls associated with your Anypoint DataGraph license refer to calls made by Anypoint DataGraph to downstream REST APIs.  
---  
  * Your plan must allocate the correct number of vCores for your business group or organization using Anypoint DataGraph. If you haven’t allocated the correct number of vCores to the environment in which you’re attempting to add an API, Anypoint DataGraph raises an error message. Reapply the same changes after allocating the correct number of vCores.


Refer to Anypoint Platform Runtime Plane Hosting Options for details on API hosting requirements.
## Resources for Getting Started
  * Anypoint DataGraph Quick Start Guide
  * Anypoint DataGraph Terminology
  * Understanding the Elements in an API Schema
  * Writing GraphQL Queries and Mutations in DataGraph