frappe-errors-api
Facilitates debugging and handling API errors in Frappe/ERPNext, ensuring correct HTTP status codes and preventing silent failures.
Install this skill
Security score
The frappe-errors-api skill was audited on May 28, 2026 and we found 18 security issues across 2 threat categories. Review the findings below before installing.
Categories Tested
Security Issues
Fetch to external URL
| 201 | fetch("/api/method/myapp.api.update", { |
Webhook reference - potential data exfiltration
| 10 | file upload failures, JSON parse errors in request/response, webhook delivery |
Webhook reference - potential data exfiltration
| 12 | Keywords: API error, 401, 403, 404, 417, 429, 500, CSRF, CORS, REST,, API call fails, 403 forbidden, CORS error, token expired, endpoint not found, webhook not received. |
Webhook reference - potential data exfiltration
| 13 | whitelist, webhook, rate limit, file upload, authentication token. |
Webhook reference - potential data exfiltration
| 317 | ## Webhook Delivery Failures |
Webhook reference - potential data exfiltration
| 320 | Error: Webhook not firing or returning errors |
Webhook reference - potential data exfiltration
| 325 | 1. Check Error Log for webhook delivery errors |
Webhook reference - potential data exfiltration
| 327 | 3. Check webhook condition — is it filtering out the event? |
Webhook reference - potential data exfiltration
| 328 | 4. [v15+] Check Webhook Request Log for delivery status |
Webhook reference - potential data exfiltration
| 331 | # Custom webhook with error handling |
Webhook reference - potential data exfiltration
| 333 | def incoming_webhook(): |
Webhook reference - potential data exfiltration
| 334 | """Handle incoming webhook with validation.""" |
Webhook reference - potential data exfiltration
| 336 | signature = frappe.request.headers.get("X-Webhook-Signature") |
Webhook reference - potential data exfiltration
| 349 | frappe.enqueue(process_webhook_data, data=data, queue="short") |
Webhook reference - potential data exfiltration
| 465 | 7. **Return 200 quickly** from incoming webhooks then process asynchronously |
Webhook reference - potential data exfiltration
| 482 | | `references/patterns.md` | Complete whitelisted method, webhook, external API patterns | |
External URL reference
| 223 | "allow_cors": "https://your-frontend.example.com" |
External URL reference
| 230 | "allow_cors": ["https://app1.example.com", "https://app2.example.com"] |