# Kubrickcode Workflow Toolkit GRAPHQL

> GraphQL API Standards

- Skill: `tomevault-io/kubrickcode-workflow-toolkit-graphql` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/kubrickcode-workflow-toolkit-graphql`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/kubrickcode-workflow-toolkit-graphql/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Integrations & APIs
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/kubrickcode-workflow-toolkit-graphql

---


# GraphQL API Standards

## Naming Conventions

### Field Naming

- Boolean: Require `is/has/can` prefix
- Date: Require `~At` suffix
- Use consistent terminology throughout the project (unify on either "create" or "add")

## Date Format

- ISO 8601 UTC
- Use DateTime type

## Pagination

### Relay Connection Specification

```graphql
type UserConnection {
  edges: [UserEdge!]!
  pageInfo: PageInfo!
}

type UserEdge {
  node: User!
  cursor: String!
}

type PageInfo {
  hasNextPage: Boolean!
  endCursor: String
}
```

- Parameters: `first`, `after`

## Sorting

- `orderBy: [{ field: "createdAt", order: DESC }]`

## Type Naming

- Input: `{Verb}{Type}Input`
- Connection: `{Type}Connection`
- Edge: `{Type}Edge`

## Input

- Separate creation and modification (required for creation, optional for modification)
- Avoid nesting - IDs only

## Errors

### extensions (default)

- `code`, `field` in `errors[].extensions`

### Union (type safety)

- `User | ValidationError`

## N+1

- DataLoader is mandatory

## Documentation

- `"""description"""` is required
- Explicitly state Input constraints

## Deprecation

- `@deprecated(reason: "...")`
- Never delete types

---
> Converted and distributed by [TomeVault](https://tomevault.io/claim/kubrickcode) — claim your Tome and manage your conversions.
<!-- tomevault:4.0:skill_md:2026-04-13 -->

