Get Form By Spot
Returns the dynamic form the owner assigned to a page spot, such as the contact page. The response is the form definition only, never submissions or counters.
GET
/v1/forms/:spotAuthentication
Public key
?key=pk_…Public key in the `key` query parameter. No OAuth, no secret.
Edge cache: 60 s + stale-while-revalidate 300 s
Path Parameters
spotenumThe page spot of the form.
contactrequest-showingnew-developmenthome-valuationnewslettercareersQuery Parameters
keystringThe site's public key (pk_…). It selects the account. Safe to ship to the browser.
localeenumLanguage of the form texts: title, intro, field labels, placeholders, option labels and the submit button. `en`, an unknown code or no value returns the original English texts.
esbrptitrufrsrdecnzhplrotrarResponses
200Success
application/jsonformobject | nullThe form assigned to the spot, or `null` when the owner assigned none.
Errors
404The spot is not one of the allowed values. The body is `{ "message": "Unknown form spot" }`.401Missing or invalid public key.403The account has no active subscription. The body also carries `code: "TENANT_INACTIVE"`.500Unexpected server error.Notes
- A valid spot with no assigned form answers 200 with `{ "form": null }`. Show a fallback message.
- Render `schema.rows[].fields[]` and send the values to Submit Form, using each field's `id` as the key of `formData`.
- With `locale`, field ids, option values and CRM mappings never change, so a translated form submits the same data.
- Translations are generated on the first read. Texts not ready within 2 seconds arrive on a later request.
Request
curl --request GET \--url "https://api.pandaidx.com/v1/forms/contact?key={{public_key}}"
Response200 OK
{"form": {"_id": "6a1f3c9d2b7e4a0012ab34cd","name": "Contact Us","description": null,"schema": {"rows": [{"id": "row_1700000000000","columns": 1,"fields": [{"id": "field_1700000000001","type": "name","label": "Full Name","required": true,"crmFieldMapping": "name","placeholder": "Enter your name"}]},{"id": "row_1700000000002","columns": 1,"fields": [{"id": "field_1700000000003","type": "email","label": "Email Address","required": true,"crmFieldMapping": "email","placeholder": "Enter your email"}]}],"submitButton": {"text": "Send Message","position": "left"}},"assignedSpot": "contact"}}