# GraphQL Schema

Use this page when you need the exact schema endpoints, want to inspect the current public GraphQL surface, or need the SDL for
tooling and offline analysis.

Jump to:

 * [Endpoints](#GraphQL%2520Schema-Endpoints)
 * [Public integration boundary](#GraphQL%2520Schema-Public%2520integration%2520boundary)
 * [Live introspection](#GraphQL%2520Schema-Live%2520introspection)
 * [Tooling recipes](#GraphQL%2520Schema-Tooling%2520recipes)
 * [Related reference pages](#GraphQL%2520Schema-Related%2520reference%2520pages)

## Endpoints

Use these endpoints for schema inspection:

 * GraphQL endpoint: https://api.cloud.luxonis.com/graphql
 * Control-plane authentication: Authorization: Bearer <your_api_key>
 * Introspection access: available without authentication
 * Public integration root: team { ... }

If you need request-shape basics or GraphQL terminology, continue to [About
GraphQL](https://docs.luxonis.com/cloud/api/graphql.md).

## Public integration boundary

For external integrations, design around the public team { ... } surface and use the official guides and reference pages together
with schema inspection.

## Live introspection

Introspect the current public schema through the GraphQL endpoint:

```http
https://api.cloud.luxonis.com/graphql
```

Introspection can be accessed without authentication. If you are already testing with an authenticated GraphQL client, the same
endpoint still works there as well.

### Inspect in a GraphQL client

Use a GraphQL client such as [Altair](https://altairgraphql.dev/) when you want to browse types, fields, arguments, and enums
interactively.

 * endpoint: https://api.cloud.luxonis.com/graphql
 * best for: checking field names, input object shapes, and enum values before you wire a query or mutation

### Minimal introspection request

If you need to verify that introspection is reachable from your environment, send a minimal query like this:

```bash
curl -X POST https://api.cloud.luxonis.com/graphql \
  -H "Content-Type: application/json" \
  -d '{"query":"{ __schema { queryType { name } mutationType { name } } }"}'
```

## Tooling recipes

### Generate typed clients from your checked-in operations

For production applications, prefer generating types from the queries and mutations you actually use instead of browsing the
schema manually on every change.

With [GraphQL Code Generator](https://the-guild.dev/graphql/codegen), point the schema source to:

```yaml
schema: https://api.cloud.luxonis.com/graphql
documents: ./src/**/*.graphql
```

This is the practical workflow:

 * define the queries and mutations your integration needs
 * generate types against the current schema
 * treat generation errors as a signal that the operation or schema contract changed

### Choose the inspection path that matches the job

 * Use live introspection when you need to inspect one field, argument, or input shape quickly.
 * Use [Queries](https://docs.luxonis.com/cloud/api/reference/control-api/queries.md) and
   [Mutations](https://docs.luxonis.com/cloud/api/reference/control-api/mutations.md) when you already know the kind of operation
   you are looking for.

## Related reference pages

### Queries

Review the available read operations exposed by the public GraphQL API.

[Queries](https://docs.luxonis.com/cloud/api/reference/control-api/queries.md)

### Mutations

Review the available write operations and team-scoped control flows.

[Mutations](https://docs.luxonis.com/cloud/api/reference/control-api/mutations.md)

### Types

Inspect the public object and connection types returned by queries and mutations.

[Types](https://docs.luxonis.com/cloud/api/reference/control-api/types.md)

### About GraphQL

Return to the request shape, public boundaries, and Hub-specific GraphQL usage patterns.

[About GraphQL](https://docs.luxonis.com/cloud/api/graphql.md)
