Skip to content

Commit ac288ae

Browse files
committed
Update to version 4.3.0 on 2026-10-31
- New: get_template_model_code takes `rust` as its `lang`, for Rust structs that serde reads and writes. - New: Word templates (`template_type` `docx`). create_template makes one from a Word document (.docx, up to 50 MB) that you upload and pass as a `cache_id`, or pass as a `document_url` or `document_base64`; upload_template takes the file itself. update_template_document and upload_template_document replace its document the same ways. Each tag in the document, such as `{{ customer.name }}`, becomes a field. Each of them takes an OpenDocument text file (.odt) too, which DocSpring converts to a Word document. - New: a Word template's `output_format`, what its submissions make unless they set `output_formats`: `docx` (a Word document), `odt` (an OpenDocument file) or `pdf`. create_template and upload_template require it, and update_template changes it. A Word template that encrypts its PDFs makes PDFs, because Word documents and OpenDocument files can't be password-protected. - New: the `docx` and `odt` output formats, a Word template's filled-in Word document (`files.docx`) and OpenDocument file (`files.odt`, converted from the Word document). Add them to `output_formats` in create_submission or create_submission_batch to get more than one file, such as the Word document and the PDF. - generate_submission_files takes `pdf`, the PDF of a Word template's submission that didn't make one (converted from its Word document), `docx`, the Word document of one that made only its PDF (made again from its data and the template version it used), and `odt`, its OpenDocument file. None of them uses credits again. Until the new file is ready, its `state` in `files` is `pending`, and when it couldn't be made, its `error_message` says why. - A Word template's `document` is its Word document: `document.permanent_url` downloads it. Its `state` is `processed` once it's uploaded or downloaded (`downloading` or `download_failed` while a `document_url` downloads, `converting` or `conversion_failed` while an OpenDocument file is converted), and get_template_diff's `document_changed` says whether it was edited. - get_template_page_images returns a 409 for a Word template, whose pages are only laid out when a document is made. - create_template_preview previews Word templates too: images of the pages of the PDF that the template's Word document makes with your data. A DocSpring server that can't convert Word documents to PDF returns a 409.
1 parent 5428c70 commit ac288ae

360 files changed

Lines changed: 904 additions & 681 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.travis.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,4 @@ script:
88
- bundle install --path vendor/bundle
99
- bundle exec rspec
1010
- gem build docspring.gemspec
11-
- gem install ./docspring-4.2.0.gem
11+
- gem install ./docspring-4.3.0.gem

‎AGENTS.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -90,5 +90,5 @@ keeps it.
9090

9191
- List methods return `data` and `next_cursor`: pass `next_cursor` as `cursor` to get the next page.
9292
- Responses can be newer than this SDK, because DocSpring adds fields and enum values to API v2 without a new
93-
version. The model leaves out a response field added to the API after this release. Enum values in responses are strings, so a
94-
value added after this release comes back as it is: handle values you don't recognize.
93+
version. The model leaves out a response field added to the API after this release. An enum value added after this release comes
94+
back as the API sent it: handle values you don't recognize.

‎CHANGELOG.md‎

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,30 @@
1+
### 4.3.0 [October 31, 2026]
2+
3+
- New: get_template_model_code takes `rust` as its `lang`, for Rust structs that serde reads and writes.
4+
- New: Word templates (`template_type` `docx`). create_template makes one from a Word document (.docx, up to 50 MB)
5+
that you upload and pass as a `cache_id`, or pass as a `document_url` or `document_base64`; upload_template takes the
6+
file itself. update_template_document and upload_template_document replace its document the same ways. Each tag in
7+
the document, such as `{{ customer.name }}`, becomes a field. Each of them takes an OpenDocument text file (.odt)
8+
too, which DocSpring converts to a Word document.
9+
- New: a Word template's `output_format`, what its submissions make unless they set `output_formats`: `docx` (a Word
10+
document), `odt` (an OpenDocument file) or `pdf`. create_template and upload_template require it, and
11+
update_template changes it. A Word template that encrypts its PDFs makes PDFs, because Word documents and
12+
OpenDocument files can't be password-protected.
13+
- New: the `docx` and `odt` output formats, a Word template's filled-in Word document (`files.docx`) and OpenDocument
14+
file (`files.odt`, converted from the Word document). Add them to `output_formats` in create_submission or
15+
create_submission_batch to get more than one file, such as the Word document and the PDF.
16+
- generate_submission_files takes `pdf`, the PDF of a Word template's submission that didn't make one (converted from
17+
its Word document), `docx`, the Word document of one that made only its PDF (made again from its data and the
18+
template version it used), and `odt`, its OpenDocument file. None of them uses credits again. Until the new file is
19+
ready, its `state` in `files` is `pending`, and when it couldn't be made, its `error_message` says why.
20+
- A Word template's `document` is its Word document: `document.permanent_url` downloads it. Its `state` is `processed`
21+
once it's uploaded or downloaded (`downloading` or `download_failed` while a `document_url` downloads, `converting`
22+
or `conversion_failed` while an OpenDocument file is converted), and get_template_diff's `document_changed` says
23+
whether it was edited.
24+
- get_template_page_images returns a 409 for a Word template, whose pages are only laid out when a document is made.
25+
- create_template_preview previews Word templates too: images of the pages of the PDF that the template's Word
26+
document makes with your data. A DocSpring server that can't convert Word documents to PDF returns a 409.
27+
128
### 4.2.0 [October 29, 2026]
229

330
- **BREAKING CHANGE**: list_templates returns a shorter `TemplateSummary`: a template's name, description, type, folder

‎Gemfile.lock‎

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
PATH
22
remote: .
33
specs:
4-
docspring (4.2.0)
4+
docspring (4.3.0)
55
logger
66
typhoeus (~> 1.0, >= 1.0.1)
77

@@ -100,11 +100,12 @@ DEPENDENCIES
100100

101101
CHECKSUMS
102102
ast (2.4.3) sha256=954615157c1d6a382bc27d690d973195e79db7f55e9765ac7c481c60bdb4d383
103+
bundler (4.0.23) sha256=407ba8a1d928f412847f819aa5f8b6aef7c59fb51feb517112af8a165487287b
103104
byebug (13.0.0) sha256=d2263efe751941ca520fa29744b71972d39cbc41839496706f5d9b22e92ae05d
104105
coderay (1.1.3) sha256=dc530018a4684512f8f38143cd2a096c9f02a1fc2459edcfe534787a7fc77d4b
105106
date (3.6.0) sha256=18ac945c4e24ebd93534f8eab8c2fd8c5604b3e977105b3798d62a1e8d27b580
106107
diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962
107-
docspring (4.2.0)
108+
docspring (4.3.0)
108109
ethon (0.19.1) sha256=f309dec67cfdefaf96b3d1ee0ed4f186eac518f131340f607bb3df3b4e13ddc4
109110
ffi (1.17.4) sha256=bcd1642e06f0d16fc9e09ac6d49c3a7298b9789bcb58127302f934e437d60acf
110111
ffi (1.17.4-aarch64-linux-gnu) sha256=b208f06f91ffd8f5e1193da3cae3d2ccfc27fc36fba577baf698d26d91c080df
@@ -142,4 +143,4 @@ CHECKSUMS
142143
unicode-display_width (1.5.0) sha256=9890eebd24feb4cb0e0542c9b8c6beecb40cda27be8c7afe49312625b36156eb
143144

144145
BUNDLED WITH
145-
4.0.20
146+
4.0.23

‎README.md‎

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,16 @@
11
# DocSpring Ruby SDK
22

33
The official Ruby client for the [DocSpring API](https://docspring.com/docs/api/). DocSpring fills PDF
4-
templates with your data, generates PDFs from HTML templates, combines PDFs and collects e-signatures.
4+
forms with your data, generates PDFs and Word documents from HTML and Word templates, combines PDFs and collects
5+
e-signatures.
56

67
[Documentation](https://docspring.com/docs/) · [API reference](https://docspring.com/docs/api/) ·
78
[RubyGems](https://rubygems.org/gems/docspring) · [Changelog](https://github.com/DocSpring/docspring-ruby/blob/main/CHANGELOG.md)
89

910
The code in this repository is generated from DocSpring's OpenAPI spec ([About this SDK](#about-this-sdk)). Issues and
1011
pull requests are welcome.
1112

12-
Version 4.2.0. Requires Ruby >= 2.7.
13+
Version 4.3.0. Requires Ruby >= 2.7.
1314

1415
## Install and configure
1516

@@ -138,11 +139,11 @@ Ruby code for every method.
138139
| [`test_authentication`](https://github.com/DocSpring/docspring-ruby/blob/main/docs/Client.md#test_authentication) | Test authentication |
139140
| [`update_signature_request`](https://github.com/DocSpring/docspring-ruby/blob/main/docs/Client.md#update_signature_request) | Update a signature request |
140141
| [`update_template`](https://github.com/DocSpring/docspring-ruby/blob/main/docs/Client.md#update_template) | Update a template |
141-
| [`update_template_document`](https://github.com/DocSpring/docspring-ruby/blob/main/docs/Client.md#update_template_document) | Replace a template's PDF |
142+
| [`update_template_document`](https://github.com/DocSpring/docspring-ruby/blob/main/docs/Client.md#update_template_document) | Replace a template's document |
142143
| [`update_template_fields`](https://github.com/DocSpring/docspring-ruby/blob/main/docs/Client.md#update_template_fields) | Update a template's fields |
143144
| [`update_webhook`](https://github.com/DocSpring/docspring-ruby/blob/main/docs/Client.md#update_webhook) | Update a webhook |
144-
| [`upload_template`](https://github.com/DocSpring/docspring-ruby/blob/main/docs/Client.md#upload_template) | Create a PDF template from an uploaded PDF |
145-
| [`upload_template_document`](https://github.com/DocSpring/docspring-ruby/blob/main/docs/Client.md#upload_template_document) | Replace a template's PDF with an uploaded PDF |
145+
| [`upload_template`](https://github.com/DocSpring/docspring-ruby/blob/main/docs/Client.md#upload_template) | Create a template from an uploaded PDF or Word document |
146+
| [`upload_template_document`](https://github.com/DocSpring/docspring-ruby/blob/main/docs/Client.md#upload_template_document) | Replace a template's document with an uploaded file |
146147
| [`validate_submission`](https://github.com/DocSpring/docspring-ruby/blob/main/docs/Client.md#validate_submission) | Check a submission without creating it |
147148

148149
## Errors
@@ -160,7 +161,7 @@ existing code, such as removing or renaming a field, go in a new API version
160161
responses that are newer than it is:
161162

162163
- The model leaves out a response field added to the API after this release.
163-
- Enum values in responses are strings, so a value added to the API after this release comes back as it is: handle values you don't recognize.
164+
- An enum value added to the API after this release comes back as the API sent it: handle values you don't recognize.
164165

165166
Upgrade the SDK to read new fields and enum values. The [changelog](https://github.com/DocSpring/docspring-ruby/blob/main/CHANGELOG.md) lists
166167
what each release adds.

0 commit comments

Comments
 (0)