The signable client provides a simple Ruby interface to the Signable API.
Add this line to your application's Gemfile:
gem 'signable'
And then execute:
$ bundle
Or install it yourself as:
$ gem install signable
Signable.configure do |config|
config.base_url = ENV.fetch('SIGNABLE_BASE_URL')
config.api_key = ENV.fetch('SIGNABLE_API_KEY')
end
Signable::Template.find 'fingerprint'
Signable::Document.new(template_fingerprint: fingerprint, title: title)
A document may also contain merge_fields (see signable documentation)
Signable::Party.new(id: id, name: 'name', email: 'email')
Party id can be retrieved from the template
envelope = Signable::Envelope.new title: 'title', redirect_url: 'https://www.autoenrolment.co.uk'
envelope.documents = documents
envelope.parties = parties
envelope.save
Test suite is RSpec and uses VCR to test API calls.
The VCR cassettes are included in this repository so you can run the specs without hitting the Signable API like so:
bundle exec rspec
If you need to re-record the interactions between the Ruby code and the Signable API, you can specify an API key for the tests to use like so:
SIGNABLE_API_KEY='valid_signable_api_key' bundle exec rspec
If you have an invalid or missing API, you will see an error like the following:
Authentication failed. Either the API Key or password was blank.
NOTE:
- The VCR recordings have an expiry time, so you may be forced to re-record them even if you have made no changes
- The test suite is destructive so please only use a test Signable account. The account requires one Template resource in order for the test suite to run.
To obtain a valid Signable API key, log into your Signable account and navigate to Company Settings โ Api & Webhooks and click "Add API Key" to generate a key. We recommend you delete the key when finished with it.
- Fork it ( http://github.com//signable/fork )
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request