Generate Forms - Quik! Forms Engine Services
Description
Instead of installing the QuikFormsEngine.dll to generate forms, you can use the REST web service version instead. The web service is essentially a wrapper for the QuikFormsEngine.dll enabling you to use the software remotely without installing the actual software or requiring the .NET Framework in your production environment. This is ideal for non-.NET users (e.g. Linux, Unix, MacOS, tablet OS, etc.). The most popular method below is Execute HTML, which is used to generate HTML forms.
Endpoint URL: https://websvcs.quikforms.com/rest/quikformsengine
Endpoint Documentation (Swagger - Production): https://websvcs.quikforms.com/rest/quikformsengine/swagger/ui/index#/QFE
Endpoint Documentation (Swagger - UAT): https://uatwebsvcs.quikforms.com/rest/quikformsengine/swagger/ui/index#/
A note on UNID values
The UNID value Quik! shows to customers is encoded (you will notice that it is encoded when you see either %2b or %2f in the value), then Quik! APIs will first decode it (where %2b results in + and %2f results in /) and then we decrypt it to get the UNID format like 893A4B6E-9DBD-4EB3-83EA-B2A723EF101E. When customers pass an encoded value in a query string like the Get Attachments endpoint below (like https://websvcs.quikforms.com/rest/quikformsengine/attachments?unid=yINpmhmAQ9a%2buIEBwcURm476DfkhVfxyJV%2fCfBN8fDl5sSHiUBagJsA%2bIFfUhmOY4), the .NET framework will decode it automatically and then we perform the decode again, resulting in an error. A workaround is to encode the value before building the url with the unid in it. In .NET you can do that by using HttpUtility.UrlEncode(unid). This transforms % into %25 so it comes as % again in the API.
Methods
Service | URL | TYPE | Service Description | Parameters |
---|---|---|---|---|
/qfe/execute/html | POST | Execute the Quik! Forms Engine for HTML form output |
{
"HostFormOnQuik":true,
"FormFields":[
{
"FieldName":"1own.FName",
"FieldValue":"Joe"
},
{
"FieldName":"1own.LName",
"FieldValue":"Smith"
}
],
"QuikFormID":"12"
} | |
Execute PDF | /qfe/execute/pdf | POST | Execute the Quik! Forms Engine for PDF form output |
{
"ForSign":true,
"QuikFormID":"12",
"PrintEditablePDF":false
}
|
Get Attachments | /attachments | GET | Get all attachments associated with a UNID |
|
Upload Attachments | /attachments/upload | POST | Upload an attachment file to a specified UNID |
If a customer wants more than one Attachment in the same position in a package, then they must upload every attachment with the same |
Delete Attachments | /attachments/{id}/remove | DELETE |
|
|
POST | Generate a PDF of the form from HTML | Use this method for generating a PDF of a form using data submitted in a Submit event. Documentation here ETI.Domain.Classes.PDF.HTMLData { EditablePDF (boolean, optional), IncludeCoverPage (boolean, optional), UNID (string, optional), QFEVersion (string, optional), CustomerID (integer, optional), Fields (Array[ETI.Domain.Classes.PDF.FieldGroup], optional), NativeESign (boolean, optional), NativeESignatures(Array[ETI.Domain.Classes.PDF.NativeESignature], optional), SignAllDocsCombined (boolean, optional), SignMultipleDocs (boolean, optional), CustomFields (ETI.Domain.Classes.PDF.CustomField, optional), ForSign (boolean, optional) }ETI.Domain.Classes.PDF.FieldGroup { FormID (integer, optional), FormInstance (integer, optional), Order (integer, optional), HTMLFields(Array[ETI.Domain.Classes.PDF.HTMLField], optional) }ETI.Domain.Classes.PDF.NativeESignature { FieldName (string, optional), SignURL (string, optional), Width (number, optional), Height (number, optional), GeoLocation (string, optional), SignDate (string, optional), NewSignature (boolean, optional) }ETI.Domain.Classes.PDF.CustomField { MetaData(Array[ETI.Domain.Classes.PDF.CustomFieldMetaData], optional), Fields (Array[ETI.Domain.Classes.PDF.HTMLField], optional) }ETI.Domain.Classes.PDF.HTMLField { Name (string, optional), Value (string, optional) }ETI.Domain.Classes.PDF.CustomFieldMetaData { Name (string, optional), Left (number, optional), Top (number, optional), Width (number, optional), Height (number, optional), Page (integer, optional), RelPage (integer, optional), Value (string, optional), FormID (string, optional) } | ||
FormLinks | INTERNAL QUIK! USE ONLY | |||
Save | INTERNAL QUIK! USE ONLY |
For help regarding Quik! Forms and the Quik! API
Email: support@quikforms.com | Phone: (877) 456-QUIK