Releases: hookdeck/outpost
v0.7.0
Fixes
Features
- Add GCP Pub/Sub destination type by @alexluong in #464
- Support webhook delivery through proxy by @alexluong in #513
- Add
deployment_id
support for multi-deployment by @alexluong in #512
Updates
- SDK API spec tests by @leggetter in #518 & #521
- Docs: update event destination types and roadmap entries by @leggetter in #517
- Streamline Claude GitHub Actions workflow by @alexluong in #516
claude.md
review prompt by @alexluong in #522
Full Changelog: v0.6.1...v0.7.0
typescript - sdks/outpost-typescript/v0.5.0 - 2025-10-13 12:59:42
Generated by Speakeasy CLI
2025-10-13 12:59:42
Changes
Based on:
- OpenAPI Doc 0.0.1
- Speakeasy CLI 1.636.3 (2.723.11) https://github.com/speakeasy-api/speakeasy
Generated
- [typescript v0.5.0] sdks/outpost-typescript
Releases
- [NPM v0.5.0] https://www.npmjs.com/package/@hookdeck/outpost-sdk/v/0.5.0 - sdks/outpost-typescript
Publishing Completed
v0.6.1
Fixes
- Core: Sanitize go-migrate error messages to prevent credential exposure by @alexluong in #487
- Core: Add retry logic for migration lock errors by @alexluong in #508
Updates
- Core: Support timestamp-ms delivery metadata format by @alexluong in #507
- Docs: Fix broken links and create references page by @obazoud in #493
- Docs: Update reference page content by @leggetter in #506
- Examples: Add Dockerfile.example for custom builds by @obazoud & @alexluong in #505
Full Changelog: v0.6.0...v0.6.1
v0.6.0
Breaking Changes
Redis Schema Migration Required
Existing deployments must migrate Redis keys to hash-tagged format before upgrading to v0.6.0. This enables Redis Cluster support for horizontal scaling.
Schema Change
The Redis key structure has been updated to support Redis Cluster by adding hash tags:
OLD SCHEMA | NEW SCHEMA |
---|---|
tenant:123 |
tenant:{123}:tenant |
tenant:123:destinations |
tenant:{123}:destinations |
tenant:123:destination:abc |
tenant:{123}:destination:abc |
Why?
Redis Cluster distributes keys across nodes using hash slots. Without hash tags, related keys like tenant:123
and tenant:123:destinations
could be on different nodes, causing CROSSSLOT
errors during transactions. Hash tags {...}
ensure all tenant data maps to the same hash slot, enabling atomic multi-key operations.
outpost
binary behavior change
The outpost
binary is now a unified CLI that consolidates server and migration operations.
The binary interface has changed:
Before v0.6.0:
outpost # Start the server
v0.6.0 and later:
outpost serve # Start the server
outpost migrate # Run migrations
outpost --version
- Docker service users (e.g., docker-compose up) - No changes required. The container
still starts the server by default. - Docker CLI users (e.g., docker run hookdeck/outpost ...) - The entrypoint is now the
unified CLI, so commands change as shown above. - Binary users - Update scripts/commands to use outpost serve instead of outpost.
- NOTE: The
outpost
CLI orchestratesoutpost-server
and
outpost-migrate-redis
binaries. All three binaries must be in the same directory or
available in your $PATH for the CLI to function correctly.
- NOTE: The
Migration Steps
Option 1: Using environment variables
docker run --rm \\
-e REDIS_HOST=your-host \\
-e REDIS_PASSWORD=your-password \\
hookdeck/outpost:v0.6.0 migrate plan
Option 2: Using CLI flags
docker run --rm hookdeck/outpost:v0.6.0 migrate plan \\
--redis-host=your-host \\
--redis-password=your-password
Option 3: Using .env
file
docker run --rm --env-file .env hookdeck/outpost:v0.6.0 migrate plan
Then proceed with apply, verify, deploy, and cleanup:
docker run --rm -it hookdeck/outpost:v0.6.0 migrate apply [options]
docker run --rm hookdeck/outpost:v0.6.0 migrate verify [options]
# Deploy v0.6.0 and test thoroughly
docker run --rm -it hookdeck/outpost:v0.6.0 migrate cleanup [options]
📖 Full guide: Outpost Migration Guide
X-Outpost-Timestamp header and metadata timestamps now use Unix seconds
All timestamps now consistently use Unix seconds to align with the signature format. Applications parsing these timestamps will need to update their logic to expect seconds instead of milliseconds.
Features
- Core: Add Redis Cluster support with TLS and automatic node discovery (#465) by @leggetter
- Core: Add unified Outpost CLI with migration tool (
outpost migrate
) (#498) by @alexluong
Fixes
- Portal: Fix inline SVG icons inflating table row height (#501) by @leggetter
Full Changelog
v0.5.1
Fixes
- API: Add pagination support to event listings in OpenAPI documentation by @leggetter
in #474 - Core: Delivery timestamp metadata now in unix seconds by @alexluong in #495
- Portal: UI small fixes & enhancements by @alexluong in #497
- Tests: Update destination type count in e2e assertion by @alexluong in #496
Updates
- API: Log /api/v1/healthz requests at debug level instead of info to reduce noise by
@obazoud in #481 - Portal: Add outpost icon SVG to public images by @leggetter in #499
- Examples: Update outpost version in compose.yml to 0.5.0 by @github-actions in #473
New Contributors
Full Changelog: v0.5.0...v0.5.1
typescript - sdks/outpost-typescript/v0.4.0 - 2025-09-03 18:08:30
Generated by Speakeasy CLI
Typescript SDK Changes Detected:
outpost.events.list()
:request
Changedresponse
Changed Breaking⚠️
outpost.events.listByDestination()
:request
Changedresponse
Changed Breaking⚠️
outpost.destinations.list()
:request.type
Changedresponse.[].[awsS3]
Added
outpost.destinations.create()
:request.destinationCreate.[awsS3]
Addedresponse.[aws_s3]
Added
outpost.destinations.get()
:response.[aws_s3]
Addedoutpost.destinations.update()
:request.destinationUpdate.[destinationUpdateAwss3]
Addedresponse.[destination].[awsS3]
Added
outpost.destinations.enable()
:response.[aws_s3]
Addedoutpost.destinations.disable()
:response.[aws_s3]
Addedoutpost.schemas.get()
:request.type
Changed
outpost.schemas.getDestinationTypeJwt()
:request.type
Changed
Generated with Speakeasy CLI 1.609.0
Publishing Completed
python - sdks/outpost-python/v0.4.0 - 2025-09-03 17:57:45
Generated by Speakeasy CLI
2025-09-03 17:57:45
Changes
Based on:
- OpenAPI Doc 0.0.1
- Speakeasy CLI 1.609.0 (2.692.0) https://github.com/speakeasy-api/speakeasy
Generated
- [python v0.4.0] sdks/outpost-python
Releases
- [PyPI v0.4.0] https://pypi.org/project/outpost_sdk/0.4.0 - sdks/outpost-python
Publishing Completed
go - sdks/outpost-go/v0.4.0 - 2025-09-03 14:52:32
Generated by Speakeasy CLI
github.com/hookdeck/outpost/sdks/outpost-go 0.4.0
Go SDK Changes Detected:
Outpost.Events.List()
:request
Changed Breaking⚠️ response
Changed Breaking⚠️
Outpost.Events.ListByDestination()
:request
Changed Breaking⚠️ response
Changed Breaking⚠️
Outpost.Destinations.List()
:request.Type
Changedresponse.[].[awsS3]
Added
Outpost.Destinations.Create()
:request.DestinationCreate.[awsS3]
Addedresponse.[awsS3]
Added
Outpost.Destinations.Get()
:response.[awsS3]
AddedOutpost.Destinations.Update()
:request.DestinationUpdate.[destinationUpdateAwss3]
Addedresponse.[destination].[awsS3]
Added
Outpost.Destinations.Enable()
:response.[awsS3]
AddedOutpost.Destinations.Disable()
:response.[awsS3]
AddedOutpost.Schemas.Get()
:request.Type
ChangedOutpost.Schemas.GetDestinationTypeJwt()
:request.Type
Changed
Generated with Speakeasy CLI 1.608.0
v0.5.0
Features
- Core: Add S3 event destiniation type support by @eberle1080 and @alexluong in #456
- Examples: Dashboard integration demo by @leggetter in #468
- Docs: add Railway quickstart documentation and update navigation by @leggetter in #462
Updates
- Examples: Add health check example by @leggetter in #460
New Contributors
- @eberle1080 made their first contribution in #456
Full Changelog: v0.4.1...v0.5.0
v0.4.1
Features
- Add deployment scripts and configuration for Azure Container Apps by @leggetter in #447
- Improve observability for Destinations API 5xx error investigation by @leggetter in #458
Updates
- Add Azure Service Bus to event delivery support list by @leggetter in #448
- Update SDKs (OUTPOST-TS, OUTPOST-GO, OUTPOST-PYTHON) to v0.3.0 by @github-actions[bot] in https://github.com/hookdeck/outpost/pulls/451,452,453,454
- Update SDK examples to use v0.3.0 and add create destination example by @leggetter in #455
- Add diagnostics-clean script and enhance diagnostics.sh for Azure by @leggetter in #457
Full Changelog: v0.4.0...v0.4.1