sdk/v2.39.0

twentyhq/twentysdk/v2.39.0Sep 9, 2026by twenty-pr[bot]

AI Summary

This SDK update mirrors the platform's v2.39.0, focusing on the new usage quota model, app integration improvements, and developer tooling enhancements. It adds support for logo assets on connection manifests and introduces the `yarn twenty pull` command for local application management.

Key Highlights

  • New usage quota model and limit enforcement
  • App integration enhancements including logo support
  • Developer tools: `yarn twenty pull` command
  • Removal of legacy GraphQL upload mutations
  • Record sharing metadata support (readability)

New Features

  • Gate intra-workspace limits behind Organization entitlement
  • Support logo asset on ConnectionProviderManifest
  • Reshape the limit model for quota kinds
  • Credit allowance as a quota counter
  • Export application query for local data model
  • Publish queue job events over SSE
  • Write installed application back to source with `yarn twenty pull`
  • Record sharing readability level metadata
  • Expose writability on object and field metadata DTOs
  • Duplicate List action for message lists

Full Release Notes

<!-- generated-release-notes v1 -->

## ✨ New features

- feat(usage-limit): gate intra-workspace limits behind the Organization entitlement ([#25292](https://github.com/twentyhq/twenty/pull/25292)) by @etiennejouan
- feat(apps): support logo asset on ConnectionProviderManifest ([#25419](https://github.com/twentyhq/twenty/pull/25419)) by @martmull

## 💅 Improvements & UX

- feat(usage-limit) - reshape the limit model for quota kinds ([#25277](https://github.com/twentyhq/twenty/pull/25277)) by @etiennejouan
- feat(usage) - credit allowance as a quota counter and enforcement wiring ([#25279](https://github.com/twentyhq/twenty/pull/25279)) by @etiennejouan
- Tidy the campaign composer, add cancel, and confirm before sending ([#25293](https://github.com/twentyhq/twenty/pull/25293)) by @neo773
- Add the exportApplication query for the data model of a local application ([#25311](https://github.com/twentyhq/twenty/pull/25311)) by @Weiko
- Publish queue job events over SSE ([#25333](https://github.com/twentyhq/twenty/pull/25333)) by @martmull
- Add `yarn twenty pull` to write an installed application back to source ([#25410](https://github.com/twentyhq/twenty/pull/25410)) by @Weiko
- Record sharing 1/14: add the readability level on object metadata ([#25421](https://github.com/twentyhq/twenty/pull/25421)) by @martmull
- Writability 1/3: expose writability on the object and field metadata DTOs ([#25470](https://github.com/twentyhq/twenty/pull/25470)) by @FelixMalfait
- Add a pinned Duplicate List action copying a message list and its members ([#25473](https://github.com/twentyhq/twenty/pull/25473)) by @FelixMalfait

## 🔧 Developer & API

- Remove legacy graphql-upload mutations superseded by direct upload ([#25348](https://github.com/twentyhq/twenty/pull/25348)) by @martmull

<details>
<summary>🏗️ Internal changes (1)</summary>

- chore(workflow): remove graduated workflow-core feature flags ([#25338](https://github.com/twentyhq/twenty/pull/25338)) by @thomtrp

</details>

<details>
<summary>Full changelog (14 PRs)</summary>

- feat(usage-limit) - reshape the limit model for quota kinds ([#25277](https://github.com/twentyhq/twenty/pull/25277)) by @etiennejouan
- feat(usage) - credit allowance as a quota counter and enforcement wiring ([#25279](https://github.com/twentyhq/twenty/pull/25279)) by @etiennejouan
- feat(usage-limit): gate intra-workspace limits behind the Organization entitlement ([#25292](https://github.com/twentyhq/twenty/pull/25292)) by @etiennejouan
- Tidy the campaign composer, add cancel, and confirm before sending ([#25293](https://github.com/twentyhq/twenty/pull/25293)) by @neo773
- chore: bump version to 2.39.0 ([#25310](https://github.com/twentyhq/twenty/pull/25310)) by @twenty-pr
- Add the exportApplication query for the data model of a local application ([#25311](https://github.com/twentyhq/twenty/pull/25311)) by @Weiko
- Publish queue job events over SSE ([#25333](https://github.com/twentyhq/twenty/pull/25333)) by @martmull
- chore(workflow): remove graduated workflow-core feature flags ([#25338](https://github.com/twentyhq/twenty/pull/25338)) by @thomtrp
- Remove legacy graphql-upload mutations superseded by direct upload ([#25348](https://github.com/twentyhq/twenty/pull/25348)) by @martmull
- Add `yarn twenty pull` to write an installed application back to source ([#25410](https://github.com/twentyhq/twenty/pull/25410)) by @Weiko
- feat(apps): support logo asset on ConnectionProviderManifest ([#25419](https://github.com/twentyhq/twenty/pull/25419)) by @martmull
- Record sharing 1/14: add the readability level on object metadata ([#25421](https://github.com/twentyhq/twenty/pull/25421)) by @martmull
- Writability 1/3: expose writability on the object and field metadata DTOs ([#25470](https://github.com/twentyhq/twenty/pull/25470)) by @FelixMalfait
- Add a pinned Duplicate List action copying a message list and its members ([#25473](https://github.com/twentyhq/twenty/pull/25473)) by @FelixMalfait

</details>

**Full Changelog**: https://github.com/twentyhq/twenty/compare/sdk/v2.38.1...sdk/v2.39.0