Prisma GraphQL API

Every Prisma service exposes a GraphQL API with CRUD and realtime operations for the types defined in the service's datamodel. The GraphQL schema defining the types and operations of the Prisma GraphQL API is automatically generated based on the datamodel.

The Prisma GraphQL API is typically not consumed directly by a frontend/mobile application, but instead it's consumed through the Prisma client in a web application server to implement a GraphQL or REST API and interface with the database.

There are still some use cases where it can be appropriate to consume the Prisma API directly:

  • Prototyping: While you're still in the validation phase of an application, using the Prisma API directly notably speeds up your development. When going into production, it's recommended to use Prisma as the ORM-layer in your app.
  • Internal tooling & public APIs: If your API doesn't have any requirements for access permissions, no business logic is required, it might be a valid option to expose the Prisma API directly to client applications.
  • Learning: If you want to learn how GraphQL is consumed from the frontend (e.g. using Apollo Client), you can consume the Prisma API directly without the need to add an additional web server layer on top.

This chapter explains everything you need to know about the Prisma GraphQL API and how it can be used in various contexts.

Reference

PageDescription
ConceptsLearn about the most important API concepts such as batching, Relay connections, transactions, cascading deletes, ..
AuthenticationLearn how to protect your Prisma API using the service secret
QueriesLearn about the auto-generated queries in the Prisma API
MutationsLearn about the auto-generated mutations in the Prisma API
SubscriptionsLearn about the auto-generated subscriptions in the Prisma API
Error HandlingLearn how Prisma deals with errors in API requests

Usage

PageDescription
Using the Prisma GraphQL APILearn about various ways to consume the Prisma GraphQL API

Prisma Bindings

PageDescription
OverviewLearn what Prisma bindings are and how they can be used to build GraphQL servers
ReferenceAPI reference for Prisma bindings