Total Access Docs
Guides

Forms Integration

Build, submit, and analyze forms via the Total Access API.

Forms Integration

The Total Access Forms module lets you create custom data collection forms, receive submissions via API, and export results for reporting.

Overview

Forms are configured per client and identified by a unique form_key. Each form has typed fields (text, number, date, select, etc.) and supports optional validation rules.

List forms

Retrieve all forms accessible to your client:

curl -X GET https://developer.totalaccess.co.za/api/v1/forms \
  -H "X-API-Key: ta_sk_your_api_key" \
  -H "Content-Type: application/json"

Response:

{
  "success": true,
  "data": [
    {
      "id": 1,
      "form_key": "site_inspection",
      "form_name": "Site Inspection Checklist",
      "is_active": true,
      "submission_count": 42,
      "fields": [
        { "field_key": "site_name", "field_label": "Site Name", "field_type": "text", "is_required": true },
        { "field_key": "inspection_date", "field_label": "Inspection Date", "field_type": "date", "is_required": true },
        { "field_key": "status", "field_label": "Status", "field_type": "select", "is_required": true }
      ]
    }
  ]
}

Submit a form

Submit form data programmatically (e.g. from a mobile app or external survey tool):

curl -X POST https://developer.totalaccess.co.za/api/v1/forms/submissions \
  -H "X-API-Key: ta_sk_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "form_key": "site_inspection",
    "data": {
      "site_name": "Warehouse A",
      "inspection_date": "2026-07-15",
      "status": "passed"
    }
  }'

Form submissions require the forms:write scope when using API key authentication.

List submissions

Retrieve submissions with optional filtering and pagination:

curl -X GET "https://developer.totalaccess.co.za/api/v1/forms/submissions?form_key=site_inspection&limit=20&offset=0" \
  -H "X-API-Key: ta_sk_your_api_key"

Export submissions

Export submissions as CSV or JSON:

curl -X GET "https://developer.totalaccess.co.za/api/v1/forms/submissions/export?form_key=site_inspection&format=csv" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  -o submissions.csv

Form analytics

Get aggregated analytics for your forms:

curl -X GET https://developer.totalaccess.co.za/api/v1/forms/analytics \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"

Scopes

ScopeDescription
forms:readList forms and submissions
forms:writeSubmit new form entries

On this page