docs/1.22/prisma-graphql-api/index.mdx
import Collapse from 'components/Markdown/Collapse' import Warning from 'components/Markdown/Warning'
export const meta = { title: 'Prisma GraphQL API', position: 5 }
Every Prisma service exposes a GraphQL API with CRUD and realtime operations for the types defined in the service's datamodel. This API is called the Prisma API.
The GraphQL schema defining the types and operations of the Prisma API is referred to as the Prisma GraphQL schema. It is automatically generated by Prisma based on the datamodel.
<Warning>The Prisma 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. Consuming the Prisma API directly is equivalent to exposing your entire database to the frontend, without business logic or authorization capabilities which typically is not suitable for production applications.
</Warning>There are still some use cases where it can be appropriate to consume the Prisma API directly from frontend/mobile apps:
Click here to explore a Prisma API in a GraphQL Playground.
The Prisma API is based on the following datamodel:
type Post {
id: ID! @unique
createdAt: DateTime!
updatedAt: DateTime!
isPublished: Boolean! @default(value: "false")
title: String!
text: String!
author: User!
}
type User {
id: ID! @unique
email: String! @unique
password: String!
name: String!
posts: [Post!]!
}
This chapter explains everything you need to know about the Prisma API and how it can be used in various contexts.
| Page | Description |
|---|---|
| Using the Prisma API | Learn about various ways to consume the Prisma API using plain HTTP (e.g. curl and fetch). |
| Authentication | Learn how to protect your Prisma API using the service secret. |
| Concepts | Learn about the most important API concepts such as batching, Relay connections, transactions, cascading deletes, ... |
| Queries | Learn about the auto-generated queries in the Prisma API. |
| Mutations | Learn about the auto-generated mutations in the Prisma API. |
| Subscriptions | Learn about the auto-generated subscriptions in the Prisma API. |
| Error Handling | Learn how Prisma deals with errors in API requests. |