Giter VIP home page Giter VIP logo

adobesigncsharpsdk's Introduction

Adobe Sign C# SDK

Table of contents

OverView

Adobe Sign SDK aims at providing an easy way to integrate the Adobe Sign RESTful web service into client applications through easy to consume client side objects wrapping the REST API functionality. This repository contains Adobe Sign’s SDK (CSharp) and samples for these APIs.

This C# SDK is automatically generated by the Swagger Codegen project:

  • API version: 6.0.0
  • SDK version: 1.0.0
  • Build package: io.swagger.codegen.languages.CSharpClientCodegen

Frameworks supported

  • .NET 4.0 or later
  • Windows Phone 7.1 (Mango)

Third Party Dependencies

The DLLs included in the package may not be the latest version. We recommend using [NuGet] (https://docs.nuget.org/consume/installing-nuget) to obtain the latest version of the packages:

Install-Package RestSharp
Install-Package Newtonsoft.Json
Install-Package JsonSubTypes

NOTE: RestSharp versions greater than 105.1.0 have a bug which causes file uploads to fail. See RestSharp#742

Installation

Run the following command to generate the DLL

  • [Mac/Linux] /bin/sh build.sh
  • [Windows] build.bat

The IO.Swagger.dll will be generated at <AdobeSignCSharpSDK>/bin.

Then include the DLL (under the bin folder) in the C# project, and use the namespaces:

using IO.Swagger.Api;
using IO.Swagger.Client;
using IO.Swagger.model.agreements;

Packaging

A .nuspec is included with the project. You can follow the Nuget quickstart to create and publish packages.

This .nuspec uses placeholders from the .csproj, so build the .csproj directly:

nuget pack -Build -OutputDirectory out IO.Swagger.csproj

Then, publish to a local feed or other host and consume the new package via Nuget as usual.

Getting Started

using System;
using System.Diagnostics;
using IO.Swagger.Api;
using IO.Swagger.Client;
using IO.Swagger.model.agreements;

namespace Example
{
    public class Example
    {
        public void main()
        {

            var apiInstance = new AgreementsApi();
            var authorization = authorization_example;  // string | An OAuth Access Token with scopes: 'agreement_write' in the format 'Bearer {accessToken}'.
            var ifMatch = ifMatch_example;  // string | The server will only update the resource if it matches the listed ETag otherwise error RESOURCE_MODIFIED(412) is returned.
            var agreementId = agreementId_example;  // string | The agreement identifier, as returned by the agreement creation API or retrieved from the API to fetch agreements.
            var formFieldPostInfo = new FormFieldPostInfo(); // FormFieldPostInfo | List of form fields to add or replace
            var xApiUser = xApiUser_example;  // string | The userId or email of API caller using the account or group token in the format <b>userid:{userId} OR email:{email}.</b> If it is not specified, then the caller is inferred from the token. (optional) 
            var xOnBehalfOfUser = xOnBehalfOfUser_example;  // string | The userId or email in the format <b>userid:{userId} OR email:{email}.</b> of the user that has shared his/her account (optional) 

            try
            {
                // Adds template fields to an agreement
                AgreementFormFields result = apiInstance.AddTemplateFieldsToAgreement(authorization, ifMatch, agreementId, formFieldPostInfo, xApiUser, xOnBehalfOfUser);
                Debug.WriteLine(result);
            }
            catch (Exception e)
            {
                Debug.Print("Exception when calling AgreementsApi.AddTemplateFieldsToAgreement: " + e.Message );
            }

        }
    }
}

Documentation for API Endpoints

All URIs are relative to https://api.echosign.com/api/rest/v6

Class Method HTTP request Description
AgreementsApi AddTemplateFieldsToAgreement POST /agreements/{agreementId}/formFields Adds template fields to an agreement
AgreementsApi CreateAgreement POST /agreements Creates an agreement. Sends it out for signatures, and returns the agreementID in the response to the client.
AgreementsApi CreateAgreementView POST /agreements/{agreementId}/views Retrieves the latest state view url of agreement.
AgreementsApi CreateDelegatedParticipantSets POST /agreements/{agreementId}/members/participantSets/{participantSetId}/delegatedParticipantSets Creates a participantSet to which the agreement is forwarded for taking appropriate action.
AgreementsApi CreateReminderOnParticipant POST /agreements/{agreementId}/reminders Creates a reminder on the specified participants of an agreement identified by agreementId in the path.
AgreementsApi CreateShareOnAgreement POST /agreements/{agreementId}/members/share Share an agreement with someone.
AgreementsApi DeleteDocuments DELETE /agreements/{agreementId}/documents Deletes all the documents of an agreement.
AgreementsApi GetAgreementInfo GET /agreements/{agreementId} Retrieves the current status of an agreement.
AgreementsApi GetAgreementNoteForApiUser GET /agreements/{agreementId}/me/note Retrieves the latest note associated with an agreement.
AgreementsApi GetAgreementReminder GET /agreements/{agreementId}/reminders/{reminderId} Retrieves a specific reminder associated with an agreement
AgreementsApi GetAgreementReminders GET /agreements/{agreementId}/reminders Retrieves the reminders of an agreement, identified by agreementId in the path.
AgreementsApi GetAgreementSecurityOptionsForParticipation GET /agreements/{agreementId}/members/participantSets/{participantSetId}/participants/{participantId}/securityOptions Retrieves the security options for a particular participant.
AgreementsApi GetAgreements GET /agreements Retrieves agreements for the user.
AgreementsApi GetAllDocuments GET /agreements/{agreementId}/documents Retrieves the IDs of the documents of an agreement identified by agreementId.
AgreementsApi GetAllDocumentsImageUrls GET /agreements/{agreementId}/documents/imageUrls Retrieves image urls of all visible pages of all the documents associated with an agreement.
AgreementsApi GetAllMembers GET /agreements/{agreementId}/members Retrieves information of members of the agreement.
AgreementsApi GetAuditTrail GET /agreements/{agreementId}/auditTrail Retrieves the audit trail of an agreement identified by agreementId.
AgreementsApi GetCombinedDocument GET /agreements/{agreementId}/combinedDocument Retrieves a single combined PDF document for the documents associated with an agreement.
AgreementsApi GetCombinedDocumentPagesInfo GET /agreements/{agreementId}/combinedDocument/pagesInfo Retrieves info of all pages of a combined PDF document for the documents associated with an agreement.
AgreementsApi GetCombinedDocumentUrl GET /agreements/{agreementId}/combinedDocument/url Retrieves url of all visible pages of all the documents associated with an agreement.
AgreementsApi GetDocument GET /agreements/{agreementId}/documents/{documentId} Retrieves the file stream of a document of an agreement.
AgreementsApi GetDocumentImageUrls GET /agreements/{agreementId}/documents/{documentId}/imageUrls Retrieves image urls of all visible pages of a document associated with an agreement.
AgreementsApi GetEvents GET /agreements/{agreementId}/events Retrieves the events information for an agreement.
AgreementsApi GetFormData GET /agreements/{agreementId}/formData Retrieves data entered into the interactive form fields of the agreement.
AgreementsApi GetFormFields GET /agreements/{agreementId}/formFields Retrieves details of form fields of an agreement.
AgreementsApi GetMergeInfo GET /agreements/{agreementId}/formFields/mergeInfo Retrieves the merge info stored with an agreement.
AgreementsApi GetParticipantSet GET /agreements/{agreementId}/members/participantSets/{participantSetId} Retrieves the participant set of an agreement identified by agreementId in the path.
AgreementsApi GetSigningUrl GET /agreements/{agreementId}/signingUrls Retrieves the URL for the e-sign page for the current signer(s) of an agreement.
AgreementsApi RejectAgreementForParticipation PUT /agreements/{agreementId}/members/participantSets/{participantSetId}/participants/{participantId}/reject Rejects the agreement for a participant.
AgreementsApi UpdateAgreement PUT /agreements/{agreementId} Updates the agreement in draft state, or update the expirationTime on an existing agreement that is already out for signature.
AgreementsApi UpdateAgreementMergeInfo PUT /agreements/{agreementId}/formFields/mergeInfo Set the merge info for an agreement.
AgreementsApi UpdateAgreementNoteForApiUser PUT /agreements/{agreementId}/me/note Updates the latest note associated with an agreement.
AgreementsApi UpdateAgreementReminder PUT /agreements/{agreementId}/reminders/{reminderId} Updates an existing reminder for an agreement
AgreementsApi UpdateAgreementSecurityOptionsForParticipation PUT /agreements/{agreementId}/members/participantSets/{participantSetId}/participants/{participantId}/securityOptions Updates the security options for a particular participant.
AgreementsApi UpdateAgreementState PUT /agreements/{agreementId}/state Updates the state of an agreement identified by agreementId in the path.
AgreementsApi UpdateAgreementVisibility PUT /agreements/{agreementId}/me/visibility Updates the visibility of an agreement.
AgreementsApi UpdateFormFields PUT /agreements/{agreementId}/formFields Updates form fields of an agreement. This will replace all fields in AUTHORING mode agreements, and will replace all fields except for text tag generated fields in DRAFT mode agreements.
AgreementsApi UpdateParticipantSet PUT /agreements/{agreementId}/members/participantSets/{participantSetId} Updates the participant set of an agreement identified by agreementId in the path.

Documentation for Models

Notes

  1. All endpoints do not require authorization.
  2. Date formats can be changed in SwaggerDateConverter.cs.
      namespace IO.Swagger.Client
      {
          /// <summary>
          /// Formatter for 'date' swagger formats ss defined by full-date - RFC3339
          /// see https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#data-types
          /// </summary>
          public class SwaggerDateConverter : IsoDateTimeConverter
          {
              /// <summary>
              /// Initializes a new instance of the <see cref="SwaggerDateConverter" /> class.
              /// </summary>
              public SwaggerDateConverter()
              {
                  // full-date   = date-fullyear "-" date-month "-" date-mday
                  DateTimeFormat = "yyyy-MM-ddTHH:mm:ssZ";
              }
          }
      }
  1. The enum names in CSharp SDK have missing underscores e.g. OUT_FOR_SIGNATURE will be OUTFORSIGNATURE.

Contributing

Contributions are welcomed! Read the Contributing Guide for more information.

Licensing

This project is licensed under the Apache V2 License. See LICENSE for more information.

Recommendation

It's recommended to create an instance of ApiClient per thread and per user (with baseUris fetched for user) in a multithreaded environment to avoid any potential issues.

Report Issues/Bugs

You can report the issues in the issues section of the github repo.

adobesigncsharpsdk's People

Contributors

adobesignsdk avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.