Skip to content

Release: Wrike reminders and voiding, TurboSign webhook and SDK doc fixes - #252

Merged
nicolasiscoding merged 6 commits into
mainfrom
develop
Oct 23, 2026
Merged

nicolasiscoding merged 6 commits into
mainfrom
develop

Conversation

@nicolasiscoding

Copy link
Copy Markdown
Member

Release develop to main.

These document v1.134.0 and earlier, already in production.

🤖 Generated with Claude Code

…n't be created' (#214) (#219)

Every recipient's access token exists from document creation; for passcode and
no-verification signers the signing URL is that reusable token link. TurboSign
refuses to issue it out of turn (409 RecipientNotInTurn) and refuses an
out-of-turn signature even with a valid link.

Co-authored-by: Yacine Kahlerras <kahlerasse@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…otInTurn (#217)

* docs(turbosign): drop NotSignersTurn, the API only returns RecipientNotInTurn (#213)

The embedded-signing pages listed a 409 NotSignersTurn that createSigningUrl never
returns: the only turn refusal is RecipientNotInTurn. Remove it from the error
tables and prose, and retry only RecipientNotInTurn in the six code samples.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* docs(turbosign): drop NotSignersTurn from the send and update error codes too (#213)

The API never returns NotSignersTurn; its only turn refusal is
RecipientNotInTurn. This was the last mention left in the docs.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Yacine Kahlerras <kahlerasse@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Amit Sharma <amit.sharma@turbodocx.com>
…ed (#215) (#218)

With no verification on a recipient and an org that verifies only when requested,
TurboSign still issues a reusable signing link. Reword the two spots that said every
embedded signer needs a method, add a caution, and link to the identity-verification
warning that already says so.

Co-authored-by: Yacine Kahlerras <kahlerasse@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…etries, HTTPS and URL limit (#227)

* docs(turbosign): fix webhook verification samples, idempotency key, retries, HTTPS and URL limit (#211)

- Rewrite the SDK verification samples against the real SDK signatures: JS
  passed one object (rejects every delivery), Python imported a non-existent
  turbodocx module with wrong keyword names, Go had the wrong argument order and
  didn't compile, and .NET used an API no SDK provides. Tabs are now JS, Python,
  PHP, Go, Java and Ruby.
- Dedupe on the payload's event_id: X-TurboDocx-Delivery-Id is new on every
  attempt, so it can't catch retries.
- 3 attempts in total (2 retries), with the real 1 min / 5 min backoff.
- Webhook URLs must be HTTPS even for testing; up to 10 URLs, not 5.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* docs(turbosign): Ruby gem caveat, header-case tip, no-redirect note (review of #227)

- The Ruby tab now carries the same note the embedded-signing guides use: the
  turbodocx-sdk gem is not on RubyGems yet, install it from the SDK repo (the Ruby
  SDK pages are still hidden drafts, so no link to them).
- Troubleshooting said header names must be lowercase; they are case-insensitive
  and the Go/Java samples use canonical case.
- Delivery behavior: redirects (3xx) are not followed and count as a failure.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* docs(turbosign): runnable Go sample, real Delivery Object, replay/event_id note, UI and alt-text fixes (review of #227)

- Go sample is now a complete program (func main + log import): it built with
  go vet but not go build when copied verbatim.
- Delivery Object matches the API response (no webhookId; adds responseBody,
  nextRetryAt, errorMessage, status) and explains the status values.
- A manual replay keeps the same event_id; say so next to the dedupe advice.
- Point to the SDK's testWebhook for sending a sample event.
- "Webhooks" is a left-menu item in E-Signature Settings, not a tab.
- regenerateWebhookSecret, not rotateSecret.
- Real alt text on three images that all said "Get It Signed button".
- Ruby caveat uses the same :::note admonition as the embedded-signing guide.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* docs(turbosign): API objects match responses, test-event caveat, delivery-id vs id, UI wording (4th review of #227)

- Step 3 heading and an alt text still said "Webhooks tab"; it's a left-menu item.
- testWebhook payloads are sample data (placeholder ids, evt_test_ event_id, a few
  differing fields) and the call blocks for all retries (~6 min) if the endpoint
  fails; say so.
- X-TurboDocx-Delivery-Id is not the delivery id the API/Delivery History uses
  (replay takes the UUID id).
- Webhook and Delivery Objects match the API: UUID ids, isActive / isDelivered
  returned as 1/0, plus metadata, createdBy and deliveryStats; availableEvents noted.
- Delivery History: timestamps are per delivery, and any delivery can be replayed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* docs(sdks): bring the Ruby SDK back in the tabbed SDK docs (TurboDocx/SDK#45)

The turbodocx-sdk gem is on RubyGems (0.9.0), so the Ruby pages hidden in
July come back, in the current design: one tabbed page per product plus a
setup page per language, the same way the other five languages were merged.

- turbosign, deliverable, quote, webhooks: a Ruby tab (after Java) in every
  language tab group, from the old Ruby pages, with shared text kept outside
  the tabs. Ruby-only sections (file upload by path or IO, Rails and Sinatra
  examples) get their own Ruby group.
- Ruby text brought up to date with what the other languages got while it
  was hidden: conditional field metadata, the error-handling rewrite (one
  canonical error reference on the TurboSign page), the reminder/expiration
  and fileName request keys, and the wording fixes. Every Ruby call checked
  against the 0.9.0 gem.
- ruby.md is now a setup page like python.md, listed under Install &
  configure. partner-ruby.md is unlisted like its siblings.
- deliverable-ruby, quote-ruby and webhooks-ruby are folded into the tabs and
  301 to ?language=ruby; old /docs/SDKs/ruby#section links hop to the
  TurboSign page.
- Ruby rows and tabs on the SDKs overview; "not on RubyGems yet" notes
  removed.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

* docs(sdks): link the Ruby TurboQuote runnable examples (TurboDocx/SDK#45)

The JavaScript and Java tabs link their SDK's runnable quote examples; the Ruby
SDK ships the same three (basic lifecycle, products, price books).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Yacine Kahlerras <kahlerasse@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Amit Sharma <amit.sharma@turbodocx.com>
… add send-without-emails section (#229)

* docs(sdks): fix stale Java pin, PHP $_ENV config, readonly claim, JS .env; add send-without-emails section

- java.md: 0.7.0 -> 0.8.0 (Maven, Gradle Kotlin, Gradle Groovy).
- PHP snippets on php, turbosign, deliverable, webhooks, partner-php, quote and index
  pages: $_ENV[...] -> getenv(...). $_ENV is empty under the default
  variables_order = "GPCS".
- "readonly classes" is a PHP 8.2 feature; the SDK needs ^8.1 and uses readonly
  properties. Typed Classes section: Field::$required is ?bool = null (null = required),
  and Recipient lists phone / externalId / identityVerification.
- javascript.md .env adds TURBODOCX_SENDER_EMAIL (required) and TURBODOCX_SENDER_NAME.
- turbosign.md: new "Send without emails and sign in your app" section (sendEmail
  false + createSigningUrl) for JS, Python, PHP, Go and Java, with the Enable identity
  verification prerequisite.

Closes #220

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* docs(sdks): review fixes - all Java pins 0.8.0, reusable-link wording, getenv ?: null

- Bump the remaining 0.7.0 Java pins (turbosign, index, deliverable, quote, webhooks,
  partner-java). The new Java tab needs 0.8.0 (sendEmail / createSigningUrl).
- The signing URL in the new section is the reusable signing link for passcode /
  no-verification signers; only external_idv / override URLs are single-use.
- TurboSign page JS .env adds TURBODOCX_SENDER_EMAIL / TURBODOCX_SENDER_NAME.
- getenv(...) ?: null for nullable config args, so an unset variable is null (not
  false) under declare(strict_types=1).
- "readonly properties" on the deliverable and partner-php pages too.
- Webhook PHP verification sample: getenv('WEBHOOK_SECRET') instead of $_ENV.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* docs(sdks): round-2 review fixes - getenv ?: '' for string params, PHP tab import

- TurboWebhooks::configureFromCredentials() and PartnerClientConfig take non-nullable
  strings: `?: null` turned an unset variable into a TypeError. Use `?: ''`, which
  gives the SDK's clear AuthenticationException (matches fromEnvironment()). Same for
  the webhook receiver's secret, so an unset secret fails closed (401) instead of a
  TypeError (500) under strict_types.
- The new PHP tab now imports TurboDocx\TurboSign like every other PHP tab.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

* docs(sdks): match the 0.9.0 SDKs and add the Ruby tab to send-without-emails (#220)

- Java pins 0.8.0 -> 0.9.0 (the published version since 2026-10-20) on every
  SDK page.
- Send without emails: a Ruby tab; say the opt-out also covers the initial CC
  email, later signers' turn emails and scheduled reminders; recipients is
  always present on the JS response in 0.9.0, so no non-null assertion.
- PHP Typed Classes: Recipient's signingOrder is optional when the recipient
  has a role, and role is new in 0.9.0.
- Go webhook verification: 0.9.0 treats ToleranceSeconds 0 as the 300s default
  and rejects every delivery on a negative value; -1 no longer disables the
  timestamp check.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Yacine Kahlerras <kahlerasse@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Amit Sharma <amit.sharma@turbodocx.com>
#251)

* docs(wrike): document reminder status, void on re-send and void status for e-signature automations

Adds a Reminders, Re-sends and Voiding section to the Wrike e-signature
automation guide with annotated screenshots, and notes the domain rule
behind bulk 'Invalid Email' failures.

* docs(wrike): recapture screenshots with generic workflow names

---------

Co-authored-by: Nicolas Fry <nicolas@turbodocx.com>
@nicolasiscoding
nicolasiscoding merged commit b9c3a52 into main Oct 23, 2026
1 check passed

This branch was successfully deployed

1 active deployment
preview — 37310401 Deployed Oct 23, 2026 by github-actions[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants