frappe-core-api

Integrate Frappe REST and RPC APIs with authentication and webhook verification.

163|53|Updated Jan 14, 2026
One-click install
npx skills add https://github.com/Impertio-Studio/Frappe_Claude_Skill_Package --skill frappe-core-api-impertio-studio
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: frappe-core-api
Source: https://github.com/Impertio-Studio/Frappe_Claude_Skill_Package/tree/main/skills/source/core/frappe-core-api
Command: npx skills add https://github.com/Impertio-Studio/Frappe_Claude_Skill_Package --skill frappe-core-api-impertio-studio

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Frappe API integrations often fail in production due to incorrect endpoints, missing headers, inconsistent response handling, weak authentication, missing permission checks, and unsafe request patterns.

Core Features & Use Cases

  • REST endpoint design and versioning: Choose the correct v1 versus v2 routes (v14/v15/v16) for CRUD operations, document methods, copy, and metadata/count calls.
  • RPC (whitelisted methods) integration patterns: Implement and call server-side whitelisted functions with strict authentication, method restrictions, and predictable response structures.
  • Secure authentication and webhooks: Apply token auth, OAuth2, or session/cookie auth correctly, and verify webhook integrity with HMAC signatures.
  • Operational safety rules: Enforce pagination, JSON response headers, external request timeouts, input validation, and permission checks to prevent silent failures and security issues.

Quick Start

Use the frappe-core-api skill to build a token-authenticated REST + webhook integration for Frappe v15 that paginates results, calls whitelisted server methods, and validates webhook signatures using the provided request patterns.

Frequently Asked Questions about frappe-core-api

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I authenticate Frappe REST API requests using OAuth2 or token auth?

Frappe REST API authentication requires token auth, OAuth2, or session/cookie auth. You must enforce JSON headers, apply permission checks, and validate inputs to prevent authorization failures and ensure safe external requests.

Why does my Frappe API integration return HTML responses instead of JSON?

Frappe API calls return HTML responses when missing JSON headers or using incorrect endpoints. Enforce JSON response headers, use correct REST/RPC routes, and apply consistent response handling to avoid silent failures in production.

What is the best way to call @frappe.whitelist RPC endpoints from the client side?

Calling @frappe.whitelist RPC endpoints uses client-side frappe.call or frappe.xcall patterns. You must apply strict authentication, method restrictions, and predictable response structures for safe server-side function execution.

How do I verify Frappe webhook security with HMAC signatures?

Frappe webhook security verification uses HMAC signatures to validate payload integrity. You must apply secure webhook verification alongside token authentication to prevent unauthorized external requests from triggering server actions.

Does Frappe v15 REST API support v1 and v2 endpoint routing for CRUD operations?

Frappe v14, v15, and v16 REST APIs support different v1 versus v2 routes for CRUD operations, document methods, copy, and metadata/count calls. Choosing the correct endpoint version prevents routing errors and request failures.

How do I handle pagination and timeouts in ERPNext API requests?

ERPNext API requests require enforcing pagination for large result sets and setting external request timeouts. Combining these operational safety rules with input validation prevents silent failures and security issues during data retrieval.