Skip to main content

Frappe JS Client

Fetch-native TypeScript client for Frappe REST (v14–v16)

Frappe v14, v15, v16

Default { apiVersion: 2 } uses Frappe v15+ /api/v2. Pass { apiVersion: 1 } for classic /api/method and /api/resource (v14-safe).

Never /api/v1

This client never calls /api/v1/.... That prefix 404s on v14. Classic unversioned paths still work on v15 and v16.

TypeScript first

Zero runtime dependencies. Transport is fetch. Use FrappeDoc<T> to type documents.

Typed DocTypes

frappe-codegen reads a live v15+ site and emits GeneratedDocTypes so db.getDoc infers the row.