All notable changes to this project will be documented in this file.
[0.10.0] - 2026-07-14
Added
Boldsign.FormField— typed builders for coordinate-placed signer form fields (signature/2,initial/2,date_signed/2,text_box/2,checkbox/2, plusbuild/3). These emit BoldSign'stypekey (notfieldType) — a field object sent withfieldTypeis silently ignored and defaults to a signature field, so a date field renders as a second signature, a checkbox as a signature, and so on, with no error. Bounds accept a%{x:, y:, width:, height:}map or an{x, y, width, height}tuple, in 96-DPI px from the page top-left.
Notes
- Documented on
Boldsign.TextTagthat definition-based text tags ondocument/send(useTextTags: true+textTagDefinitions) did not persist a document in live testing — the API returns201with adocumentId, but the document 403s on read, is absent fromdocument/list, and consumes no API credit. PreferBoldsign.FormFieldcoordinate placement fordocument/send.
[0.9.0] - 2026-07-13
Added
Boldsign.TextTag— typed builders for BoldSign text-tag form-field definitions:signature/2,initial/2,date_signed/2,text_box/2,checkbox/2, plusbuild/3as an escape hatch for any fieldtype. Callers get the correct BoldSign type strings ("Signature","DateSigned", ...) and sensible default sizes instead of hand-writing thetextTagDefinitionspayload. Place a{{definition_id}}placeholder in the document, pass the built definitions astextTagDefinitionswithuseTextTags: true, and BoldSign replaces the placeholder with the typed field.
[0.8.1] - 2026-07-03
Fixed
Boldsign.WebhookPlugnow acknowledges BoldSign's endpoint-verification ping (X-BoldSign-Event: Verification) with200 OKbefore signature validation. The ping is sent before any webhook signing secret exists, so it can never carry a valid signature; previously the plug rejected it with 401 and BoldSign's dashboard "Verify" button always failed.
[0.8.0] - 2026-06-30
Changed
- Bumped the package version to
0.8.0. - Replaced Bypass-backed tests with a small Bandit-backed local test server.
- Multipart uploads now use raw request bodies to avoid creating atoms from dynamic BoldSign form field names.
Fixed
- Empty multipart list fields now encode as
"[]"instead of being omitted. - Multipart field names and filenames now percent-escape
", CR, and LF in content disposition headers. - Webhook signature parsing now handles BoldSign headers with a space after the comma, such as
t=TIMESTAMP, s0=SIGNATURE.
Tests
- Added regression coverage for empty list multipart encoding, raw multipart request encoding, multipart content disposition escaping, and spaced webhook signature headers.
[0.7.0] - 2026-06-28
Added
- OAuth bearer token support via
Boldsign.new(access_token: ...). - New
Boldsign.Contact,Boldsign.ContactGroup,Boldsign.CustomField, andBoldsign.Planmodules. - Additional document endpoints for attachments, audit logs, tags, recipient authentication, recipient changes, expiry updates, prefill updates, team/behalf lists, and draft sending.
- Additional template endpoints for tags, embedded request/create/edit URLs, and embedded merge request URLs.
Boldsign.User.update_metadata/2.
Changed
- Bumped the package version to
0.7.0. - Refreshed the README and LiveBook embedded signing example for the current API surface, current regional endpoints, API-key or OAuth auth, and hosted-PDF usage.
- Expanded request handling so document and template operations can automatically switch between JSON and multipart payloads where the official BoldSign API allows file uploads.
- Updated the default regional base URLs to match the current official BoldSign endpoints, including CA and AU regions.
Fixed
- Added compatibility with
req0.6 by converting multipart form-part names to atoms at the request boundary while preserving the exact BoldSign wire field names. - Corrected several HTTP verb and query-parameter mismatches in existing document, template, team, user, and identity verification wrappers.
- Aligned identity verification requests with the current official API contract.
Tests
- Added extensive local HTTP server coverage across client auth, documents, templates, contacts, contact groups, custom fields, users, teams, identity verification, plan APIs, and multipart encoding.
- Added multipart regression coverage for Req-compatible atom part names, including bracketed/dotted BoldSign field names.
[0.5.2] - 2026-04-12
Fixed
- Send document requests now stay on JSON by default and only switch to multipart when
filesare actually present. - Multipart form encoding now follows the official BoldSign SDK pattern for file uploads plus JSON-encoded complex fields such as
signersandtextTagDefinitions.
[0.5.0] - 2026-04-10
Added
- Initial release with support for BoldSign REST API.
Boldsignmodule for client configuration.Boldsign.Documentfor document management (send, create, list, download, etc.).Boldsign.Templatefor template-based operations.Boldsign.UserandBoldsign.Teamfor administrative operations.Boldsign.Brandfor brand management.Boldsign.SenderIdentityfor sender identity management.Boldsign.IdentityVerificationfor KYC/identity verification flows.Boldsign.Webhookwith signature verification.Boldsign.WebhookPlugandBoldsign.Webhook.Handlerfor easy Phoenix integration.Boldsign.Filehelper for multipart uploads.- Livebook example for embedded signing.