API

API Reference

Use the SK Form Builder API to read form responses and submit forms programmatically from external systems.

4 min read

Last updated June 15, 2026

The SK Form Builder API lets you read submission data and submit forms from external systems. All requests require authentication via your API key.

Base URL

text
https://formbuilder.magento2extensions.com/api/store

Authentication

Include your API key in the Authorization header of every request:

bash
Authorization: Bearer YOUR_API_KEY

Getting your API key

  1. Go to Global Settings → API Key.
  2. Click Generate to create a new API key.
  3. Copy and store the key securely — it is only shown once at generation.

Key security

Treat your API key like a password. Do not expose it in client-side code, public repositories, or anywhere a third party could read it. If compromised, regenerate it in Global Settings immediately.


Endpoints

Get all responses

GET/store/responsesGet all form responses

Returns all form responses for your store.

Example request:

bash
curl -X GET "https://formbuilder.magento2extensions.com/api/store/responses" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY"

Example response:

json
{
  "data": [
    {
      "id": "r_abc123",
      "form_id": "596545514f625450",
      "status": "approved",
      "submitted_at": "2026-06-15T10:30:00Z",
      "fields": {
        "Full Name": "Jane Doe",
        "Email Address": "jane@example.com",
        "Your Message": "I have a question about your products."
      }
    }
  ],
  "meta": {
    "total": 142,
    "page": 1,
    "per_page": 50
  }
}

Get responses for a specific form

GET/store/responses?form_id={form_id}Get responses for a specific form

Returns responses filtered to a single form using its form_id.

Query parameters:

ParameterTypeRequiredDescription
form_idstringYesThe form's token/ID

Example request:

bash
curl -X GET "https://formbuilder.magento2extensions.com/api/store/responses?form_id=596545514f625450" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY"

Example response:

json
{
  "data": [
    {
      "id": "r_xyz789",
      "form_id": "596545514f625450",
      "status": "approved",
      "submitted_at": "2026-06-20T08:15:00Z",
      "fields": {
        "Full Name": "John Smith",
        "Email Address": "john@example.com",
        "Phone Number (optional)": "+1 555 000 0000",
        "Subject": "option1",
        "Your Message": "Hello, I need help with my order.",
        "File Upload": "receipt.pdf"
      }
    }
  ],
  "meta": {
    "total": 38,
    "page": 1,
    "per_page": 50
  }
}

Finding your form_id

The form_id is the form token shown in your app dashboard. You can also find it in the form's URL when editing it.


Submit a form

POST/store/submissionsSubmit a form

Submits a form programmatically. Use this to integrate SK Form Builder with external systems or automate submissions.

Request body:

FieldTypeRequiredDescription
form_tokenstringYesThe token of the form to submit
fieldsobjectYesKey-value pairs matching the form's field labels

Example request:

bash
curl -X POST "https://formbuilder.magento2extensions.com/api/store/submissions" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
  "form_token": "596545514f625450",
  "fields": {
    "Full Name": "example value",
    "Email Address": "user@example.com",
    "Phone Number (optional)": "+1 555 000 0000",
    "Subject": "option1",
    "Your Message": "Your message here",
    "File Upload": "example value"
  }
}'

Example response:

json
{
  "success": true,
  "submission_id": "r_abc123",
  "message": "Form submitted successfully."
}

Field labels must match exactly

The keys in the fields object must match the field labels in your form exactly, including capitalisation and spacing.


Response codes

CodeMeaning
200Success
401Unauthorized — missing or invalid API key
403Forbidden — your plan doesn't include API access
404Not found — the form ID doesn't exist
422Unprocessable — missing required fields or invalid data
429Rate limited — slow down your requests

Was this page helpful?