Skip to content
Elara One docs
Forms

Save a form

POST
/v1/merchant/forms

Authorization

tenantKeybearerAuth
headerX-Tenant-Key<token>

The public store key (pk_live_…). Required on every call.

headerAuthorizationBearer <token>

A customer token from POST /v1/auth/login, or a merchant API key, on routes that need one.

Header Parameters

X-Client-IP?string

Optional. IP address of the shopper (one IPv4/IPv6, no port, no list). Honoured only together with a valid X-Tenant-Secret; ignored otherwise. Used for rate limits and recorded with form submissions.

X-Tenant-Secret?string

Optional here. Server secret of the store: server-to-server only, never from a browser. Enables X-Client-IP.

Request Body

application/json
  1. body
handle*string
Match^[a-z0-9\-]+$
Lengthlength <= 64
name*string
Lengthlength <= 255
is_active?boolean
schema*
settings*

Response Body

Success.

application/json
  1. response
data*
Example Request
curl -X POST 'https://api.elaraone.app/api/v1/merchant/forms' \  -H 'X-Tenant-Key: pk_live_…' \  -H 'X-Tenant-Secret: your-server-secret' \  -H 'Content-Type: application/json' \  -d '{  "handle": "string",  "name": "string",  "schema": {    "fields": [      {        "handle": "string",        "type": "text"      }    ]  },  "settings": {}}'
Example Response
{  "data": {    "id": 0,    "handle": "string",    "name": "string",    "schema": {      "property1": null,      "property2": null    },    "settings": {      "property1": null,      "property2": null    },    "is_active": true,    "created_at": "string",    "updated_at": "string"  }}