Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.76.0"
".": "0.76.1"
}
4 changes: 2 additions & 2 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 125
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel/kernel-ba32039d3975da7aa6d28e5184f0a44c9fbfe36ab7dbc71985d14e2ecc0867b9.yml
openapi_spec_hash: a9f32fc90c2add2ae85af828c298e35b
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel/kernel-db45aab5b114bc0848eab997c85bfc02a653be9f929f8d090ec24187462733ee.yml
openapi_spec_hash: 82f4282312699f8d54bec207e981efe8
config_hash: 06186eb40e0058a2a87ac251fc07415d
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Changelog

## 0.76.1 (2026-07-09)

Full Changelog: [v0.76.0...v0.76.1](https://github.com/kernel/kernel-node-sdk/compare/v0.76.0...v0.76.1)

### Documentation

* **openapi:** describe unified concurrency limit, deprecate max_pooled_sessions (CUS-275) ([37d3e27](https://github.com/kernel/kernel-node-sdk/commit/37d3e277f98b068f23c5fc85e7b26269c254827c))

## 0.76.0 (2026-07-09)

Full Changelog: [v0.75.0...v0.76.0](https://github.com/kernel/kernel-node-sdk/compare/v0.75.0...v0.76.0)
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onkernel/sdk",
"version": "0.76.0",
"version": "0.76.1",
"description": "The official TypeScript library for the Kernel API",
"author": "Kernel <>",
"types": "dist/index.d.ts",
Expand Down
27 changes: 14 additions & 13 deletions src/resources/organization/limits.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,9 @@ import { RequestOptions } from '../../internal/request-options';
*/
export class Limits extends APIResource {
/**
* Get the organization's concurrent session ceiling and the default per-project
* concurrency cap applied to projects without an explicit override.
* Get the organization's concurrency limit — the maximum browsers running at once
* across on-demand sessions and browser pool reservations — and the default
* per-project concurrency cap applied to projects without an explicit override.
*/
retrieve(options?: RequestOptions): APIPromise<OrgLimits> {
return this._client.get('/org/limits', options);
Expand All @@ -19,8 +20,7 @@ export class Limits extends APIResource {
/**
* Set the default per-project concurrency cap applied to projects without an
* explicit override. Set the value to 0 to remove the default; omit to leave it
* unchanged. The default cannot exceed the organization's concurrent session
* ceiling.
* unchanged. The default cannot exceed the organization's concurrency limit.
*/
update(body: LimitUpdateParams, options?: RequestOptions): APIPromise<OrgLimits> {
return this._client.patch('/org/limits', { body, ...options });
Expand All @@ -29,35 +29,36 @@ export class Limits extends APIResource {

export interface OrgLimits {
/**
* Default maximum concurrent browser sessions applied to every project that has no
* Default maximum concurrent browsers applied to every project that has no
* explicit per-project override. Null means no org-level default, so such projects
* are uncapped (only the org-wide limit applies). Applies to existing and newly
* created projects.
*/
default_project_max_concurrent_sessions?: number | null;

/**
* The organization's effective concurrent browser session ceiling, from its plan
* or an override. Read-only and shared across all projects in the org; a
* The organization's effective concurrency limit — the maximum browsers running at
* once, covering both on-demand sessions and browser pool reservations — from its
* plan or an override. Read-only and shared across all projects in the org; a
* per-project default cannot exceed it.
*/
max_concurrent_sessions?: number;
}

export interface UpdateOrgLimitsRequest {
/**
* Default maximum concurrent browser sessions for projects without an explicit
* override. Set to 0 to remove the default; omit to leave unchanged. Cannot exceed
* the organization's concurrent session ceiling.
* Default maximum concurrent browsers for projects without an explicit override.
* Set to 0 to remove the default; omit to leave unchanged. Cannot exceed the
* organization's concurrency limit.
*/
default_project_max_concurrent_sessions?: number | null;
}

export interface LimitUpdateParams {
/**
* Default maximum concurrent browser sessions for projects without an explicit
* override. Set to 0 to remove the default; omit to leave unchanged. Cannot exceed
* the organization's concurrent session ceiling.
* Default maximum concurrent browsers for projects without an explicit override.
* Set to 0 to remove the default; omit to leave unchanged. Cannot exceed the
* organization's concurrency limit.
*/
default_project_max_concurrent_sessions?: number | null;
}
Expand Down
30 changes: 18 additions & 12 deletions src/resources/projects/limits.ts
Original file line number Diff line number Diff line change
Expand Up @@ -49,14 +49,16 @@ export interface ProjectLimits {
max_concurrent_invocations?: number | null;

/**
* Maximum concurrent browser sessions for this project. Null means no
* project-level cap.
* Maximum concurrent browsers for this project, covering both on-demand sessions
* (`browsers.create()`) and browser pool reservations. Null means no project-level
* cap.
*/
max_concurrent_sessions?: number | null;

/**
* Maximum pooled sessions capacity for this project. Null means no project-level
* cap.
* @deprecated Deprecated: pooled browsers now count toward
* `max_concurrent_sessions`. Always null once the unified concurrency limit is
* enabled for your organization.
*/
max_pooled_sessions?: number | null;
}
Expand All @@ -69,14 +71,16 @@ export interface UpdateProjectLimitsRequest {
max_concurrent_invocations?: number | null;

/**
* Maximum concurrent browser sessions for this project. Set to 0 to remove the
* cap; omit to leave unchanged.
* Maximum concurrent browsers for this project, covering both on-demand sessions
* and browser pool reservations. Set to 0 to remove the cap; omit to leave
* unchanged.
*/
max_concurrent_sessions?: number | null;

/**
* Maximum pooled sessions capacity for this project. Set to 0 to remove the cap;
* omit to leave unchanged.
* @deprecated Deprecated: pooled browsers now count toward
* `max_concurrent_sessions`. Requests that set this field are rejected with a 400
* once the unified concurrency limit is enabled for your organization.
*/
max_pooled_sessions?: number | null;
}
Expand All @@ -89,14 +93,16 @@ export interface LimitUpdateParams {
max_concurrent_invocations?: number | null;

/**
* Maximum concurrent browser sessions for this project. Set to 0 to remove the
* cap; omit to leave unchanged.
* Maximum concurrent browsers for this project, covering both on-demand sessions
* and browser pool reservations. Set to 0 to remove the cap; omit to leave
* unchanged.
*/
max_concurrent_sessions?: number | null;

/**
* Maximum pooled sessions capacity for this project. Set to 0 to remove the cap;
* omit to leave unchanged.
* @deprecated Deprecated: pooled browsers now count toward
* `max_concurrent_sessions`. Requests that set this field are rejected with a 400
* once the unified concurrency limit is enabled for your organization.
*/
max_pooled_sessions?: number | null;
}
Expand Down
2 changes: 1 addition & 1 deletion src/version.ts
Original file line number Diff line number Diff line change
@@ -1 +1 @@
export const VERSION = '0.76.0'; // x-release-please-version
export const VERSION = '0.76.1'; // x-release-please-version
Loading