{"id":13878640,"url":"https://github.com/williamkennedy/sign_well","last_synced_at":"2025-07-16T14:32:35.801Z","repository":{"id":56895613,"uuid":"464954036","full_name":"williamkennedy/sign_well","owner":"williamkennedy","description":"A Ruby wrapper around the SignWell Api. ","archived":false,"fork":false,"pushed_at":"2024-07-04T13:56:44.000Z","size":125,"stargazers_count":6,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-11-19T23:49:40.309Z","etag":null,"topics":["docusign","docusign-api","hacktoberfest","ruby","signwell"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/williamkennedy.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null}},"created_at":"2022-03-01T15:40:54.000Z","updated_at":"2024-07-04T13:56:34.000Z","dependencies_parsed_at":"2023-02-08T14:16:35.564Z","dependency_job_id":null,"html_url":"https://github.com/williamkennedy/sign_well","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/williamkennedy%2Fsign_well","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/williamkennedy%2Fsign_well/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/williamkennedy%2Fsign_well/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/williamkennedy%2Fsign_well/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/williamkennedy","download_url":"https://codeload.github.com/williamkennedy/sign_well/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226138849,"owners_count":17579496,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docusign","docusign-api","hacktoberfest","ruby","signwell"],"created_at":"2024-08-06T08:01:55.477Z","updated_at":"2024-11-24T07:31:11.512Z","avatar_url":"https://github.com/williamkennedy.png","language":"Ruby","funding_links":[],"categories":["Ruby"],"sub_categories":[],"readme":"# SignWell\n\n## Support\n\nIf you would like to support this project and haven't signed up to Signwell yet, please consider using this [referral link](https://www.signwell.com/?via=william-gh).  \n\nThis gem has been battle tested at [Low](https://low.ie), the best place in Ireland to go for life insurance. We use Signwell to process large 25 page templates. This gem helps creates 1000's of documents a month. \n\n## Installation\n\nAdd this line to your application's Gemfile:\n\n```bash\nbundle add sign_well\n```\n\nAnd then execute:\n\n    $ bundle install\n\nOr install it yourself as:\n\n    $ gem install sign_well\n\n## Usage\n\nEvery request returns a `SignWell::Response` object. You can call `body` or `to_object` on this to get either the json body or a Ruby object.\n\n\n### Setup\n\nYou will `Ruby 2.7` or greater. \n\nYou will need an `x_api_key` from SignWell to start. After that, you simply initialize the client.\n\n```\nclient = SignWell::Client.new(x_api_key: ENV['X_API_KEY'])\n\n```\n\n## [Get Document](https://developers.signwell.com/reference/get_api-v1-document)\n\n```\nresponse = client.document('docment_id')\nresponse.body =\u003e Hash of the JSON.body\nresponse.to_object =\u003e  OpenStruct \n```\n\n## [Create Document](https://developers.signwell.com/reference/post_api-v1-documents)\n\n```\nresponse = client.create_document(test_mode: true, files: [{name: 'test', file_url: 'exmpaledoc.com'}], recipients: [{id: 1, email: 'william@test.com'}])\nresponse.body =\u003e Hash of the JSON.body\nresponse.to_object =\u003e  OpenStruct \n```\n\n## [Create Document from Template](https://developers.signwell.com/reference/post_api-v1-document-templates-documents)\n\n```\nresponse = client.create_document_from_template(test_mode: true, template_id: 'template_id',  recipients: [{id: 1, email: 'test@test.com', placeholder_name: 'Customer', name: 'Customer'}, {id: 2, email: 'sender@sent.com',name: 'William',  placeholder_name: 'Document Sender'}], template_fields: [{api_id: 'TextField_1', value: 'hello'}, {api_id: 'CheckBox_1', value: true}\n])\nresponse.body =\u003e Hash of the JSON.body\nresponse.to_object =\u003e  OpenStruct \n```\n\n## [Update and Send Document](https://developers.signwell.com/reference/post_api-v1-documents-id-send)\n\n```\nresponse = client.update_and_send_document(document_id, test_mode: true, embedded_signing: true)\nresponse.body =\u003e Hash of the JSON.body\nresponse.to_object =\u003e  OpenStruct \n```\n\n## [Send Reminder]( https://developers.signwell.com/reference/post_api-v1-documents-id-remind)\n\n```\nresponse = client.remind_document(document_id, test_mode: true, embedded_signing: true)\nresponse.body =\u003e Hash of the JSON.body\nresponse.to_object =\u003e  OpenStruct \n```\n\n## [Delete Document](https://developers.signwell.com/reference/delete_api-v1-documents-id--1)\n\n```\nresponse = client.delete_document(document_id)\n```\n\n## [Completed PDF](https://developers.signwell.com/reference/get_api-v1-documents-id-completed-pdf-1)\n\n```\nresponse = client.completed_pdf(document_id, test_mode: true, url_only: true)\nresponse.body =\u003e Hash of the JSON.body\nresponse.to_object =\u003e  OpenStruct \n```\n\n\n## [Get Template](https://developers.signwell.com/reference/get_api-v1-template)\n\n```\nresponse = client.template(tempate_id)\nresponse.body =\u003e Hash of the JSON.body\nresponse.to_object =\u003e  OpenStruct \n```\n\n## [Create Template](https://developers.signwell.com/reference/post_api-v1-template)\n\n```\nbody = {test_mode: true, \"files\"=\u003e[{\"name\"=\u003e\"string.pdf\", \"file_url\"=\u003e\"https://file-examples-com.github.io/uploads/2017/10/file-sample_150kB.pdf\"}],\n  \"placeholders\"=\u003e[{\"id\"=\u003e\"string\", \"name\"=\u003e\"string\"}],\n  \"draft\"=\u003efalse,\n  \"reminders\"=\u003etrue,\n  \"apply_signing_order\"=\u003efalse,\n  \"text_tags\"=\u003efalse,\n  \"allow_decline\"=\u003etrue,\n  \"fields\"=\u003e[[{\"required\"=\u003etrue, \"fixed_width\"=\u003efalse, \"lock_sign_date\"=\u003efalse, \"date_format\"=\u003e\"MM/DD/YYYY\", \"x\"=\u003e0, \"y\"=\u003e0, \"page\"=\u003e0, \"placeholder_id\"=\u003e\"string\", \"type\"=\u003e\"date\", \"api_id\"=\u003e\"string\"}]],\n  \"attachment_requests\"=\u003e[{\"required\"=\u003etrue, \"name\"=\u003e\"string\", \"placeholder_id\"=\u003e\"string\"}],\n  \"name\"=\u003e\"string\",\n  \"subject\"=\u003e\"string\",\n  \"message\"=\u003e\"string\",\n  \"expires_in\"=\u003e0}\n\nresponse = client.create_template(body)\nresponse.body =\u003e Hash of the JSON.body\nresponse.to_object =\u003e  OpenStruct \n```\n\n## [Delete Template](https://developers.signwell.com/reference/delete_api-v1-document-templates-id--1)\n\n```\nclient.delete_template(id)\n```\n\n## [Get API Application](https://developers.signwell.com/reference/get_api-v1-api-applications-id--1)\n\n```\nresponse = client.api_application(id)\nresponse.body =\u003e Hash of the JSON.body\nresponse.to_object =\u003e  OpenStruct \n```\n\n## [Delete API Application](https://developers.signwell.com/reference/delete_api-v1-api-applications-id--1)\n\n```\nclient.delete_api_application(id)\n```\n\n## [List Webhooks](https://developers.signwell.com/reference/get_api-v1-hooks-1)\n\n```\nresponse = client.list_web_hooks\nresponse.body =\u003e Hash of the JSON.body\nresponse.to_object =\u003e  OpenStruct \n```\n\n## [Create Webhooks](https://developers.signwell.com/reference/post_api-v1-hooks-1)\n\n```\nresponse = client.create_web_hook(test_mode: true, callback_url: 'https://test.com')\nresponse.body =\u003e Hash of the JSON.body\nresponse.to_object =\u003e  OpenStruct \n```\n\n## [Delete Webhook](https://developers.signwell.com/reference/delete_api-v1-hooks-id)\n\n```\nclient.delete_web_hook(id)\n```\n\n## [Get Credentials](https://developers.signwell.com/reference/get_api-v1-me-1)\n\n```\nclient.me\n```\n\n\n## Other requests\n\nIf you can't find the method you're looking, you can call HTTP methods on the `client.connection` which is a Faraday object\n\n  ```\nclient.connection.get(path)\n  ```\n\n\n## Development\n\n  After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.\n\n  To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org).\n\n## Contributing\n\n  Bug reports and pull requests are welcome on GitHub at https://github.com/williamkennedy/sign_well. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/williamkennedy/sign_well/blob/main/CODE_OF_CONDUCT.md).\n\n\n\n## License\n\n  The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).\n\n## Code of Conduct\n\n  Everyone interacting in the SignWell project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/williamkennedy/sign_well/blob/main/CODE_OF_CONDUCT.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwilliamkennedy%2Fsign_well","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwilliamkennedy%2Fsign_well","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwilliamkennedy%2Fsign_well/lists"}