DataHub GraphQL API
DataHub provides a rich
graphql API for programmatically interacting with the Entities & Relationships comprising your organization's Metadata Graph.
To begin using the DataHub
graphql API, please consult the Getting Started.
For detailed guidance on using
graphql for specific use cases, please refer to Datahub API Comparison.
Pro Tip! Throughout our API guides, we have examples of using GraphQL API. Lookout for the
| GraphQL |tab within our tutorials.
graphql provides a data query language and API with the following characteristics:
- A validated specification: The
graphqlspec verifies a schema on the API server. The server in turn is responsible for validating incoming queries from the clients against that schema.
- Strongly typed: A GraphQL schema declares the universe of types and relationships composing the interface.
- Document-oriented & hierarchical: GraphQL makes it eay to ask for related entities using a familiar JSON document structure. This minimizes the number of round-trip API requests a client must make to answer a particular question.
- Flexible & efficient: GraphQL provides a way to ask for only the data you want, and that's it. Ignore all the rest. It allows you to replace multiple REST calls with one GraphQL call.
- Large Open Source Ecosystem: Open source GraphQL projects have been developed for virtually every programming language. With a thriving community, it offers a sturdy foundation to build upon.
For these reasons among others DataHub provides a GraphQL API on top of the Metadata Graph, permitting easy exploration of the Entities & Relationships composing it.
For more information about the GraphQL specification, check out Introduction to GraphQL.
GraphQL Schema Reference
The Reference docs in the sidebar are generated from the DataHub GraphQL schema. Each call to the
/api/graphql endpoint is
validated against this schema. You can use these docs to understand data that is available for retrieval and operations
that may be performed using the API.
- Available Operations: Queries (Reads) & Mutations (Writes)
- Schema Types: Objects, Input Objects, Interfaces, Unions, Enums, Scalars
Visit our Slack channel to ask questions, tell us what we can do better, & make requests for what you'd like to see in the future. Or just stop by to say 'Hi'.