النماذج
كل عملية في هذه المجموعة: ما تقبله وما تُرجعه والأخطاء التي قد تردّ بها.
العمليات
Sign-up forms that add the people who fill them in to your audiences. A form has a draft document you edit and a published copy visitors see, so design changes go live only when you publish, while settings apply as soon as they are saved. Share a form by its hosted url, embed it with one script tag, or post to its subscribeUrl from your own HTML or code.
With double opt-in on, each person gets a confirmation email from the form's sending address and joins once they confirm or you approve them. Submissions keep every answer, and a person who joins becomes a contact in the workspace.
/forms/forms/forms/starters/forms/starters/{slug}/forms/{id}/forms/{id}/forms/{id}/forms/{id}/publish/forms/{id}/pause/forms/{id}/resume/forms/{id}/duplicate/forms/{id}/analytics/forms/{id}/submissions/forms/{id}/submissions/batch-remove/forms/{id}/submissions/{submissionId}/forms/{id}/submissions/{submissionId}/forms/{id}/submissions/{submissionId}/approve/forms/{id}/submissions/{submissionId}/resend/subscribe/{formId}/forms/design/forms/{id}/redesign
GET/forms
List forms
Every sign-up form in the workspace, newest first, without the document or settings. stats is counted at the moment of the read.
An app a member connected lists only the forms that member made, as the console does for them.
Requires the forms:read scope.
معلمات الاستعلام
limitintegerRows per page, 1 to 100.
على الأقل 1على الأكثر 100الافتراضي25cursorstringThe previous page's
nextCursor, passed back as it came. It is opaque: it holds where the last row sat in this list's order, so a row deleted or edited between pages never breaks the walk, and the next page starts at the first row that sorts after it. A value this list did not hand out is a 400invalid_cursor.
يُرجع
A page of forms.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
POST/forms
Create a form
Makes a draft from document, from a starter, or from a one-field email form when neither is sent, and answers with the whole form. Send publish: true to put it live in the same call.
Every audience in settings.audienceIds and in an audience field has to be one the caller can reach in this workspace. settings.senderAddress has to be an address the caller may send as, and a key limited to some addresses may only name ones it holds there and in settings.notifyAddresses. A call that turns on settings.doubleOptIn, names a settings.senderAddress or changes the confirmation email also needs emails:send, because the form then sends mail for you.
Share it with url, post plain HTML forms to subscribeUrl, or embed it with the script /embed/form.js served from the web app's domain.
Requires the forms:write scope.
متن الطلب
namestringمطلوبWhat the workspace calls the form, trimmed, 1 to 120 characters. Visitors never see it, and it need not be unique.
من 1 إلى 120 من الأحرفdescriptionstringA note for the workspace, at most 500 characters. Visitors never see it.
يمكن أن يكون nullحتى 500 من الأحرفstarterstringBegin from a starter's fields, copy and style. Ignored when
documentis sent.أحد"blank""newsletter""waitlist""event""early-access""contact"documentobjectEverything a visitor sees:
fieldsin order, thecopyaround them and thestyle. Every form has exactly oneemailfield, and every input field has a uniquekeythat answers are posted under.fieldsobject[]مطلوب- من 1 إلى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
typestringمطلوب- أحد
"email""text""textarea""number""phone""url""date""select""radio""checkboxes""checkbox""consent""audiences""hidden""heading""paragraph""divider" keystringمطلوب- حتى 40 من الأحرفالنمط
^[a-z][a-z0-9_]{0,39}$ labelstringمطلوب- حتى 300 من الأحرف
placeholderstringمطلوب- يمكن أن يكون nullحتى 200 من الأحرف
helpstringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
requiredbooleanمطلوبdefaultValuestringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
optionsobject[]مطلوب- حتى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
labelstringمطلوب- من 1 إلى 300 من الأحرف
valuestringمطلوب- من 1 إلى 1000 من الأحرف
mapsTostringمطلوب- يمكن أن يكون nullأحد
"email""firstName""lastName""name" widthstringمطلوب- أحد
"full""half" minLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 0على الأكثر 5000
maxLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 1على الأكثر 5000
minnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
maxnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
copyobjectمطلوبtitlestringمطلوب- حتى 200 من الأحرف
descriptionstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
submitLabelstringمطلوب- من 1 إلى 60 من الأحرف
successTitlestringمطلوب- حتى 200 من الأحرف
successMessagestringمطلوب- حتى 2000 من الأحرف
pendingTitlestringمطلوب- حتى 200 من الأحرف
pendingMessagestringمطلوب- حتى 2000 من الأحرف
closedTitlestringمطلوب- حتى 200 من الأحرف
closedMessagestringمطلوب- حتى 2000 من الأحرف
footerstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
styleobjectمطلوبaccentstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ backgroundstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ surfacestringمطلوب- النمط
^#[0-9a-fA-F]{6}$ textstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ fontstringمطلوب- أحد
"system""sans""serif""mono" radiusstringمطلوب- أحد
"none""sm""md""lg""full" widthstringمطلوب- أحد
"narrow""normal""wide" layoutstringمطلوب- أحد
"card""plain" alignstringمطلوب- أحد
"left""center" logoUrlstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرفالتنسيق
uri
settingsobjectAny subset of the settings. An omitted field keeps its value.
audienceIdsstring[]- حتى 20 من العناصر
doubleOptInbooleansenderAddressstring- يمكن أن يكون nullحتى 2000 من الأحرف
confirmSubjectstring- من 1 إلى 200 من الأحرف
confirmMessagestring- حتى 2000 من الأحرف
confirmButtonstring- من 1 إلى 60 من الأحرف
successActionstring- أحد
"message""redirect" redirectUrlstring- يمكن أن يكون nullحتى 2000 من الأحرفالتنسيق
uri notifyAddressesstring[]- حتى 10 من العناصر
publishbooleanPublish in the same call, so the form takes sign-ups at once. Nothing is created when the form could not be published.
يُرجع
Created.
الأخطاء
- 404
audience_not_foundonsettings.audienceIds.- 422
invalid_parameterfor an unknownstarteror a value of the wrong shape,unknown_parameterfor a key the body does not take,invalid_formwhen the document or settings break a rule together,form_sender_refusedwhen confirmations cannot go out fromsettings.senderAddress,capability_unsupportedfor an address outside a limited key, orworkspace_limit_reachedwhen the workspace holds the most forms it may.
الأخطاء التي يمكن أن تُرجعها أي عملية400401403500دليل الأخطاء
متاح أيضًا في
GET/forms/starters
List the form starters
The starting points the console offers when somebody makes a form. Not paginated and not workspace data. The slug is what POST /forms takes as starter.
Requires the forms:read scope.
يُرجع
Every starter, documents left out.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404422500دليل الأخطاء
متاح أيضًا في
GET/forms/starters/{slug}
Retrieve a form starter
Adds the starter document, so a client can change it before creating a form from it.
Requires the forms:read scope.
معلمات المسار
slugstringمطلوبA slug from
GET /forms/starters.أحد"blank""newsletter""waitlist""event""early-access""contact"
يُرجع
The starter with its document.
الأخطاء
- 404
form_starter_not_foundwhen no starter has that slug.
الأخطاء التي يمكن أن تُرجعها أي عملية400401403422500دليل الأخطاء
متاح أيضًا في
GET/forms/{id}
Retrieve a form
The whole form: the draft document, the publishedDocument visitors see, settings, the named audiences and fresh stats. A form in another workspace is a 404, never a 403.
Requires the forms:read scope.
معلمات المسار
idstringمطلوبThe form id,
frm_plus 24 hex.
يُرجع
The form.
الأخطاء
- 404
form_not_foundwhen the id names no form you can reach.
الأخطاء التي يمكن أن تُرجعها أي عملية400401403422500دليل الأخطاء
متاح أيضًا في
PATCH/forms/{id}
Update a form
A partial update. document replaces the draft whole and a live form keeps showing its published copy until POST /forms/{id}/publish. settings is merged field by field and takes effect at once. A call that turns on settings.doubleOptIn, names a settings.senderAddress or changes the confirmation email also needs emails:send, because the form then sends mail for you.
Read the form, change it and send expectedUpdatedAt with the updatedAt you read: if someone saved the form in between, your change is refused rather than written over theirs.
Requires the forms:write scope.
معلمات المسار
idstringمطلوبThe form id,
frm_plus 24 hex.
متن الطلب
namestringNew name, trimmed, 1 to 120 characters.
من 1 إلى 120 من الأحرفdescriptionstringNew note, at most 500 characters. Null clears it.
يمكن أن يكون nullحتى 500 من الأحرفdocumentobjectEverything a visitor sees:
fieldsin order, thecopyaround them and thestyle. Every form has exactly oneemailfield, and every input field has a uniquekeythat answers are posted under.fieldsobject[]مطلوب- من 1 إلى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
typestringمطلوب- أحد
"email""text""textarea""number""phone""url""date""select""radio""checkboxes""checkbox""consent""audiences""hidden""heading""paragraph""divider" keystringمطلوب- حتى 40 من الأحرفالنمط
^[a-z][a-z0-9_]{0,39}$ labelstringمطلوب- حتى 300 من الأحرف
placeholderstringمطلوب- يمكن أن يكون nullحتى 200 من الأحرف
helpstringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
requiredbooleanمطلوبdefaultValuestringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
optionsobject[]مطلوب- حتى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
labelstringمطلوب- من 1 إلى 300 من الأحرف
valuestringمطلوب- من 1 إلى 1000 من الأحرف
mapsTostringمطلوب- يمكن أن يكون nullأحد
"email""firstName""lastName""name" widthstringمطلوب- أحد
"full""half" minLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 0على الأكثر 5000
maxLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 1على الأكثر 5000
minnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
maxnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
copyobjectمطلوبtitlestringمطلوب- حتى 200 من الأحرف
descriptionstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
submitLabelstringمطلوب- من 1 إلى 60 من الأحرف
successTitlestringمطلوب- حتى 200 من الأحرف
successMessagestringمطلوب- حتى 2000 من الأحرف
pendingTitlestringمطلوب- حتى 200 من الأحرف
pendingMessagestringمطلوب- حتى 2000 من الأحرف
closedTitlestringمطلوب- حتى 200 من الأحرف
closedMessagestringمطلوب- حتى 2000 من الأحرف
footerstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
styleobjectمطلوبaccentstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ backgroundstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ surfacestringمطلوب- النمط
^#[0-9a-fA-F]{6}$ textstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ fontstringمطلوب- أحد
"system""sans""serif""mono" radiusstringمطلوب- أحد
"none""sm""md""lg""full" widthstringمطلوب- أحد
"narrow""normal""wide" layoutstringمطلوب- أحد
"card""plain" alignstringمطلوب- أحد
"left""center" logoUrlstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرفالتنسيق
uri
settingsobjectAny subset of the settings. An omitted field keeps its value.
audienceIdsstring[]- حتى 20 من العناصر
doubleOptInbooleansenderAddressstring- يمكن أن يكون nullحتى 2000 من الأحرف
confirmSubjectstring- من 1 إلى 200 من الأحرف
confirmMessagestring- حتى 2000 من الأحرف
confirmButtonstring- من 1 إلى 60 من الأحرف
successActionstring- أحد
"message""redirect" redirectUrlstring- يمكن أن يكون nullحتى 2000 من الأحرفالتنسيق
uri notifyAddressesstring[]- حتى 10 من العناصر
expectedUpdatedAtstringThe
updatedAtyou read. When the form was saved since, nothing is written and the answer is 409version_conflict.التنسيقdate-time
يُرجع
Saved.
الأخطاء
- 404
form_not_found, oraudience_not_foundonsettings.audienceIds.- 409
version_conflict: the form was saved afterexpectedUpdatedAt. Nothing was written.- 422
invalid_parameterfor a value of the wrong shape,unknown_parameterfor a key the body does not take,invalid_formwhen the document or settings break a rule together,form_sender_refusedorcapability_unsupported, each withparamnaming the field.
الأخطاء التي يمكن أن تُرجعها أي عملية400401403500دليل الأخطاء
متاح أيضًا في
DELETE/forms/{id}
Delete a form
Deletes the form and every submission it holds. Its hosted page and embed stop working at once. The people it added stay in your contacts and audiences.
There is no undo.
Requires the forms:write scope.
معلمات المسار
idstringمطلوبThe form id,
frm_plus 24 hex.
يُرجع
Deleted.
الأخطاء
- 403
The key lacks the scope, or may not send as that address.
step_up_required: the call was made with an OAuth access token that has not been verified in the last 60 minutes. Ask for a code withPOST /security/step-up, send it toPOST /security/step-up/verify, then repeat the call. The person can also choose Allow changes for 60 minutes on the app in Account settings, Connected apps, on the OpenEmail website. An API key is never asked for a code.- 404
form_not_foundwhen the id names no form you can reach.
الأخطاء التي يمكن أن تُرجعها أي عملية400401422500دليل الأخطاء
متاح أيضًا في
POST/forms/{id}/publish
Publish a form
Copies the draft document to publishedDocument and sets the form live, so the hosted page, the embed and the subscribe endpoint show and take the new version. Publishing a paused form opens it again. No body.
A double opt-in form also needs a senderAddress that can send confirmations, and the caller needs emails:send.
Requires the forms:write scope.
معلمات المسار
idstringمطلوبThe form id,
frm_plus 24 hex.
يُرجع
Published.
الأخطاء
- 404
form_not_foundwhen the id names no form you can reach.- 422
invalid_formorform_sender_refused, withparamnaming the field, orcapability_unsupportedwhen the key or app is limited to some addresses and the form'ssettings.senderAddressorsettings.notifyAddressesfalls outside them.
الأخطاء التي يمكن أن تُرجعها أي عملية400401403500دليل الأخطاء
متاح أيضًا في
POST/forms/{id}/pause
Pause a form
Stops a published form taking sign-ups. Its page stays up and shows the closed message from its copy, and a JSON post to its subscribe endpoint answers 409 form_closed while a plain HTML form goes to the hosted page. Pausing a paused form changes nothing. No body.
Requires the forms:write scope.
معلمات المسار
idstringمطلوبThe form id,
frm_plus 24 hex.
يُرجع
Paused.
الأخطاء
- 404
form_not_foundwhen the id names no form you can reach.- 409
form_not_published: a form that was never published cannot be paused.
الأخطاء التي يمكن أن تُرجعها أي عملية400401403422500دليل الأخطاء
متاح أيضًا في
POST/forms/{id}/resume
Resume a form
Opens a paused form again, with the version that was published last. Resuming a live form changes nothing. No body.
Resuming a double opt-in form also needs emails:send.
Requires the forms:write scope.
معلمات المسار
idstringمطلوبThe form id,
frm_plus 24 hex.
يُرجع
Live.
الأخطاء
- 404
form_not_foundwhen the id names no form you can reach.- 409
form_not_published: publish the form first.- 422
form_sender_refusedwhen a double opt-in form can no longer send confirmations,invalid_formwhen the published form breaks a rule, orcapability_unsupportedwhen the key or app is limited to some addresses and the form'ssettings.senderAddressorsettings.notifyAddressesfalls outside them.
الأخطاء التي يمكن أن تُرجعها أي عملية400401403500دليل الأخطاء
متاح أيضًا في
POST/forms/{id}/duplicate
Duplicate a form
Makes a new draft with the same document and settings and "copy" after the name. Submissions and statistics are not copied. No body.
Requires the forms:write scope.
معلمات المسار
idstringمطلوبThe form id,
frm_plus 24 hex.
يُرجع
The copy.
الأخطاء
- 404
form_not_foundwhen the id names no form you can reach.- 422
workspace_limit_reachedwhen the workspace holds the most forms it may, orcapability_unsupportedwhen the key or app is limited to some addresses and the form'ssettings.senderAddressorsettings.notifyAddressesfalls outside them.
الأخطاء التي يمكن أن تُرجعها أي عملية400401403500دليل الأخطاء
متاح أيضًا في
GET/forms/{id}/analytics
Form analytics
Views, submissions and people added over a window, in buckets, with totals and the conversion rate. A view is one load of the hosted page or the embed while the form is live, and views are not deduplicated by visitor.
Requires the forms:read scope.
معلمات المسار
idstringمطلوبThe form id,
frm_plus 24 hex.
معلمات الاستعلام
daysintegerHow far back to look. The oldest bucket is a whole one and the newest is partial.
على الأقل 1على الأكثر 1095الافتراضي30minutesintegerThe window in minutes, which wins over
dayswhen both are sent.على الأقل 1على الأكثر 1576800grainstringHow wide one bucket is. Views are kept per hour.
أحد"minute""hour""day"الافتراضي"day"offsetMinutesintegerMinutes east of UTC to cut the buckets in, so a day breaks where the reader's day does.
على الأقل -840على الأكثر 840الافتراضي0
يُرجع
The window, the totals and the series.
الأخطاء
- 404
form_not_foundwhen the id names no form you can reach.
الأخطاء التي يمكن أن تُرجعها أي عملية400401403422500دليل الأخطاء
متاح أيضًا في
GET/forms/{id}/submissions
List submissions
Newest first. Each row keeps the answers as they were sent, labels included, so it still reads right after the form changes.
Requires the forms:read scope.
معلمات المسار
idstringمطلوبThe form id,
frm_plus 24 hex.
معلمات الاستعلام
limitintegerRows per page, 1 to 100.
على الأقل 1على الأكثر 100الافتراضي25cursorstringA submission id of this form. Keyset, not offset: pass the previous page's
nextCursor. One that names nothing in this list is a 400invalid_cursor.qstringOnly submissions whose email address contains this text, ignoring case.
حتى 200 من الأحرفstatusstringOnly
pendingor onlyaddedsubmissions.أحد"pending""added"
يُرجع
A page of submissions.
الأخطاء
- 400
invalid_cursorwhen the cursor names no submission of this form.- 404
form_not_foundwhen the id names no form you can reach.
الأخطاء التي يمكن أن تُرجعها أي عملية401403422500دليل الأخطاء
متاح أيضًا في
POST/forms/{id}/submissions/batch-remove
Delete submissions
Deletes up to 200 submissions of this form in one call and answers with how many went. A person a submission added stays in your contacts and audiences. A pending one can no longer be confirmed.
Requires the forms:write scope.
معلمات المسار
idstringمطلوبThe form id,
frm_plus 24 hex.
متن الطلب
idsstring[]مطلوبSubmission ids of this form. An id that names nothing is skipped.
من 1 إلى 200 من العناصر
يُرجع
Deleted.
الأخطاء
- 404
form_not_foundwhen the id names no form you can reach.
الأخطاء التي يمكن أن تُرجعها أي عملية400401403422500دليل الأخطاء
متاح أيضًا في
GET/forms/{id}/submissions/{submissionId}
Retrieve a submission
One submission with every answer.
Requires the forms:read scope.
معلمات المسار
idstringمطلوبThe form id,
frm_plus 24 hex.submissionIdstringمطلوبThe submission id,
fsb_plus 24 hex.
يُرجع
The submission.
الأخطاء
- 404
form_not_found, orform_submission_not_foundwhen the form has no such submission.
الأخطاء التي يمكن أن تُرجعها أي عملية400401403422500دليل الأخطاء
متاح أيضًا في
DELETE/forms/{id}/submissions/{submissionId}
Delete a submission
Deletes the submission. The person it added stays in your contacts and audiences, and a pending one can no longer be confirmed.
Requires the forms:write scope.
معلمات المسار
idstringمطلوبThe form id,
frm_plus 24 hex.submissionIdstringمطلوبThe submission id,
fsb_plus 24 hex.
يُرجع
Deleted.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403422500دليل الأخطاء
متاح أيضًا في
POST/forms/{id}/submissions/{submissionId}/approve
Approve a submission
Adds the person of a pending submission to its audiences without waiting for them to confirm, for when you know them. It does not resubscribe someone who unsubscribed from an audience, as their own confirmation would. An added submission is returned as it is. No body.
Requires the forms:write and contacts:write scopes.
معلمات المسار
idstringمطلوبThe form id,
frm_plus 24 hex.submissionIdstringمطلوبThe submission id,
fsb_plus 24 hex.
يُرجع
The submission, now added.
الأخطاء
الأخطاء التي يمكن أن تُرجعها أي عملية400401403422500دليل الأخطاء
متاح أيضًا في
POST/forms/{id}/submissions/{submissionId}/resend
Resend a confirmation
Emails a pending submission a fresh confirmation link from the form's senderAddress. To protect the person, one address gets at most one confirmation per form every ten minutes and five a day across the workspace. A call that runs into those limits, or one for an added submission, sends nothing and answers confirmationSent: false. No body.
Requires the forms:write and emails:send scopes.
معلمات المسار
idstringمطلوبThe form id,
frm_plus 24 hex.submissionIdstringمطلوبThe submission id,
fsb_plus 24 hex.
يُرجع
The submission.
objectstring- أحد
"form_submission" idstringThe durable handle,
fsb_plus 24 hex.formIdstringemailstringThe address the person signed up with, lower cased.
statusstringaddedonce the person is a contact in the audiences.pendingwhile a double opt-in form waits for them to confirm.أحد"pending""added"expiredbooleanTrue for a
pendingsubmission whose confirmation link has run out. Approve it, or send a fresh link.answersFormAnswer[]A snapshot of every answer, kept as it was even after the form changes.
audienceIdsstring[]sourceUrlstringThe page the form was filled in on, its origin and path only and at most 500 characters, when it was known.
يمكن أن يكون nullconfirmedAtstringWhen the person joined the audiences. Null while pending.
يمكن أن يكون nullالتنسيقdate-timecreatedAtstring- التنسيق
date-time confirmationSentbooleanWhether an email went out on this call.
الأخطاء
- 422
form_sender_refusedwhen confirmations cannot go out from the form's address.
الأخطاء التي يمكن أن تُرجعها أي عملية400401403500دليل الأخطاء
متاح أيضًا في
POST/subscribe/{formId}
Sign up through a form
Takes no credential: this is where a published form's visitors post. A browser <form method="post"> sends its fields form encoded and is redirected with a 303 to the form's thank-you page or to its redirect. A script that sends Accept: application/json or a JSON body gets JSON answers and the error codes below instead. Cross-origin requests are allowed.
On a double opt-in form the person is emailed a confirmation link and joins the audiences once they open it, so outcome is pending. Signing up again before confirming updates that pending submission rather than storing another. Otherwise they join at once and outcome is added.
A person who unsubscribed from an audience stays unsubscribed unless they confirm through a double opt-in form. Sign-ups are limited to 40 every 10 minutes from one network, and a submission that looks automated gets a normal answer and is dropped.
معلمات المسار
formIdstringمطلوبThe id of a published form.
متن الطلب
نوع المحتوىapplication/json, application/x-www-form-urlencoded, multipart/form-data
emailstringThe field keyed
email, which every form has.valuesobjectThe answers again, for a client that would rather nest them.
oe_sourcestringThe page the form was filled in on. Defaults to the
Refererheader.
يُرجع
Signed up, for a JSON caller.
Signed up or refused, for a browser form: follow the Location header.
الأخطاء
- 400
malformed_jsonwhen a JSON body does not parse or is not an object.- 404
form_not_foundwhen no published form has that id.- 409
form_closedwhen the form is paused.- 422
invalid_form_submissionwhen an answer is missing or not valid. The error carriesfields, one entry per problem with the fieldkeyand the reason.- 429
form_rate_limitedwhen too many sign-ups came from the same network.
الأخطاء التي يمكن أن تُرجعها أي عملية500دليل الأخطاء
متاح أيضًا في
POST/forms/design
Design a form from a brief
A designer builds a new sign-up form from a written brief, as Create with AI does on the Forms page of the app: it picks the fields, writes the copy and sets the look, then saves the form as a draft. Publish it with POST /forms/{id}/publish. It spends one AI action and can take up to half a minute.
Requires the forms:write scope.
متن الطلب
briefstringمطلوبEverything the form must ask and say, up to 4,000 characters.
من 1 إلى 4000 من الأحرفnamestringA short name for the form, up to 120 characters. Left out, the designer names it.
من 1 إلى 120 من الأحرف
يُرجع
The new form, a draft.
objectstring- أحد
"form" idstringThe durable handle,
frm_plus 24 hex.namestringWhat the workspace calls the form. Visitors never see it.
descriptionstring- يمكن أن يكون null
statusstringdraftuntil the first publish, thenlivewhile it takes sign-ups andpausedwhile it does not. A form never goes back todraft.أحد"draft""live""paused"urlstringThe hosted page that shows the published form. Share it as a link, or add
?embed=1for the frame the embed script loads.subscribeUrlstringWhere a plain HTML
<form method="post">sends its fields, and where a script posts JSON for a JSON answer.audienceIdsstring[]The audiences every sign-up joins, besides the default audience that holds every contact. An audiences field adds the ones the person ticks.
doubleOptInbooleanWhether a sign-up waits for the person to confirm their address by email.
hasUnpublishedChangesbooleanTrue when the draft
documentdiffers from what the live form shows. Always false before the first publish.statsFormStatspublishedAtstring- يمكن أن يكون nullالتنسيق
date-time createdAtstring- التنسيق
date-time updatedAtstringSend it back as
expectedUpdatedAtonPATCH /forms/{id}to refuse a save that would overwrite someone else's.التنسيقdate-timedocumentobjectEverything a visitor sees:
fieldsin order, thecopyaround them and thestyle. Every form has exactly oneemailfield, and every input field has a uniquekeythat answers are posted under.fieldsobject[]مطلوب- من 1 إلى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
typestringمطلوب- أحد
"email""text""textarea""number""phone""url""date""select""radio""checkboxes""checkbox""consent""audiences""hidden""heading""paragraph""divider" keystringمطلوب- حتى 40 من الأحرفالنمط
^[a-z][a-z0-9_]{0,39}$ labelstringمطلوب- حتى 300 من الأحرف
placeholderstringمطلوب- يمكن أن يكون nullحتى 200 من الأحرف
helpstringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
requiredbooleanمطلوبdefaultValuestringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
optionsobject[]مطلوب- حتى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
labelstringمطلوب- من 1 إلى 300 من الأحرف
valuestringمطلوب- من 1 إلى 1000 من الأحرف
mapsTostringمطلوب- يمكن أن يكون nullأحد
"email""firstName""lastName""name" widthstringمطلوب- أحد
"full""half" minLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 0على الأكثر 5000
maxLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 1على الأكثر 5000
minnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
maxnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
copyobjectمطلوبtitlestringمطلوب- حتى 200 من الأحرف
descriptionstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
submitLabelstringمطلوب- من 1 إلى 60 من الأحرف
successTitlestringمطلوب- حتى 200 من الأحرف
successMessagestringمطلوب- حتى 2000 من الأحرف
pendingTitlestringمطلوب- حتى 200 من الأحرف
pendingMessagestringمطلوب- حتى 2000 من الأحرف
closedTitlestringمطلوب- حتى 200 من الأحرف
closedMessagestringمطلوب- حتى 2000 من الأحرف
footerstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
styleobjectمطلوبaccentstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ backgroundstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ surfacestringمطلوب- النمط
^#[0-9a-fA-F]{6}$ textstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ fontstringمطلوب- أحد
"system""sans""serif""mono" radiusstringمطلوب- أحد
"none""sm""md""lg""full" widthstringمطلوب- أحد
"narrow""normal""wide" layoutstringمطلوب- أحد
"card""plain" alignstringمطلوب- أحد
"left""center" logoUrlstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرفالتنسيق
uri
publishedDocumentobjectEverything a visitor sees:
fieldsin order, thecopyaround them and thestyle. Every form has exactly oneemailfield, and every input field has a uniquekeythat answers are posted under.يمكن أن يكون nullfieldsobject[]مطلوب- من 1 إلى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
typestringمطلوب- أحد
"email""text""textarea""number""phone""url""date""select""radio""checkboxes""checkbox""consent""audiences""hidden""heading""paragraph""divider" keystringمطلوب- حتى 40 من الأحرفالنمط
^[a-z][a-z0-9_]{0,39}$ labelstringمطلوب- حتى 300 من الأحرف
placeholderstringمطلوب- يمكن أن يكون nullحتى 200 من الأحرف
helpstringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
requiredbooleanمطلوبdefaultValuestringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
optionsobject[]مطلوب- حتى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
labelstringمطلوب- من 1 إلى 300 من الأحرف
valuestringمطلوب- من 1 إلى 1000 من الأحرف
mapsTostringمطلوب- يمكن أن يكون nullأحد
"email""firstName""lastName""name" widthstringمطلوب- أحد
"full""half" minLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 0على الأكثر 5000
maxLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 1على الأكثر 5000
minnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
maxnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
copyobjectمطلوبtitlestringمطلوب- حتى 200 من الأحرف
descriptionstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
submitLabelstringمطلوب- من 1 إلى 60 من الأحرف
successTitlestringمطلوب- حتى 200 من الأحرف
successMessagestringمطلوب- حتى 2000 من الأحرف
pendingTitlestringمطلوب- حتى 200 من الأحرف
pendingMessagestringمطلوب- حتى 2000 من الأحرف
closedTitlestringمطلوب- حتى 200 من الأحرف
closedMessagestringمطلوب- حتى 2000 من الأحرف
footerstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
styleobjectمطلوبaccentstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ backgroundstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ surfacestringمطلوب- النمط
^#[0-9a-fA-F]{6}$ textstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ fontstringمطلوب- أحد
"system""sans""serif""mono" radiusstringمطلوب- أحد
"none""sm""md""lg""full" widthstringمطلوب- أحد
"narrow""normal""wide" layoutstringمطلوب- أحد
"card""plain" alignstringمطلوب- أحد
"left""center" logoUrlstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرفالتنسيق
uri
settingsobjectWhere sign-ups go and what happens after one.
audienceIdsstring[]مطلوب- حتى 20 من العناصر
doubleOptInbooleanمطلوبsenderAddressstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
confirmSubjectstringمطلوب- من 1 إلى 200 من الأحرف
confirmMessagestringمطلوب- حتى 2000 من الأحرف
confirmButtonstringمطلوب- من 1 إلى 60 من الأحرف
successActionstringمطلوب- أحد
"message""redirect" redirectUrlstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرفالتنسيق
uri notifyAddressesstring[]مطلوب- حتى 10 من العناصر
audiencesFormAudience[]The audiences in
audienceIdswith their names.senderIssuestringWhy confirmation emails cannot go out right now, for a form with
doubleOptInon.missingmeans nosenderAddressis set,not_sendablethat the address cannot send,not_allowedthat the form's maker may not send as it. Null when they can go out, and always null withdoubleOptInoff.يمكن أن يكون nullأحد"missing""not_sendable""not_allowed"senderProblemstringThe same problem in a sentence, or null.
يمكن أن يكون nulldesignobjectnotesstring[]What the designer adjusted or left out while making the design valid.
الأخطاء
- 409
ai_not_configured: this server has no model to design with.version_conflict: the form was saved sinceexpectedUpdatedAt, or while the designer worked, and nothing was written.- 422
invalid_formwhen the designer could not make a valid form, so nothing was created or changed.workspace_limit_reachedwhen the workspace already holds as many forms as it may.invalid_parameterfor a body that does not validate.- 429
ai_quota_exceeded: the workspace has used its AI actions for today.
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404500دليل الأخطاء
متاح أيضًا في
POST/forms/{id}/redesign
Change a form’s design from instructions
A designer applies written instructions to the draft of the form and leaves the rest alone, as Ask AI does in the form builder of the app: add, remove or reorder fields, rewrite or translate the copy, change colours or fonts. The change is saved to the draft, and a live form keeps showing its published version until POST /forms/{id}/publish. It spends one AI action and can take up to half a minute.
Requires the forms:write scope.
معلمات المسار
idstringمطلوبForm id such as
frm_8d2f6a1c9b3e47d0a5f1c2e9.
متن الطلب
instructionsstringمطلوبWhat to change, with every detail, up to 4,000 characters.
من 1 إلى 4000 من الأحرفexpectedUpdatedAtstringThe
updatedAtyou read, as it came. When the form was saved since, nothing is written and the answer is 409version_conflict.التنسيقdate-time
يُرجع
The form, with the change in its draft.
objectstring- أحد
"form" idstringThe durable handle,
frm_plus 24 hex.namestringWhat the workspace calls the form. Visitors never see it.
descriptionstring- يمكن أن يكون null
statusstringdraftuntil the first publish, thenlivewhile it takes sign-ups andpausedwhile it does not. A form never goes back todraft.أحد"draft""live""paused"urlstringThe hosted page that shows the published form. Share it as a link, or add
?embed=1for the frame the embed script loads.subscribeUrlstringWhere a plain HTML
<form method="post">sends its fields, and where a script posts JSON for a JSON answer.audienceIdsstring[]The audiences every sign-up joins, besides the default audience that holds every contact. An audiences field adds the ones the person ticks.
doubleOptInbooleanWhether a sign-up waits for the person to confirm their address by email.
hasUnpublishedChangesbooleanTrue when the draft
documentdiffers from what the live form shows. Always false before the first publish.statsFormStatspublishedAtstring- يمكن أن يكون nullالتنسيق
date-time createdAtstring- التنسيق
date-time updatedAtstringSend it back as
expectedUpdatedAtonPATCH /forms/{id}to refuse a save that would overwrite someone else's.التنسيقdate-timedocumentobjectEverything a visitor sees:
fieldsin order, thecopyaround them and thestyle. Every form has exactly oneemailfield, and every input field has a uniquekeythat answers are posted under.fieldsobject[]مطلوب- من 1 إلى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
typestringمطلوب- أحد
"email""text""textarea""number""phone""url""date""select""radio""checkboxes""checkbox""consent""audiences""hidden""heading""paragraph""divider" keystringمطلوب- حتى 40 من الأحرفالنمط
^[a-z][a-z0-9_]{0,39}$ labelstringمطلوب- حتى 300 من الأحرف
placeholderstringمطلوب- يمكن أن يكون nullحتى 200 من الأحرف
helpstringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
requiredbooleanمطلوبdefaultValuestringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
optionsobject[]مطلوب- حتى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
labelstringمطلوب- من 1 إلى 300 من الأحرف
valuestringمطلوب- من 1 إلى 1000 من الأحرف
mapsTostringمطلوب- يمكن أن يكون nullأحد
"email""firstName""lastName""name" widthstringمطلوب- أحد
"full""half" minLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 0على الأكثر 5000
maxLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 1على الأكثر 5000
minnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
maxnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
copyobjectمطلوبtitlestringمطلوب- حتى 200 من الأحرف
descriptionstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
submitLabelstringمطلوب- من 1 إلى 60 من الأحرف
successTitlestringمطلوب- حتى 200 من الأحرف
successMessagestringمطلوب- حتى 2000 من الأحرف
pendingTitlestringمطلوب- حتى 200 من الأحرف
pendingMessagestringمطلوب- حتى 2000 من الأحرف
closedTitlestringمطلوب- حتى 200 من الأحرف
closedMessagestringمطلوب- حتى 2000 من الأحرف
footerstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
styleobjectمطلوبaccentstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ backgroundstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ surfacestringمطلوب- النمط
^#[0-9a-fA-F]{6}$ textstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ fontstringمطلوب- أحد
"system""sans""serif""mono" radiusstringمطلوب- أحد
"none""sm""md""lg""full" widthstringمطلوب- أحد
"narrow""normal""wide" layoutstringمطلوب- أحد
"card""plain" alignstringمطلوب- أحد
"left""center" logoUrlstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرفالتنسيق
uri
publishedDocumentobjectEverything a visitor sees:
fieldsin order, thecopyaround them and thestyle. Every form has exactly oneemailfield, and every input field has a uniquekeythat answers are posted under.يمكن أن يكون nullfieldsobject[]مطلوب- من 1 إلى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
typestringمطلوب- أحد
"email""text""textarea""number""phone""url""date""select""radio""checkboxes""checkbox""consent""audiences""hidden""heading""paragraph""divider" keystringمطلوب- حتى 40 من الأحرفالنمط
^[a-z][a-z0-9_]{0,39}$ labelstringمطلوب- حتى 300 من الأحرف
placeholderstringمطلوب- يمكن أن يكون nullحتى 200 من الأحرف
helpstringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
requiredbooleanمطلوبdefaultValuestringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
optionsobject[]مطلوب- حتى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
labelstringمطلوب- من 1 إلى 300 من الأحرف
valuestringمطلوب- من 1 إلى 1000 من الأحرف
mapsTostringمطلوب- يمكن أن يكون nullأحد
"email""firstName""lastName""name" widthstringمطلوب- أحد
"full""half" minLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 0على الأكثر 5000
maxLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 1على الأكثر 5000
minnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
maxnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
copyobjectمطلوبtitlestringمطلوب- حتى 200 من الأحرف
descriptionstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
submitLabelstringمطلوب- من 1 إلى 60 من الأحرف
successTitlestringمطلوب- حتى 200 من الأحرف
successMessagestringمطلوب- حتى 2000 من الأحرف
pendingTitlestringمطلوب- حتى 200 من الأحرف
pendingMessagestringمطلوب- حتى 2000 من الأحرف
closedTitlestringمطلوب- حتى 200 من الأحرف
closedMessagestringمطلوب- حتى 2000 من الأحرف
footerstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
styleobjectمطلوبaccentstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ backgroundstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ surfacestringمطلوب- النمط
^#[0-9a-fA-F]{6}$ textstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ fontstringمطلوب- أحد
"system""sans""serif""mono" radiusstringمطلوب- أحد
"none""sm""md""lg""full" widthstringمطلوب- أحد
"narrow""normal""wide" layoutstringمطلوب- أحد
"card""plain" alignstringمطلوب- أحد
"left""center" logoUrlstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرفالتنسيق
uri
settingsobjectWhere sign-ups go and what happens after one.
audienceIdsstring[]مطلوب- حتى 20 من العناصر
doubleOptInbooleanمطلوبsenderAddressstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
confirmSubjectstringمطلوب- من 1 إلى 200 من الأحرف
confirmMessagestringمطلوب- حتى 2000 من الأحرف
confirmButtonstringمطلوب- من 1 إلى 60 من الأحرف
successActionstringمطلوب- أحد
"message""redirect" redirectUrlstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرفالتنسيق
uri notifyAddressesstring[]مطلوب- حتى 10 من العناصر
audiencesFormAudience[]The audiences in
audienceIdswith their names.senderIssuestringWhy confirmation emails cannot go out right now, for a form with
doubleOptInon.missingmeans nosenderAddressis set,not_sendablethat the address cannot send,not_allowedthat the form's maker may not send as it. Null when they can go out, and always null withdoubleOptInoff.يمكن أن يكون nullأحد"missing""not_sendable""not_allowed"senderProblemstringThe same problem in a sentence, or null.
يمكن أن يكون nulldesignobjectnotesstring[]What the designer adjusted or left out while making the design valid.
الأخطاء
- 409
ai_not_configured: this server has no model to design with.version_conflict: the form was saved sinceexpectedUpdatedAt, or while the designer worked, and nothing was written.- 422
invalid_formwhen the designer could not make a valid form, so nothing was created or changed.workspace_limit_reachedwhen the workspace already holds as many forms as it may.invalid_parameterfor a body that does not validate.- 429
ai_quota_exceeded: the workspace has used its AI actions for today.
الأخطاء التي يمكن أن تُرجعها أي عملية400401403404500دليل الأخطاء
متاح أيضًا في
الكائنات
DeletedFormobject
objectstring- أحد
"form" idstringdeletedboolean- أحد
true
DeletedFormSubmissionobject
objectstring- أحد
"form_submission" idstringformIdstringdeletedboolean- أحد
true
Formobject
objectstring- أحد
"form" idstringThe durable handle,
frm_plus 24 hex.namestringWhat the workspace calls the form. Visitors never see it.
descriptionstring- يمكن أن يكون null
statusstringdraftuntil the first publish, thenlivewhile it takes sign-ups andpausedwhile it does not. A form never goes back todraft.أحد"draft""live""paused"urlstringThe hosted page that shows the published form. Share it as a link, or add
?embed=1for the frame the embed script loads.subscribeUrlstringWhere a plain HTML
<form method="post">sends its fields, and where a script posts JSON for a JSON answer.audienceIdsstring[]The audiences every sign-up joins, besides the default audience that holds every contact. An audiences field adds the ones the person ticks.
doubleOptInbooleanWhether a sign-up waits for the person to confirm their address by email.
hasUnpublishedChangesbooleanTrue when the draft
documentdiffers from what the live form shows. Always false before the first publish.statsFormStatspublishedAtstring- يمكن أن يكون nullالتنسيق
date-time createdAtstring- التنسيق
date-time updatedAtstringSend it back as
expectedUpdatedAtonPATCH /forms/{id}to refuse a save that would overwrite someone else's.التنسيقdate-timedocumentobjectEverything a visitor sees:
fieldsin order, thecopyaround them and thestyle. Every form has exactly oneemailfield, and every input field has a uniquekeythat answers are posted under.fieldsobject[]مطلوب- من 1 إلى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
typestringمطلوب- أحد
"email""text""textarea""number""phone""url""date""select""radio""checkboxes""checkbox""consent""audiences""hidden""heading""paragraph""divider" keystringمطلوب- حتى 40 من الأحرفالنمط
^[a-z][a-z0-9_]{0,39}$ labelstringمطلوب- حتى 300 من الأحرف
placeholderstringمطلوب- يمكن أن يكون nullحتى 200 من الأحرف
helpstringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
requiredbooleanمطلوبdefaultValuestringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
optionsobject[]مطلوب- حتى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
labelstringمطلوب- من 1 إلى 300 من الأحرف
valuestringمطلوب- من 1 إلى 1000 من الأحرف
mapsTostringمطلوب- يمكن أن يكون nullأحد
"email""firstName""lastName""name" widthstringمطلوب- أحد
"full""half" minLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 0على الأكثر 5000
maxLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 1على الأكثر 5000
minnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
maxnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
copyobjectمطلوبtitlestringمطلوب- حتى 200 من الأحرف
descriptionstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
submitLabelstringمطلوب- من 1 إلى 60 من الأحرف
successTitlestringمطلوب- حتى 200 من الأحرف
successMessagestringمطلوب- حتى 2000 من الأحرف
pendingTitlestringمطلوب- حتى 200 من الأحرف
pendingMessagestringمطلوب- حتى 2000 من الأحرف
closedTitlestringمطلوب- حتى 200 من الأحرف
closedMessagestringمطلوب- حتى 2000 من الأحرف
footerstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
styleobjectمطلوبaccentstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ backgroundstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ surfacestringمطلوب- النمط
^#[0-9a-fA-F]{6}$ textstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ fontstringمطلوب- أحد
"system""sans""serif""mono" radiusstringمطلوب- أحد
"none""sm""md""lg""full" widthstringمطلوب- أحد
"narrow""normal""wide" layoutstringمطلوب- أحد
"card""plain" alignstringمطلوب- أحد
"left""center" logoUrlstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرفالتنسيق
uri
publishedDocumentobjectEverything a visitor sees:
fieldsin order, thecopyaround them and thestyle. Every form has exactly oneemailfield, and every input field has a uniquekeythat answers are posted under.يمكن أن يكون nullfieldsobject[]مطلوب- من 1 إلى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
typestringمطلوب- أحد
"email""text""textarea""number""phone""url""date""select""radio""checkboxes""checkbox""consent""audiences""hidden""heading""paragraph""divider" keystringمطلوب- حتى 40 من الأحرفالنمط
^[a-z][a-z0-9_]{0,39}$ labelstringمطلوب- حتى 300 من الأحرف
placeholderstringمطلوب- يمكن أن يكون nullحتى 200 من الأحرف
helpstringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
requiredbooleanمطلوبdefaultValuestringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
optionsobject[]مطلوب- حتى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
labelstringمطلوب- من 1 إلى 300 من الأحرف
valuestringمطلوب- من 1 إلى 1000 من الأحرف
mapsTostringمطلوب- يمكن أن يكون nullأحد
"email""firstName""lastName""name" widthstringمطلوب- أحد
"full""half" minLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 0على الأكثر 5000
maxLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 1على الأكثر 5000
minnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
maxnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
copyobjectمطلوبtitlestringمطلوب- حتى 200 من الأحرف
descriptionstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
submitLabelstringمطلوب- من 1 إلى 60 من الأحرف
successTitlestringمطلوب- حتى 200 من الأحرف
successMessagestringمطلوب- حتى 2000 من الأحرف
pendingTitlestringمطلوب- حتى 200 من الأحرف
pendingMessagestringمطلوب- حتى 2000 من الأحرف
closedTitlestringمطلوب- حتى 200 من الأحرف
closedMessagestringمطلوب- حتى 2000 من الأحرف
footerstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
styleobjectمطلوبaccentstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ backgroundstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ surfacestringمطلوب- النمط
^#[0-9a-fA-F]{6}$ textstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ fontstringمطلوب- أحد
"system""sans""serif""mono" radiusstringمطلوب- أحد
"none""sm""md""lg""full" widthstringمطلوب- أحد
"narrow""normal""wide" layoutstringمطلوب- أحد
"card""plain" alignstringمطلوب- أحد
"left""center" logoUrlstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرفالتنسيق
uri
settingsobjectWhere sign-ups go and what happens after one.
audienceIdsstring[]مطلوب- حتى 20 من العناصر
doubleOptInbooleanمطلوبsenderAddressstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
confirmSubjectstringمطلوب- من 1 إلى 200 من الأحرف
confirmMessagestringمطلوب- حتى 2000 من الأحرف
confirmButtonstringمطلوب- من 1 إلى 60 من الأحرف
successActionstringمطلوب- أحد
"message""redirect" redirectUrlstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرفالتنسيق
uri notifyAddressesstring[]مطلوب- حتى 10 من العناصر
audiencesFormAudience[]The audiences in
audienceIdswith their names.senderIssuestringWhy confirmation emails cannot go out right now, for a form with
doubleOptInon.missingmeans nosenderAddressis set,not_sendablethat the address cannot send,not_allowedthat the form's maker may not send as it. Null when they can go out, and always null withdoubleOptInoff.يمكن أن يكون nullأحد"missing""not_sendable""not_allowed"senderProblemstringThe same problem in a sentence, or null.
يمكن أن يكون null
FormAnalyticsobject
objectstring- أحد
"form_analytics" formIdstringsincestring- التنسيق
date-time untilstring- التنسيق
date-time grainstring- أحد
"minute""hour""day" offsetMinutesintegertotalsobjectviewsintegerTimes the hosted page or the embed was opened while the form was live.
submissionsintegerEvery submission stored, waiting or added.
addedintegerSubmissions whose person is in the audiences.
pendingintegerSubmissions still waiting for the person to confirm their address.
lastSubmittedAtstring- يمكن أن يكون nullالتنسيق
date-time conversionnumberSubmissions divided by views over the window, at most 1. Null with no views.
يمكن أن يكون null
seriesFormAnalyticsPoint[]Sparse: a bucket with nothing in it is left out.
FormAnalyticsPointobject
bucketstringYYYY-MM-DDfor a day,YYYY-MM-DDTHHfor an hour,YYYY-MM-DDTHH:MMfor a minute.viewsintegersubmissionsintegeraddedintegerPeople who joined the audiences in the bucket, dated when they confirmed.
FormAnswerobject
fieldIdstringkeystringThe field key the value was posted under.
labelstringThe field label when the person signed up.
typestring- أحد
"email""text""textarea""number""phone""url""date""select""radio""checkboxes""checkbox""consent""audiences""hidden""heading""paragraph""divider" valuestring | string[] | booleanText for most fields, a list for multiple choice, true or false for a checkbox.
displaystringThe value as a person reads it, option labels included.
FormAudienceobject
idstringnamestringbuiltinbooleanTrue for the default audience every contact joins.
FormDocumentobject
Everything a visitor sees: fields in order, the copy around them and the style. Every form has exactly one email field, and every input field has a unique key that answers are posted under.
fieldsobject[]مطلوب- من 1 إلى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
typestringمطلوب- أحد
"email""text""textarea""number""phone""url""date""select""radio""checkboxes""checkbox""consent""audiences""hidden""heading""paragraph""divider" keystringمطلوب- حتى 40 من الأحرفالنمط
^[a-z][a-z0-9_]{0,39}$ labelstringمطلوب- حتى 300 من الأحرف
placeholderstringمطلوب- يمكن أن يكون nullحتى 200 من الأحرف
helpstringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
requiredbooleanمطلوبdefaultValuestringمطلوب- يمكن أن يكون nullحتى 1000 من الأحرف
optionsobject[]مطلوب- حتى 50 من العناصر
idstringمطلوب- من 1 إلى 64 من الأحرف
labelstringمطلوب- من 1 إلى 300 من الأحرف
valuestringمطلوب- من 1 إلى 1000 من الأحرف
mapsTostringمطلوب- يمكن أن يكون nullأحد
"email""firstName""lastName""name" widthstringمطلوب- أحد
"full""half" minLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 0على الأكثر 5000
maxLengthintegerمطلوب- يمكن أن يكون nullعلى الأقل 1على الأكثر 5000
minnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
maxnumberمطلوب- يمكن أن يكون nullعلى الأقل -1000000000000على الأكثر 1000000000000
copyobjectمطلوبtitlestringمطلوب- حتى 200 من الأحرف
descriptionstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
submitLabelstringمطلوب- من 1 إلى 60 من الأحرف
successTitlestringمطلوب- حتى 200 من الأحرف
successMessagestringمطلوب- حتى 2000 من الأحرف
pendingTitlestringمطلوب- حتى 200 من الأحرف
pendingMessagestringمطلوب- حتى 2000 من الأحرف
closedTitlestringمطلوب- حتى 200 من الأحرف
closedMessagestringمطلوب- حتى 2000 من الأحرف
footerstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرف
styleobjectمطلوبaccentstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ backgroundstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ surfacestringمطلوب- النمط
^#[0-9a-fA-F]{6}$ textstringمطلوب- النمط
^#[0-9a-fA-F]{6}$ fontstringمطلوب- أحد
"system""sans""serif""mono" radiusstringمطلوب- أحد
"none""sm""md""lg""full" widthstringمطلوب- أحد
"narrow""normal""wide" layoutstringمطلوب- أحد
"card""plain" alignstringمطلوب- أحد
"left""center" logoUrlstringمطلوب- يمكن أن يكون nullحتى 2000 من الأحرفالتنسيق
uri
FormListobject
objectstring- أحد
"list" dataFormSummary[]hasMorebooleanTrue when another page follows. Pass
nextCursorback ascursorto read it.nextCursorstringAn opaque cursor for the next page, or null on the last page. Pass it back unchanged.
يمكن أن يكون null
FormStarterobject
objectstring- أحد
"form_starter" slugstring- أحد
"blank""newsletter""waitlist""event""early-access""contact" namestringdescriptionstring
FormStarterDetailobject
objectstring- أحد
"form_starter" slugstring- أحد
"blank""newsletter""waitlist""event""early-access""contact" namestringdescriptionstringdocumentFormDocument
FormStarterListobject
objectstring- أحد
"list" dataFormStarter[]
FormStatsobject
viewsintegerTimes the hosted page or the embed was opened while the form was live.
submissionsintegerEvery submission stored, waiting or added.
addedintegerSubmissions whose person is in the audiences.
pendingintegerSubmissions still waiting for the person to confirm their address.
lastSubmittedAtstring- يمكن أن يكون nullالتنسيق
date-time
FormSubmissionobject
objectstring- أحد
"form_submission" idstringThe durable handle,
fsb_plus 24 hex.formIdstringemailstringThe address the person signed up with, lower cased.
statusstringaddedonce the person is a contact in the audiences.pendingwhile a double opt-in form waits for them to confirm.أحد"pending""added"expiredbooleanTrue for a
pendingsubmission whose confirmation link has run out. Approve it, or send a fresh link.answersFormAnswer[]A snapshot of every answer, kept as it was even after the form changes.
audienceIdsstring[]sourceUrlstringThe page the form was filled in on, its origin and path only and at most 500 characters, when it was known.
يمكن أن يكون nullconfirmedAtstringWhen the person joined the audiences. Null while pending.
يمكن أن يكون nullالتنسيقdate-timecreatedAtstring- التنسيق
date-time
FormSubmissionBatchobject
objectstring- أحد
"form_submission_batch" formIdstringdeletedintegerHow many submissions were deleted.
FormSubmissionListobject
objectstring- أحد
"list" dataFormSubmission[]hasMorebooleannextCursorstring- يمكن أن يكون null
formIdstring
FormSubscriptionobject
objectstring- أحد
"form_subscription" formIdstringoutcomestringaddedwhen the person is in the audiences now.pendingon a double opt-in form: they join once they confirm by email, and that email goes out after this answer unless this form emailed the address in the last ten minutes or the address has had five from this workspace today.أحد"added""pending"redirectUrlstringWhere the form sends people after a sign-up, when it is set to redirect.
يمكن أن يكون null
FormSummaryobject
objectstring- أحد
"form" idstringThe durable handle,
frm_plus 24 hex.namestringWhat the workspace calls the form. Visitors never see it.
descriptionstring- يمكن أن يكون null
statusstringdraftuntil the first publish, thenlivewhile it takes sign-ups andpausedwhile it does not. A form never goes back todraft.أحد"draft""live""paused"urlstringThe hosted page that shows the published form. Share it as a link, or add
?embed=1for the frame the embed script loads.subscribeUrlstringWhere a plain HTML
<form method="post">sends its fields, and where a script posts JSON for a JSON answer.audienceIdsstring[]The audiences every sign-up joins, besides the default audience that holds every contact. An audiences field adds the ones the person ticks.
doubleOptInbooleanWhether a sign-up waits for the person to confirm their address by email.
hasUnpublishedChangesbooleanTrue when the draft
documentdiffers from what the live form shows. Always false before the first publish.statsFormStatspublishedAtstring- يمكن أن يكون nullالتنسيق
date-time createdAtstring- التنسيق
date-time updatedAtstringSend it back as
expectedUpdatedAtonPATCH /forms/{id}to refuse a save that would overwrite someone else's.التنسيقdate-time