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.65.0"
".": "0.66.0"
}
8 changes: 4 additions & 4 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 117
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel/kernel-08c2d6a44f4cdcbfb6803a3043fdc1a3e33911dec4652cb3a870f01bc584421f.yml
openapi_spec_hash: c816491451347eb93b793cddf6a78648
config_hash: 9e45c27425021d49b5391f5cc980b046
configured_endpoints: 119
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel/kernel-f9a96fe14f0b3c93230a26f9b64827a35a19a28d4e7cd2719315c4d76cce78fc.yml
openapi_spec_hash: 852e2a64b850f759ccbcf81b1579497a
config_hash: 80eef1b592110714ea55cd26c470fabb
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Changelog

## 0.66.0 (2026-06-09)

Full Changelog: [v0.65.0...v0.66.0](https://github.com/kernel/kernel-python-sdk/compare/v0.65.0...v0.66.0)

### Features

* Add org-level default per-project concurrency cap ([2de4525](https://github.com/kernel/kernel-python-sdk/commit/2de45255a1f5ed003ec0492461ee967bf961db2e))

## 0.65.0 (2026-06-08)

Full Changelog: [v0.64.0...v0.65.0](https://github.com/kernel/kernel-python-sdk/compare/v0.64.0...v0.65.0)
Expand Down
15 changes: 15 additions & 0 deletions api.md
Original file line number Diff line number Diff line change
Expand Up @@ -423,6 +423,21 @@ Methods:
- <code title="get /org/projects/{id}/limits">client.projects.limits.<a href="./src/kernel/resources/projects/limits.py">retrieve</a>(id) -> <a href="./src/kernel/types/projects/project_limits.py">ProjectLimits</a></code>
- <code title="patch /org/projects/{id}/limits">client.projects.limits.<a href="./src/kernel/resources/projects/limits.py">update</a>(id, \*\*<a href="src/kernel/types/projects/limit_update_params.py">params</a>) -> <a href="./src/kernel/types/projects/project_limits.py">ProjectLimits</a></code>

# Organization

## Limits

Types:

```python
from kernel.types.organization import OrgLimits, UpdateOrgLimitsRequest
```

Methods:

- <code title="get /org/limits">client.organization.limits.<a href="./src/kernel/resources/organization/limits.py">retrieve</a>() -> <a href="./src/kernel/types/organization/org_limits.py">OrgLimits</a></code>
- <code title="patch /org/limits">client.organization.limits.<a href="./src/kernel/resources/organization/limits.py">update</a>(\*\*<a href="src/kernel/types/organization/limit_update_params.py">params</a>) -> <a href="./src/kernel/types/organization/org_limits.py">OrgLimits</a></code>

# APIKeys

Types:
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "kernel"
version = "0.65.0"
version = "0.66.0"
description = "The official Python library for the kernel API"
dynamic = ["readme"]
license = "Apache-2.0"
Expand Down
38 changes: 38 additions & 0 deletions src/kernel/_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@
credentials,
deployments,
invocations,
organization,
browser_pools,
credential_providers,
)
Expand All @@ -74,6 +75,7 @@
from .resources.browsers.browsers import BrowsersResource, AsyncBrowsersResource
from .resources.projects.projects import ProjectsResource, AsyncProjectsResource
from .resources.credential_providers import CredentialProvidersResource, AsyncCredentialProvidersResource
from .resources.organization.organization import OrganizationResource, AsyncOrganizationResource

__all__ = [
"ENVIRONMENTS",
Expand Down Expand Up @@ -262,6 +264,12 @@ def projects(self) -> ProjectsResource:

return ProjectsResource(self)

@cached_property
def organization(self) -> OrganizationResource:
from .resources.organization import OrganizationResource

return OrganizationResource(self)

@cached_property
def api_keys(self) -> APIKeysResource:
"""Create and manage API keys for organization and project-scoped access."""
Expand Down Expand Up @@ -593,6 +601,12 @@ def projects(self) -> AsyncProjectsResource:

return AsyncProjectsResource(self)

@cached_property
def organization(self) -> AsyncOrganizationResource:
from .resources.organization import AsyncOrganizationResource

return AsyncOrganizationResource(self)

@cached_property
def api_keys(self) -> AsyncAPIKeysResource:
"""Create and manage API keys for organization and project-scoped access."""
Expand Down Expand Up @@ -837,6 +851,12 @@ def projects(self) -> projects.ProjectsResourceWithRawResponse:

return ProjectsResourceWithRawResponse(self._client.projects)

@cached_property
def organization(self) -> organization.OrganizationResourceWithRawResponse:
from .resources.organization import OrganizationResourceWithRawResponse

return OrganizationResourceWithRawResponse(self._client.organization)

@cached_property
def api_keys(self) -> api_keys.APIKeysResourceWithRawResponse:
"""Create and manage API keys for organization and project-scoped access."""
Expand Down Expand Up @@ -934,6 +954,12 @@ def projects(self) -> projects.AsyncProjectsResourceWithRawResponse:

return AsyncProjectsResourceWithRawResponse(self._client.projects)

@cached_property
def organization(self) -> organization.AsyncOrganizationResourceWithRawResponse:
from .resources.organization import AsyncOrganizationResourceWithRawResponse

return AsyncOrganizationResourceWithRawResponse(self._client.organization)

@cached_property
def api_keys(self) -> api_keys.AsyncAPIKeysResourceWithRawResponse:
"""Create and manage API keys for organization and project-scoped access."""
Expand Down Expand Up @@ -1031,6 +1057,12 @@ def projects(self) -> projects.ProjectsResourceWithStreamingResponse:

return ProjectsResourceWithStreamingResponse(self._client.projects)

@cached_property
def organization(self) -> organization.OrganizationResourceWithStreamingResponse:
from .resources.organization import OrganizationResourceWithStreamingResponse

return OrganizationResourceWithStreamingResponse(self._client.organization)

@cached_property
def api_keys(self) -> api_keys.APIKeysResourceWithStreamingResponse:
"""Create and manage API keys for organization and project-scoped access."""
Expand Down Expand Up @@ -1128,6 +1160,12 @@ def projects(self) -> projects.AsyncProjectsResourceWithStreamingResponse:

return AsyncProjectsResourceWithStreamingResponse(self._client.projects)

@cached_property
def organization(self) -> organization.AsyncOrganizationResourceWithStreamingResponse:
from .resources.organization import AsyncOrganizationResourceWithStreamingResponse

return AsyncOrganizationResourceWithStreamingResponse(self._client.organization)

@cached_property
def api_keys(self) -> api_keys.AsyncAPIKeysResourceWithStreamingResponse:
"""Create and manage API keys for organization and project-scoped access."""
Expand Down
2 changes: 1 addition & 1 deletion src/kernel/_version.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

__title__ = "kernel"
__version__ = "0.65.0" # x-release-please-version
__version__ = "0.66.0" # x-release-please-version
14 changes: 14 additions & 0 deletions src/kernel/resources/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,14 @@
InvocationsResourceWithStreamingResponse,
AsyncInvocationsResourceWithStreamingResponse,
)
from .organization import (
OrganizationResource,
AsyncOrganizationResource,
OrganizationResourceWithRawResponse,
AsyncOrganizationResourceWithRawResponse,
OrganizationResourceWithStreamingResponse,
AsyncOrganizationResourceWithStreamingResponse,
)
from .browser_pools import (
BrowserPoolsResource,
AsyncBrowserPoolsResource,
Expand Down Expand Up @@ -172,6 +180,12 @@
"AsyncProjectsResourceWithRawResponse",
"ProjectsResourceWithStreamingResponse",
"AsyncProjectsResourceWithStreamingResponse",
"OrganizationResource",
"AsyncOrganizationResource",
"OrganizationResourceWithRawResponse",
"AsyncOrganizationResourceWithRawResponse",
"OrganizationResourceWithStreamingResponse",
"AsyncOrganizationResourceWithStreamingResponse",
"APIKeysResource",
"AsyncAPIKeysResource",
"APIKeysResourceWithRawResponse",
Expand Down
33 changes: 33 additions & 0 deletions src/kernel/resources/organization/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.

from .limits import (
LimitsResource,
AsyncLimitsResource,
LimitsResourceWithRawResponse,
AsyncLimitsResourceWithRawResponse,
LimitsResourceWithStreamingResponse,
AsyncLimitsResourceWithStreamingResponse,
)
from .organization import (
OrganizationResource,
AsyncOrganizationResource,
OrganizationResourceWithRawResponse,
AsyncOrganizationResourceWithRawResponse,
OrganizationResourceWithStreamingResponse,
AsyncOrganizationResourceWithStreamingResponse,
)

__all__ = [
"LimitsResource",
"AsyncLimitsResource",
"LimitsResourceWithRawResponse",
"AsyncLimitsResourceWithRawResponse",
"LimitsResourceWithStreamingResponse",
"AsyncLimitsResourceWithStreamingResponse",
"OrganizationResource",
"AsyncOrganizationResource",
"OrganizationResourceWithRawResponse",
"AsyncOrganizationResourceWithRawResponse",
"OrganizationResourceWithStreamingResponse",
"AsyncOrganizationResourceWithStreamingResponse",
]
Loading
Loading