Contact Forms
Build contact/quote request forms with configurable fields. Supports name, email, phone, text, dropdowns, country pickers, legal acceptance, custom headers, and confirmation screens.
List Form Fields
GET/projects/:id/form-fields
const response = await fetch(BASE_URL + '/projects/proj_123/form-fields', {
headers: { 'Authorization': 'Bearer ' + accessToken }
});
const data = await response.json();
// {
// "success": true,
// "fields": [
// { "id": "ff_1", "type": "header-title", "label": "Header",
// "headerText": "Request a Quote", "headerSubtext": "Fill in the details below.",
// "headerAlignment": "center", "enabled": true, "required": false, "width": "full" },
// { "id": "ff_2", "type": "name", "label": "Full Name", "placeholder": "Enter your name",
// "required": true, "enabled": true, "width": "full" },
// { "id": "ff_3", "type": "email", "label": "Email", "placeholder": "[email protected]",
// "required": true, "enabled": true, "width": "half",
// "validationPattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]+quot; },
// { "id": "ff_4", "type": "telephone", "label": "Phone", "width": "half",
// "required": false, "enabled": true },
// { "id": "ff_5", "type": "dropdown", "label": "Industry", "width": "full",
// "options": [
// { "id": "1", "label": "Architecture", "value": "architecture" },
// { "id": "2", "label": "Retail", "value": "retail" },
// { "id": "3", "label": "Manufacturing", "value": "manufacturing" }
// ] },
// { "id": "ff_6", "type": "country-state-city", "label": "Location",
// "includeState": true, "includeCity": true },
// { "id": "ff_7", "type": "text", "label": "Additional Notes",
// "multiline": true, "rows": 4, "maxLength": 500 },
// { "id": "ff_8", "type": "acceptance", "label": "I agree to the Terms",
// "acceptanceText": "By submitting this form...", "required": true },
// { "id": "ff_9", "type": "submit", "label": "Submit",
// "submitLabel": "Submit Your Request", "submitStyle": "gradient" },
// { "id": "ff_10", "type": "confirmation", "label": "Confirmation",
// "confirmationTitle": "Thank You!",
// "confirmationMessage": "We will get back to you within 24-48 hours.",
// "confirmationShowSummary": true, "confirmationShowBackButton": true }
// ]
// }Create Form Field
POST/projects/:id/form-fields
// Add a dropdown field for "Budget Range"
const response = await fetch(BASE_URL + '/projects/proj_123/form-fields', {
method: 'POST',
headers: {
'Authorization': 'Bearer ' + accessToken,
'Content-Type': 'application/json'
},
body: JSON.stringify({
type: 'dropdown',
label: 'Budget Range',
required: true,
width: 'half',
options: [
{ id: '1', label: 'Under $1,000', value: 'under-1000' },
{ id: '2', label: '$1,000 - $5,000', value: '1000-5000' },
{ id: '3', label: '$5,000 - $10,000', value: '5000-10000' },
{ id: '4', label: 'Over $10,000', value: 'over-10000' }
],
allowOther: true
})
});Update Form Field
PUT/projects/:id/form-fields/:fieldId
const response = await fetch(BASE_URL + '/projects/proj_123/form-fields/ff_2', {
method: 'PUT',
headers: {
'Authorization': 'Bearer ' + accessToken,
'Content-Type': 'application/json'
},
body: JSON.stringify({
label: 'Your Full Name',
placeholder: 'First and Last name',
width: 'half'
})
});Delete Form Field
DELETE/projects/:id/form-fields/:fieldId
const response = await fetch(BASE_URL + '/projects/proj_123/form-fields/ff_5', {
method: 'DELETE',
headers: { 'Authorization': 'Bearer ' + accessToken }
});Reorder Form Fields
POST/projects/:id/form-fields/reorder
const response = await fetch(BASE_URL + '/projects/proj_123/form-fields/reorder', {
method: 'POST',
headers: {
'Authorization': 'Bearer ' + accessToken,
'Content-Type': 'application/json'
},
body: JSON.stringify({
fieldIds: ['ff_1', 'ff_2', 'ff_3', 'ff_4', 'ff_7', 'ff_5', 'ff_8', 'ff_9', 'ff_10']
})
});Continue reading
3D ViewerDrive the 3D viewer — camera, lighting, scene presets, and runtime configuration selections.AnimationsCreate and play animation blocks: move, rotate, float, scale-pulse, swing, and orbit.Project SettingsRead and update the 140+ project settings covering display, branding, AR, e-commerce, email, and PDF.AssetsUpload, list, update, delete, and download 3D model, texture, and image assets.
