Last updated 2017-08-15 13:46:13 UTC

Code Sample in C#

The ListParameters operation makes it possible to provide a menu or list of Template parameters which are needed for a document submission operation on a given Template ID. In this way, it will not be necessary to have knowledge of the AssureSign Template parameters in order to launch a document submission operation. The ListParameters operation will return a list of parameters (and prompt information that was defined in the creation of the Template) which are needed to be submitted to the document submission operation. It is also possible to enter information into a Tag field when creating parameters for integration purposes from within the AssureSign administrative application; the value of the Tag on a particular parameter will be returned and could possibly be used to create a mapping from a field in a CRM or custom client application to the Template parameter value to be passed in the document submission operation.

The ListParameters operation requires knowledge of the following:

  • the AssureSign account ContextIdentifier (this is exposed in the AssureSign administrative application account settings and serves to provide some security to the transaction)
  • the UserName of the AssureSign user that will be the owner of the document within AssureSign
  • the Template ID of the Template to query

Sample XML

<?xml version="1.0" encoding="utf-8"?> 
<ListParameters xmlns=""> 
    <ParameterListQuery ContextIdentifier="06C4A84A-693C-46CB-8DF2-40A8215AA056" UserName="" TemplateId="DCB79445-4D39-DD11-8735-00065B8CE99B" /> 

The SOAP Action header is

The result returned will include a detailed list of items that should be populated and returned in the Submit operation:

<?xml version="1.0" encoding="utf-8"?> 
<ListParametersResponse xmlns=""> 
    <ParameterListQueryResult TemplateId="DCB79445-4D39-DD11-8735-00065B8CE99B">
            <TypedParameterItem Name="Parameter 1" Prompt="Please enter the full name of the customer" Tag="Parameter1Tag" Required="true" DefaultValue="Default Value" Regex="^([a-zA-Z'-]+\s+){1,4}[a-zA-z'-]+$" ValidationMessage="The name you entered does not appear to be in a valid form" SystemName="Signatory 1 Full Name" /> 
            <TypedParameterItem Name="Parameter 2" Prompt="Write your own prompt in the AssureSign template designer for Parameter 2" Tag="Parameter2Tag" Required="false" /> 

The ParameterListQueryResult should be checked for the presence of an Exceptions element, which may contain multiple ParameterListException items.

TypedParameterItem Attibutes

TypedParameterItem elements may contain the following attributes:

  • Name – the name must be used explicitly in any submit operations.
  • Prompt – the Prompt is set when a parameter is created on a template in the AssureSign administration system, and is meant to provide a mechanism for pre-configuring prompts for user input.
  • Tag – the Tag is an optional value set when a parameter is created on a template in the AssureSign administration system, and may be used for any purpose needed to fulfill some development requirement.
  • Required – when “true”, the parameter must be populated on a Submit operation.
  • DefaultValue – the DefaultValue Prompt is set when a parameter is created on a template in the AssureSign administration system, and is meant to be used to pre-populate a data entry location on your user interface.
  • Regex – the Regex is a Regular Expression that you insert into the AssureSign administration system when creating the template parameter. You may execute a standard regular expression check in whatever language you have written your code, and optionally display the ValidationMessage on a failure. Additionally, when the account setting “Enforce Typed Parameter Validation” is set to “Yes”, then it should be understood that this Regex expression will be used for server-side validation on Submit operations
  • ValidationMessage – the ValidationMessage is meant to be displayed on failures that occur from regular expression checks on input against the Regex attribute value.
  • SystemName – the SystemName attribute is only provided for parameters used for signatory/workflow definition and provides a unique system-defined identifier for the parameter. This identifier can be used in Submit operations in place of the user-defined parameter name. ListSignatories