Skip to content

Releases: hookdeck/outpost

v1.0.4

29 May 18:03
34bd2a8

Choose a tag to compare

Features

  • Mobile-responsive portal layout — sidebar overlays on narrow viewports, tables scroll horizontally, and scenes reflow for tablet/phone widths by @lovlyx in #915
  • Cleaned up OTel logs to only include audit lines, eliminating operator-diagnostic noise from the customer-visible sink by @alexluong in #913

Fixes

  • Fixed a portal load race where the destinations list could blank out when /destinations resolved before /destination-types by @alexluong in #914
  • Spec corrections: added the missing DestinationUpdate type discriminator so partial PATCH bodies are typeable, restored event.data on listAttempts with include=event.data, and dropped the Speakeasy pagination overlay (TS list endpoints return flat XPaginatedResult again instead of PageIterator) by @alexluong and @leggetter in #924

Performance

  • Enabled LZ4 client compression on ClickHouse inserts, cutting insert wall-clock by ~65% and wire bytes by ~10× on event-shaped payloads by @alexluong in #911

Updates

  • Added spec-sdk-tests CI workflow that runs the contract suite against a locally-built Outpost so spec/server drift is caught at PR time by @leggetter in #925
  • Added a companion CI workflow that runs the PR's SDK against the latest released Outpost image, closing the gap on bot-generated SDK regen PRs by @leggetter in #927

New Contributors

Full Changelog: v1.0.3...v1.0.4

typescript - sdks/outpost-typescript/v1.4.0 - 2026-05-29 19:00:39

29 May 19:00
08c270a

Choose a tag to compare

Generated by Speakeasy CLI

@hookdeck/outpost-sdk 1.4.0

Typescript SDK Changes:

  • outpost.destinations.update(): request.body Changed (Breaking ⚠️)

Generated with Speakeasy CLI 1.768.2

Publishing Completed

python - sdks/outpost-python/v1.4.0 - 2026-05-29 18:50:43

29 May 18:50
71849b9

Choose a tag to compare

Generated by Speakeasy CLI

outpost_sdk 1.4.0

Python SDK Changes:

  • outpost.destinations.update(): request.body Changed (Breaking ⚠️)

Generated with Speakeasy CLI 1.768.2

Publishing Completed

go - sdks/outpost-go/v1.4.0 - 2026-05-29 18:37:30

29 May 18:37
8124138

Choose a tag to compare

Generated by Speakeasy CLI

github.com/hookdeck/outpost/sdks/outpost-go 1.4.0

Go SDK Changes:

  • Outpost.Destinations.Update(): request.Body Changed (Breaking ⚠️)

Generated with Speakeasy CLI 1.763.0

v1.0.3

13 May 17:53
2aa4cec

Choose a tag to compare

Features

  • Enable/disable destinations directly through Create and Update endpoints via the disabled_at field, plus importable created_at/updated_at timestamps so migrations can preserve original source-system timestamps by @alexluong in #895
  • Proxy-aware error handling for webhook deliveries through a forward proxy: proxy infrastructure failures (auth, dial) now nack instead of burning the destination's retry budget, and proxy-reported upstream errors are translated into accurate destination error codes (dns_error, connection_refused, timeout, etc.). Envoy-specific response headers/bodies are stripped on the plain-HTTP path; HTTPS deliveries remain byte-transparent by @alexluong in #899
  • Node identifier added to every log line (derived from os.Hostname()) so multi-node deployments are traceable from logs alone — surfaces pod name on Kubernetes, container/task ID on Docker/ECS by @mvanhorn in #894

Fixes

  • Consumer error tolerance increased from ~3s to ~1min (10 errors, 15s backoff cap) so brief infra blips like OAuth token timeouts or managed broker restarts no longer permanently kill logmq / deliverymq workers by @alexluong in #900
  • Automated database migrations in the examples/docker-compose/ setup via a new migrate service — api, log, and delivery now wait for migrations to finish before booting, removing the manual migration step for local example runs by @distroaryan in #898
  • Corrected misleading desc tags on AttemptPrefix, DestinationPrefix, and EventPrefix config fields — prefixes are used as-is, not prepended with an underscore by @alexluong in #896

New Contributors

Full Changelog: v1.0.2...v1.0.3

typescript - sdks/outpost-typescript/v1.3.0 - 2026-05-13 18:14:46

13 May 18:14
d875c66

Choose a tag to compare

Generated by Speakeasy CLI

@hookdeck/outpost-sdk 1.3.0

Typescript SDK Changes:

  • outpost.destinations.create(): request.body Changed
  • outpost.destinations.update(): request.body Changed

Generated with Speakeasy CLI 1.763.0

Publishing Completed

python - sdks/outpost-python/v1.3.0 - 2026-05-13 18:06:20

13 May 18:06
2406263

Choose a tag to compare

Generated by Speakeasy CLI

outpost_sdk 1.3.0

Python SDK Changes:

  • outpost.destinations.create(): request.body Changed
  • outpost.destinations.update(): request.body Changed

Generated with Speakeasy CLI 1.763.0

Publishing Completed

go - sdks/outpost-go/v1.3.0 - 2026-05-13 17:59:58

13 May 18:00
d4b3fcc

Choose a tag to compare

Generated by Speakeasy CLI

github.com/hookdeck/outpost/sdks/outpost-go 1.3.0

Go SDK Changes:

  • Outpost.Destinations.Create(): request.Body Changed
  • Outpost.Destinations.Update(): request.Body Changed

Generated with Speakeasy CLI 1.763.0

typescript - sdks/outpost-typescript/v1.2.0 - 2026-05-01 17:57:42

01 May 17:57
b0e749e

Choose a tag to compare

Generated by Speakeasy CLI

@hookdeck/outpost-sdk 1.2.0

Typescript SDK Changes:

  • outpost.publish(): Added
  • outpost.retry(): Added
  • outpost.publish.event(): Removed (Breaking ⚠️)
  • outpost.retry.retry(): Removed (Breaking ⚠️)

Generated with Speakeasy CLI 1.761.10

Publishing Completed

typescript - sdks/outpost-typescript/v1.1.0 - 2026-05-01 15:52:48

01 May 15:52
48fe03c

Choose a tag to compare

Generated by Speakeasy CLI

@hookdeck/outpost-sdk 1.1.0

Typescript SDK Changes:

  • outpost.destinations.create():
    • request.body.union(kafka) Added
    • response.union(kafka) Added (Breaking ⚠️)
  • outpost.destinations.disable(): response.union(kafka) Added (Breaking ⚠️)
  • outpost.events.list(): request Changed (Breaking ⚠️)
  • outpost.attempts.list():
    • request Changed (Breaking ⚠️)
    • response.models[].destination.union(kafka) Added (Breaking ⚠️)
  • outpost.attempts.get(): response.destination.union(kafka) Added (Breaking ⚠️)
  • outpost.destinations.list(): response.[].union(kafka) Added (Breaking ⚠️)
  • outpost.metrics.getAttemptMetrics(): request Changed (Breaking ⚠️)
  • outpost.destinations.update():
    • request.body.union(DestinationUpdateKafka) Added
    • response.union(Destination).union(kafka) Added (Breaking ⚠️)
  • outpost.metrics.getEventMetrics(): request Changed (Breaking ⚠️)
  • outpost.destinations.enable(): response.union(kafka) Added (Breaking ⚠️)
  • outpost.destinations.get(): response.union(kafka) Added (Breaking ⚠️)
  • outpost.destinations.listAttempts():
    • request Changed (Breaking ⚠️)
    • response.models[].destination.union(kafka) Added (Breaking ⚠️)
  • outpost.destinations.getAttempt(): response.destination.union(kafka) Added (Breaking ⚠️)
  • outpost.retry.retry(): Added
  • outpost.attempts.retry(): Removed (Breaking ⚠️)

Generated with Speakeasy CLI 1.761.10

Publishing Completed