REST API Overview

Base URL

All Formcierge REST API endpoints are registered under the WordPress REST API namespace:

https://yourdomain.com/wp-json/formcierge/v1/

Authentication

Most endpoints require authentication. Formcierge uses WordPress’s built-in REST API authentication. For browser-based requests from the admin panel, a WP nonce is used. For external requests, use WordPress Application Passwords (available in WordPress 5.6+) or a JWT authentication plugin.

Endpoint Groups

Path Description
GET /forms List all forms
POST /forms Create a form
GET /forms/{id} Retrieve a form
PUT /forms/{id} Update a form
DELETE /forms/{id} Delete a form
GET /submissions/{form_id} List submissions for a form
GET /submissions/{form_id}/{entry_id} Get a single entry
GET /fields List registered field type definitions
GET /settings Read plugin settings
POST /settings Update plugin settings
POST /ai/generate Generate a form from a text prompt

Rate Limiting

The API is rate-limited to 60 requests per minute per IP address by default. Exceed this and you will receive a 429 Too Many Requests response with a Retry-After header. The limit can be changed via the formcierge_api_rate_limit filter.