---
title: 'APIs'
description: 'Choose the correct API surface and authentication method.'
---

# APIs

Flexkit generates a GraphQL API from each deployed project schema. Studio also uses a same-origin application handler for its signed-in requests.

| Surface                    | Address or location                         | Use                                                         |
| -------------------------- | ------------------------------------------- | ----------------------------------------------------------- |
| Hosted project GraphQL     | `https://PROJECT_ID.api.flexkit.io/graphql` | Authorized data queries and mutations.                      |
| Studio application handler | Your app's `/api/flexkit/...`               | Framework-managed Studio authentication and proxy requests. |
| Project MCP                | `https://PROJECT_ID.api.flexkit.io/mcp`     | OAuth-enabled AI client access.                             |
| Custom tools               | Your app's `/api/flexkit/tools`             | Signed discovery and invocation by Flexkit.                 |

Replace `PROJECT_ID` with the ID from Dashboard Settings → General. These endpoints use different authentication flows; a working credential for one is not proof that every other surface accepts it.

Start with [authentication](/docs/api/authentication), [queries](/docs/api/graphql/queries), and [tokens](/docs/api/tokens). Use [Explorer](/docs/studio/explorer) to inspect the schema before constructing data operations.

For data-change notifications, configure [outgoing webhooks](/docs/api/webhooks). To extend Studio itself, use [extensions](/docs/extensions). See the [reference index](/docs/api/reference) for the documented integration surfaces.


---

[View full sitemap](/docs/sitemap.md)
