Create Predefined Form Link - V2

Prev Next
Post
/v2/forms/createpredefinedlink/{FORM_ID}

The newest version of this API generates a personalized form link by overlaying fillable fields onto a custom PDF or image background. It also includes additional field types and support for Base64 file uploads.

The API creates a unique form URL that can be shared with customers for completion.

How It Works

  1. Specify the form template to use (via Form ID).
  2. Identify the recipient (email or phone number).
  3. Add additional parameters to prefill some or all the fields (optional).
  4. Add submissionContext (optional) that will be attached to the document and enable internal classification used by the organization.
  5. Upload a background document (PDF or image) in ONE of the ways (selecting both will fail the API return process).
  6. Receive a unique form link to share with the customer

Request Parameters

Path Parameters

  • FORM_ID (required): The unique identifier of the form template (visible in the Forms list screen)

Body Parameters (multipart/form-data)

  • streamProviderId (required): Customer's phone number or email address
  • streamProviderType (required): Delivery method - 4 for email, 5 for phone/SMS
  • referringObjectId (optional): Conversation ID to link with the generated form object for tracking purposes
  • properties (optional): JSON object with values for form’s inputs fields.
    Expected format: field1_name:;field2_name:
  • submissionContext (optional): Internal-only metadata passed in webhooks
  • file (required): Background document file (PDF or image format URL)
  • base64Data (Optional): A Base64-encoded PDF uploaded with the request combined with the file name.
    Expected format for field’s value: filename:;base64:

Important Notes

Field Positioning: All fillable fields will appear on the last page of your background document

Form Object Creation: When a recipient opens the form link, a new form object is automatically created in the system

Conversation Tracking: Use referringObjectId to maintain context between the form and the originating conversation

Security
HTTP
Type bearer

API key is needed to authorize requests. You can get your API key via the management console.
A Bearer Token is needed to be set in the Authorization header of every API call.
For additional support you can contact us.

Path parameters
FORM_ID
stringRequired

Form Id - Form number (as seen on the forms list screen)

Body parameters
Expand All
object
streamProviderId
string Required

The identifier of the receiving customer by their phone number or email

Example19175552345
streamProviderType
string Required

4 for email, 5 for phone number

Valid values[ "4", "5" ]
Example5
referringObjectId
integer

(Optional) The object ID of the conversation related to the Form

Example312345
properties
object

(Optional) JSON object with values for form inputs.

submissionContext
string

(Optional) An internal-only metadata passed in webhooks

file
string (binary)

Background document file (PDF or image format). Upload the file to the Value section

base64Data
string

(Optional) A Base64-encoded PDF uploaded with the request combined with the file name

Responses
200

OK

Expand All
object
status
integer
Example200
description
string
ExampleOperation successful
response_time
string (date-time)
Example2025-02-06T07:51:52.258Z
data
object
conversation_id
string

The ID of the conversation linked to this form

Example312345
form_link
string (uri)

The unique URL for the generated form

Examplehttps://apps.commbox.io/form/commbox/499fdc93aa804a4b8266251224944d6a
400

Bad Request - The request could not be understood by the server. Incoming parameters might not be valid

object
status
integer
Example400
description
string
ExampleBad Request
response_time
string (date-time)
Example2025-02-06T07:51:52.258Z
401

Unauthorized - The supplied credentials, if any, are not sufficient to access the resource

object
status
integer
Example401
description
string
ExampleUnauthorized
response_time
string (date-time)
Example2025-02-06T07:51:52.258Z
404

Not found - The requested resource is not found

object
status
integer
Example404
description
string
ExampleNot Found
response_time
string (date-time)
Example2025-02-06T07:51:52.258Z
429

Too Many Requests - Too many requests have been made in a short period of time (Throttling)

object
status
integer
Example429
description
string
ExampleToo Many Requests
response_time
string (date-time)
Example2025-02-06T07:51:52.258Z
500

Server Error - The server could not return the representation due to an internal server error

object
status
integer
Example500
description
string
ExampleInternal Server Error
response_time
string (date-time)
Example2025-02-06T07:51:52.258Z