Alpha Software Mobile Development Tools:   Alpha Anywhere    |   Alpha TransForm subscribe to our YouTube Channel  Follow Us on LinkedIn  Follow Us on Twitter  Follow Us on Facebook

Announcement

Collapse

The Alpha Software Forum Participation Guidelines

The Alpha Software Forum is a free forum created for Alpha Software Developer Community to ask for help, exchange ideas, and share solutions. Alpha Software strives to create an environment where all members of the community can feel safe to participate. In order to ensure the Alpha Software Forum is a place where all feel welcome, forum participants are expected to behave as follows:
  • Be professional in your conduct
  • Be kind to others
  • Be constructive when giving feedback
  • Be open to new ideas and suggestions
  • Stay on topic


Be sure all comments and threads you post are respectful. Posts that contain any of the following content will be considered a violation of your agreement as a member of the Alpha Software Forum Community and will be moderated:
  • Spam.
  • Vulgar language.
  • Quotes from private conversations without permission, including pricing and other sales related discussions.
  • Personal attacks, insults, or subtle put-downs.
  • Harassment, bullying, threatening, mocking, shaming, or deriding anyone.
  • Sexist, racist, homophobic, transphobic, ableist, or otherwise discriminatory jokes and language.
  • Sexually explicit or violent material, links, or language.
  • Pirated, hacked, or copyright-infringing material.
  • Encouraging of others to engage in the above behaviors.


If a thread or post is found to contain any of the content outlined above, a moderator may choose to take one of the following actions:
  • Remove the Post or Thread - the content is removed from the forum.
  • Place the User in Moderation - all posts and new threads must be approved by a moderator before they are posted.
  • Temporarily Ban the User - user is banned from forum for a period of time.
  • Permanently Ban the User - user is permanently banned from the forum.


Moderators may also rename posts and threads if they are too generic or do not property reflect the content.

Moderators may move threads if they have been posted in the incorrect forum.

Threads/Posts questioning specific moderator decisions or actions (such as "why was a user banned?") are not allowed and will be removed.

The owners of Alpha Software Corporation (Forum Owner) reserve the right to remove, edit, move, or close any thread for any reason; or ban any forum member without notice, reason, or explanation.

Community members are encouraged to click the "Report Post" icon in the lower left of a given post if they feel the post is in violation of the rules. This will alert the Moderators to take a look.

Alpha Software Corporation may amend the guidelines from time to time and may also vary the procedures it sets out where appropriate in a particular case. Your agreement to comply with the guidelines will be deemed agreement to any changes to it.



Bonus TIPS for Successful Posting

Try a Search First
It is highly recommended that a Search be done on your topic before posting, as many questions have been answered in prior posts. As with any search engine, the shorter the search term, the more "hits" will be returned, but the more specific the search term is, the greater the relevance of those "hits". Searching for "table" might well return every message on the board while "tablesum" would greatly restrict the number of messages returned.

When you do post
First, make sure you are posting your question in the correct forum. For example, if you post an issue regarding Desktop applications on the Mobile & Browser Applications board , not only will your question not be seen by the appropriate audience, it may also be removed or relocated.

The more detail you provide about your problem or question, the more likely someone is to understand your request and be able to help. A sample database with a minimum of records (and its support files, zipped together) will make it much easier to diagnose issues with your application. Screen shots of error messages are especially helpful.

When explaining how to reproduce your problem, please be as detailed as possible. Describe every step, click-by-click and keypress-by-keypress. Otherwise when others try to duplicate your problem, they may do something slightly different and end up with different results.

A note about attachments
You may only attach one file to each message. Attachment file size is limited to 2MB. If you need to include several files, you may do so by zipping them into a single archive.

If you forgot to attach your files to your post, please do NOT create a new thread. Instead, reply to your original message and attach the file there.

When attaching screen shots, it is best to attach an image file (.BMP, .JPG, .GIF, .PNG, etc.) or a zip file of several images, as opposed to a Word document containing the screen shots. Because Word documents are prone to viruses, many message board users will not open your Word file, therefore limiting their ability to help you.

Similarly, if you are uploading a zipped archive, you should simply create a .ZIP file and not a self-extracting .EXE as many users will not run your EXE file.
See more
See less

Docusign

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Docusign

    Does anyone have experience integrating a web application (v11 or 12) with Docusign's Open API?

    #2
    Re: Docusign

    Have you read their API instructions and help details?
    See our Hybrid Option here;
    https://hybridapps.example-software.com/


    Apologies to anyone I haven't managed to upset yet.
    You are held in a queue and I will get to you soon.

    Comment


      #3
      Re: Docusign

      Hi Ted - I printed them out this morning and slowly going through them. There is definitely ample documentation. I was just curious what the experience has been (if any) of the Alpha community.

      Comment


        #4
        Re: Docusign

        Looks like you are the trail blazer!
        Buckskin suit and a bum full of arrows then!
        See our Hybrid Option here;
        https://hybridapps.example-software.com/


        Apologies to anyone I haven't managed to upset yet.
        You are held in a queue and I will get to you soon.

        Comment


          #5
          Re: Docusign

          Scott,

          Did you manage to make any progress with this? I need docusign integration as well. Please let me know!

          Comment


            #6
            Re: Docusign

            Originally posted by coleresources View Post
            Scott,

            Did you manage to make any progress with this? I need docusign integration as well. Please let me know!
            Not yet, but I recently resurrected this and have gotten closer. I plan on working on this a good deal over the nex next few weeks and will post an update. I may also record a video if I make a major breakthrough!

            Comment


              #7
              Re: Docusign

              Scott,

              If you have a use case and code you want to share and collaborate on I will gladly work with you and share any breakthrough's I have. I need this asap. We might be able to knock it out quicker working it from two angles. Were you able to find documentation for xbasic that gave you a start in alpha? If you could share any documentation that'd be awesome!

              Comment


                #8
                Re: Docusign

                Hi Josh -

                Sorry - been traveling for the last day and a half. I think collaborating on this one is a great idea. The most helpful documentation I've found to date is a demo on an example REST API integrating with SalesForce. If you do a search using these keywords, you should be able to find this.

                Comment


                  #9
                  Re: Docusign

                  Hi Josh,

                  Were you able to get this to work? I've bee struggling with the following JS code which would request a signature on a DocuSign document. (I tried executing via a script in HTML as well as via on on click event on a button in a dialog component... no luck with either.) The problem for me may very well be in the "Install async and request packages", as I have no idea what that means or what I need to do.

                  // Request Signature on a Document (Node.js)

                  // To run this sample
                  // 1. Copy the file to your local machine and give .js extension (i.e. example.js)
                  // 2. Change "***" to appropriate values
                  // 3. Install async and request packages
                  // npm install async
                  // npm install request
                  // npm install fs
                  // 4. execute
                  // node example.js
                  //

                  var async = require("async"), // async module
                  request = require("request"), // request module
                  fs = require("fs"); // fs module

                  var email = "***", // your account email
                  password = "***", // your account password
                  integratorKey = "***", // your Integrator Key (found on the Preferences -> API page)
                  recipientName = "***", // recipient (signer) name
                  documentName = "***", // copy document with this name into same directory!
                  baseUrl = ""; // we will retrieve this through the Login call

                  async.waterfall(
                  [
                  /////////////////////////////////////////////////////////////////////////////////////
                  // Step 1: Login (used to retrieve your accountId and baseUrl)
                  /////////////////////////////////////////////////////////////////////////////////////
                  function(next) {
                  var url = "https://demo.docusign.net/restapi/v2/login_information";
                  var body = ""; // no request body for login api call

                  // set request url, method, body, and headers
                  var options = initializeRequest(url, "GET", body, email, password);

                  // send the request...
                  request(options, function(err, res, body) {
                  if(!parseResponseBody(err, res, body)) {
                  return;
                  }
                  baseUrl = JSON.parse(body).loginAccounts[0].baseUrl;
                  next(null); // call next function
                  });
                  },

                  /////////////////////////////////////////////////////////////////////////////////////
                  // Step 2: Request Signature on a PDF Document
                  /////////////////////////////////////////////////////////////////////////////////////
                  function(next) {
                  var url = baseUrl + "/envelopes";
                  // following request body will place 1 signature tab 100 pixels to the right and
                  // 100 pixels down from the top left of the document that you send in the request
                  var body = {
                  "recipients": {
                  "signers": [{
                  "email": email,
                  "name": recipientName,
                  "recipientId": 1,
                  "tabs": {
                  "signHereTabs": [{
                  "xPosition": "100",
                  "yPosition": "100",
                  "documentId": "1",
                  "pageNumber": "1"
                  }]
                  }
                  }]
                  },
                  "emailSubject": 'DocuSign API - Signature Request on Document Call',
                  "documents": [{
                  "name": documentName,
                  "documentId": 1,
                  }],
                  "status": "sent",
                  };

                  // set request url, method, body, and headers
                  var options = initializeRequest(url, "POST", body, email, password);

                  // change default Content-Type header from "application/json" to "multipart/form-data"
                  options.headers["Content-Type"] = "multipart/form-data";

                  // configure a multipart http request with JSON body and document bytes
                  options.multipart = [{
                  "Content-Type": "application/json",
                  "Content-Disposition": "form-data",
                  "body": JSON.stringify(body),
                  }, {
                  "Content-Type": "application/pdf",
                  'Content-Disposition': 'file; filename="' + documentName + '"; documentId=1',
                  "body": fs.readFileSync(documentName),
                  }
                  ];

                  // send the request...
                  request(options, function(err, res, body) {
                  parseResponseBody(err, res, body);
                  });
                  } // end function
                  ]);

                  //***********************************************************************************************
                  // --- HELPER FUNCTIONS ---
                  //***********************************************************************************************
                  function initializeRequest(url, method, body, email, password) {
                  var options = {
                  "method": method,
                  "uri": url,
                  "body": body,
                  "headers": {}
                  };
                  addRequestHeaders(options, email, password);
                  return options;
                  }

                  ///////////////////////////////////////////////////////////////////////////////////////////////
                  function addRequestHeaders(options, email, password) {
                  // JSON formatted authentication header (XML format allowed as well)
                  dsAuthHeader = JSON.stringify({
                  "Username": email,
                  "Password": password,
                  "IntegratorKey": integratorKey // global
                  });
                  // DocuSign authorization header
                  options.headers["X-DocuSign-Authentication"] = dsAuthHeader;
                  }

                  ///////////////////////////////////////////////////////////////////////////////////////////////
                  function parseResponseBody(err, res, body) {
                  console.log("\r\nAPI Call Result: \r\n", JSON.parse(body));
                  if( res.statusCode != 200 && res.statusCode != 201) { // success statuses
                  console.log("Error calling webservice, status is: ", res.statusCode);
                  console.log("\r\n", err);
                  return false;
                  }
                  return true;
                  }

                  Comment


                    #10
                    Re: Docusign

                    I have made some progress but not with xbasic. I have been working on .net wrappers that I am integrating into my AA apps and have one for my docusign requirement. I've spent enough time working in C# for this that I might be able to take a stab at it with xbasic. Give me until Friday and I'll post back with my results. I am also happy to provide assistance if you want to consider a .net wrapper for this. I am pretty excited about the way I've been leveraging .NET assemblies in my AA apps.

                    Comment


                      #11
                      Re: Docusign

                      Originally posted by coleresources View Post
                      I have made some progress but not with xbasic. I have been working on .net wrappers that I am integrating into my AA apps and have one for my docusign requirement. I've spent enough time working in C# for this that I might be able to take a stab at it with xbasic. Give me until Friday and I'll post back with my results. I am also happy to provide assistance if you want to consider a .net wrapper for this. I am pretty excited about the way I've been leveraging .NET assemblies in my AA apps.
                      PMFJI, but I am struggling with the same general problem, but in my case I would like to interact with Intuit's REST API for QuickBooks online. I already have an application listed on their Apps.Com that utilizes C# (via an SDK they provide) but I'd LIKE to convert this to AA. Problem is I find that in trying to create wrappers around OAuth and other DLLs AA's support is just off (e.g. Date and CoClass support). I will keep poking, perhaps this latest version surreptitiously improved DotNet interfacing, and will watch this thread.

                      Comment

                      Working...
                      X