/// <summary>
        /// <see cref="http://www.securedsigning.com/documentation/developer/smarttag-api#adv3"/>
        /// </summary>
        /// <param name="documentReferences"></param>
        /// <param name="dueDate"></param>
        /// <param name="signers"></param>
        /// <param name="invitationEmailTemplateReference"></param>
        /// <returns></returns>
        public List<Document> sendSmartTagDocument(List<string> documentReferences, DateTime dueDate, SmartTagInvitee[] signers, string invitationEmailTemplateReference)
        {
            var result = _client.Post<List<Document>>(new SmartTagRequest
            {
                DocumentReferences = documentReferences,
                DueDate = dueDate.ToUniversalTime().ToString("o"),
                GMT = this.GMT,
                EmailTemplateReference = invitationEmailTemplateReference,
                Signers = signers.ToList()
            });

            return result;
        }
        /// <summary>
        /// <see cref="http://www.securedsigning.com/documentation/developer/smarttag-api#adv3"/>
        /// </summary>
        /// <param name="documentReferences"></param>
        /// <param name="dueDate"></param>
        /// <param name="signers"></param>
        /// <param name="embedded"></param>
        /// <param name="returnUrl"></param>
        /// <returns></returns>
        public List<Document> sendSmartTagDocument(List<string> documentReferences, DateTime dueDate, SmartTagInvitee[] signers, bool embedded, Uri returnUrl)
        {
            var result = _client.Post<List<Document>>(new SmartTagRequest
            {
                DocumentReferences = documentReferences,
                DueDate = dueDate.ToUniversalTime().ToString("o"),
                GMT = this.GMT,
                Embedded = embedded,
                ReturnUrl = returnUrl?.ToString(),
                Signers = signers.ToList()
            });

            return result;
        }