Signaturit Ruby SDK

This package is a wrapper for Signaturit Api. If you didn't read the documentation yet, maybe it's time to take a look here.

You can install the package through gem.

gem install signaturit-sdk

Configuration

Just import the Signaturit Client this way

require 'signaturit_client'

Then you can authenticate yourself using your AuthToken

client = SignaturitClient.new('TOKEN')

Remember, the default calls are made to our Sandbox server. If you want to do in production, just set the flag when you do the call.

client = SignaturitClient.new('TOKEN', true)

Examples

Signature request

Get all signature requests

Retrieve all data from your signature requests using different filters.

All signatures
response = client.get_signatures()
Getting the last 50 signatures
response = client.get_signatures(50)
Getting the following last 50 signatures
response = client.get_signatures(50, 50)
Getting only the finished signatures
response = client.get_signatures(100, 0, 3)
Getting the finished signatures created since July 20th of 2014
response = client.get_signatures(100, 0, 3, '2014-7-20')
Getting signatures with custom field "crm_id"
response = client.get_signatures(100, 0, nil, nil, :crm_id => 2445)

Count signature requests

Count your signature requests.

response = client.count_signatures()

Get signature request

Get a single signature request.

response = client.get_signature('SIGNATURE_ID')

Get signature documents

Get all documents from a signature request.

response = client.get_signature_documents('SIGNATURE_ID')

Get signature document

Get a single document from a signature request.

response = client.get_signature_document('SIGNATURE_ID','DOCUMENT_ID')

Signature request

Create a new signature request. Check all params.

recipients =  ['[email protected]']
params = {:subject: 'Receipt number 250', :body: 'Please, can you sign this document?'}
file_path = '/documents/contracts/125932_important.pdf'
response = client.create_signature_request(file_path, recipients, params)

You can add custom info in your requests

recipients =  ['[email protected]']
params = {:subject =>  'Receipt number 250', :body => 'Please, can you sign this document?', :data => {:crm_id => 2445}}
file_path = '/documents/contracts/125932_important.pdf'
response = client.create_signature_request(file_path, recipients, params)

Cancel signature request

Cancel a signature request.

response = client.cancel_signature_request('SIGNATURE_ID');

Send reminder

Send a reminder for signature request job.

response = client.send_reminder('SIGNATURE_ID', 'DOCUMENT_ID');

Get audit trail

Get the audit trail of a signature request document and save it in the submitted path.

response = client.get_audit_trail('ID', 'DOCUMENT_ID', '/path/doc.pdf')

Get signed document

Get the signed document of a signature request document and save it in the submitted path.

response = client.get_signed_document('ID', 'DOCUMENT_ID', '/path/doc.pdf')

Account

Get account

Retrieve the information of your account.

response = client.()

Set document storage

Set your own storage credentials, to store a copy of the documents. You can get all the info of credential types here.

credentials = {
    :user: 'john',
    :port: 22,
    :dir: '/test',
    :host: 'john.doe.server',
    :password: 'XXX',
    :auth_method: 'PASS'
}
response = client.set_document_storage('sftp', credentials)

Revert to default document storage

If you ever want to store your files in Signaturit's servers just run this method:

client.revert_to_default_document_storage()

Branding

Get brandings

Get all account brandings.

response = client.get_brandings()

Get branding

Get a single branding.

response = client.get_branding('BRANDING_ID')

Create branding

Create a new branding. You can check all branding params here.`

params = {
    :corporate_layout_color: '#FFBF00',
    :corporate_text_color: '#2A1B0A',
    :application_texts: { :sign_button: 'Sign!' }
}
response = client.create_branding(params)

Update branding

Update a single branding.

params = { :application_texts: { :send_button: 'Send!' } }
response = client.update_branding('BRANDING_ID', params)

Change the branding logo.

file_path = '/path/new_logo.png'
response = client.('BRANDING_ID', file_path)

Update branding template

Change a template. Learn more about the templates here.

file_path = '/path/new_template.html'
response = client.update_branding_template('BRANDING_ID', 'sign_request', file_path)

Template

Get all templates

Retrieve all data from your templates.

response = client.get_templates()