tRPC website screenshot

tRPC

tRPC is a TypeScript framework for building end-to-end typesafe APIs without code generation or schemas. It leverages TypeScript's type inference to provide full static typesafety and autocompletion between client and server, with zero runtime dependencies. tRPC v11 supports queries, mutations, and subscriptions via HTTP GET/POST and WebSocket adapters for Express, Fastify, Next.js, AWS Lambda, and edge runtimes.

1 APIs 0 Features
API CompositionAPI FrameworkBFFEnd-to-End Type SafetyRPCTypeScript

APIs

tRPC HTTP Protocol

The tRPC HTTP API protocol surface. tRPC servers expose procedures via HTTP GET (queries) and HTTP POST (mutations). Clients use httpBatchLink to batch concurrent calls into sin...

Collections

Pricing Plans

Trpc Plans Pricing

3 plans

PLANS

Rate Limits

Trpc Rate Limits

5 limits

RATE LIMITS

FinOps

Trpc Finops

FINOPS

Semantic Vocabularies

Trpc Context

19 classes · 0 properties

JSON-LD

API Governance Rules

tRPC API Rules

8 rules · 3 errors 2 warnings

SPECTRAL

JSON Structure

Trpc Router Structure

0 properties

JSON STRUCTURE

Example Payloads

Trpc Query Procedure Example

3 fields

EXAMPLE

Resources

🔗
Website
Website
🔗
Documentation
Documentation
👥
GitHubOrganization
GitHubOrganization
👥
GitHubRepository
GitHubRepository
🔗
NPM
NPM
🔗
Discord
Discord
🔗
Twitter
Twitter
🔗
LlmsText
LlmsText

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: tRPC OpenAPI Example
  version: 11.0.0
request:
  auth:
    type: bearer
    token: '{{bearerToken}}'
items:
- info:
    name: Procedures
    type: folder
  items:
  - info:
      name: Health Check
      type: http
    http:
      method: GET
      url: https://your-server.example.com/api/trpc/health
    docs: Returns the health status of the tRPC server. This is a standard unauthenticated endpoint for monitoring and load
      balancer health checks.
  - info:
      name: Batch Procedures
      type: http
    http:
      method: POST
      url: https://your-server.example.com/api/trpc/batch
      body:
        type: json
        data: '{}'
    docs: Execute multiple tRPC procedures in a single HTTP request. tRPC clients automatically batch requests made concurrently
      using httpBatchLink.
  - info:
      name: Query Procedure
      type: http
    http:
      method: GET
      url: https://your-server.example.com/api/trpc/:procedure
      params:
      - name: procedure
        value: ''
        type: path
        description: The procedure path (e.g., `userRouter.getUser`, `post.list`). Nested routers use dot notation.
      - name: input
        value: ''
        type: query
        description: JSON-encoded procedure input
      - name: batch
        value: ''
        type: query
        description: Enables batching mode for this single request
    docs: Invoke a tRPC query procedure. Queries are read-only operations and map to HTTP GET requests. Input is passed via
      the `input` query parameter as a JSON-encoded string.
  - info:
      name: Mutation Procedure
      type: http
    http:
      method: POST
      url: https://your-server.example.com/api/trpc/:procedure
      params:
      - name: procedure
        value: ''
        type: path
        description: The mutation procedure path
      body:
        type: json
        data: '{}'
    docs: Invoke a tRPC mutation procedure. Mutations cause side effects and map to HTTP POST requests. Input is passed in
      the request body.
bundled: true