Skip to content
Merged
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.84.0"
".": "0.85.0"
}
4 changes: 2 additions & 2 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 127
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel/kernel-904fd6fd50970ea07ec05c51b1ae0819ffb64cbf0921fff9daed6792b64f1dc9.yml
openapi_spec_hash: cbd6626bdac7beaa768abb346e03fb74
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel/kernel-7b03462454d6fa8390eaebc1b411d3e160501bf96abb93b75d38dfc382d4ce51.yml
openapi_spec_hash: ba55400aafb4759cc06ec139fe528dfc
config_hash: 77ee715aa17061166f9a02b264a21b8d
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,14 @@
# Changelog

## 0.85.0 (2026-07-29)

Full Changelog: [v0.84.0...v0.85.0](https://github.com/kernel/kernel-go-sdk/compare/v0.84.0...v0.85.0)

### Features

* Add encrypted per-proxy CA bundle for BYO MITM proxies ([b0a77ec](https://github.com/kernel/kernel-go-sdk/commit/b0a77ecf220c82d05b3e1a31d7dc7cba5a01e21f))
* Stabilize project lifecycle error codes ([778c389](https://github.com/kernel/kernel-go-sdk/commit/778c3890f53b2e1e5b8d31cc31a367fbc387ff49))

## 0.84.0 (2026-07-27)

Full Changelog: [v0.83.0...v0.84.0](https://github.com/kernel/kernel-go-sdk/compare/v0.83.0...v0.84.0)
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ Or to pin the version:
<!-- x-release-please-start-version -->

```sh
go get -u 'github.com/kernel/kernel-go-sdk@v0.84.0'
go get -u 'github.com/kernel/kernel-go-sdk@v0.85.0'
```

<!-- x-release-please-end -->
Expand Down
4 changes: 3 additions & 1 deletion client.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,9 @@ type Client struct {
BrowserPools BrowserPoolService
// Create and manage credentials for authentication.
Credentials CredentialService
// Create and manage projects for resource isolation within an organization.
// Create and manage projects for resource isolation within an organization. When
// projects are disabled for the organization, project operations return `404` with
// code `projects_disabled`.
Projects ProjectService
Organization OrganizationService
// Read audit log records for the authenticated organization.
Expand Down
2 changes: 1 addition & 1 deletion internal/version.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

package internal

const PackageVersion = "0.84.0" // x-release-please-version
const PackageVersion = "0.85.0" // x-release-please-version
8 changes: 6 additions & 2 deletions project.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,9 @@ import (
"github.com/kernel/kernel-go-sdk/packages/respjson"
)

// Create and manage projects for resource isolation within an organization.
// Create and manage projects for resource isolation within an organization. When
// projects are disabled for the organization, project operations return `404` with
// code `projects_disabled`.
//
// ProjectService contains methods and other services that help with interacting
// with the kernel API.
Expand All @@ -31,7 +33,9 @@ import (
// the [NewProjectService] method instead.
type ProjectService struct {
Options []option.RequestOption
// Create and manage projects for resource isolation within an organization.
// Create and manage projects for resource isolation within an organization. When
// projects are disabled for the organization, project operations return `404` with
// code `projects_disabled`.
Limits ProjectLimitService
}

Expand Down
4 changes: 3 additions & 1 deletion projectlimit.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@ import (
"github.com/kernel/kernel-go-sdk/packages/respjson"
)

// Create and manage projects for resource isolation within an organization.
// Create and manage projects for resource isolation within an organization. When
// projects are disabled for the organization, project operations return `404` with
// code `projects_disabled`.
//
// ProjectLimitService contains methods and other services that help with
// interacting with the kernel API.
Expand Down
42 changes: 42 additions & 0 deletions proxy.go
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,8 @@ type ProxyNewResponseConfigUnion struct {
// This field is from variant [ProxyNewResponseConfigCustom].
Port int64 `json:"port"`
// This field is from variant [ProxyNewResponseConfigCustom].
HasCaBundle bool `json:"has_ca_bundle"`
// This field is from variant [ProxyNewResponseConfigCustom].
HasPassword bool `json:"has_password"`
// This field is from variant [ProxyNewResponseConfigCustom].
Username string `json:"username"`
Expand All @@ -223,6 +225,7 @@ type ProxyNewResponseConfigUnion struct {
Zip respjson.Field
Host respjson.Field
Port respjson.Field
HasCaBundle respjson.Field
HasPassword respjson.Field
Username respjson.Field
raw string
Expand Down Expand Up @@ -365,6 +368,8 @@ type ProxyNewResponseConfigCustom struct {
Host string `json:"host" api:"required"`
// Proxy port.
Port int64 `json:"port" api:"required"`
// Whether the proxy has a custom CA bundle configured.
HasCaBundle bool `json:"has_ca_bundle"`
// Whether the proxy has a password.
HasPassword bool `json:"has_password"`
// Username for proxy authentication.
Expand All @@ -373,6 +378,7 @@ type ProxyNewResponseConfigCustom struct {
JSON struct {
Host respjson.Field
Port respjson.Field
HasCaBundle respjson.Field
HasPassword respjson.Field
Username respjson.Field
ExtraFields map[string]respjson.Field
Expand Down Expand Up @@ -483,6 +489,8 @@ type ProxyGetResponseConfigUnion struct {
// This field is from variant [ProxyGetResponseConfigCustom].
Port int64 `json:"port"`
// This field is from variant [ProxyGetResponseConfigCustom].
HasCaBundle bool `json:"has_ca_bundle"`
// This field is from variant [ProxyGetResponseConfigCustom].
HasPassword bool `json:"has_password"`
// This field is from variant [ProxyGetResponseConfigCustom].
Username string `json:"username"`
Expand All @@ -495,6 +503,7 @@ type ProxyGetResponseConfigUnion struct {
Zip respjson.Field
Host respjson.Field
Port respjson.Field
HasCaBundle respjson.Field
HasPassword respjson.Field
Username respjson.Field
raw string
Expand Down Expand Up @@ -637,6 +646,8 @@ type ProxyGetResponseConfigCustom struct {
Host string `json:"host" api:"required"`
// Proxy port.
Port int64 `json:"port" api:"required"`
// Whether the proxy has a custom CA bundle configured.
HasCaBundle bool `json:"has_ca_bundle"`
// Whether the proxy has a password.
HasPassword bool `json:"has_password"`
// Username for proxy authentication.
Expand All @@ -645,6 +656,7 @@ type ProxyGetResponseConfigCustom struct {
JSON struct {
Host respjson.Field
Port respjson.Field
HasCaBundle respjson.Field
HasPassword respjson.Field
Username respjson.Field
ExtraFields map[string]respjson.Field
Expand Down Expand Up @@ -755,6 +767,8 @@ type ProxyUpdateResponseConfigUnion struct {
// This field is from variant [ProxyUpdateResponseConfigCustom].
Port int64 `json:"port"`
// This field is from variant [ProxyUpdateResponseConfigCustom].
HasCaBundle bool `json:"has_ca_bundle"`
// This field is from variant [ProxyUpdateResponseConfigCustom].
HasPassword bool `json:"has_password"`
// This field is from variant [ProxyUpdateResponseConfigCustom].
Username string `json:"username"`
Expand All @@ -767,6 +781,7 @@ type ProxyUpdateResponseConfigUnion struct {
Zip respjson.Field
Host respjson.Field
Port respjson.Field
HasCaBundle respjson.Field
HasPassword respjson.Field
Username respjson.Field
raw string
Expand Down Expand Up @@ -909,6 +924,8 @@ type ProxyUpdateResponseConfigCustom struct {
Host string `json:"host" api:"required"`
// Proxy port.
Port int64 `json:"port" api:"required"`
// Whether the proxy has a custom CA bundle configured.
HasCaBundle bool `json:"has_ca_bundle"`
// Whether the proxy has a password.
HasPassword bool `json:"has_password"`
// Username for proxy authentication.
Expand All @@ -917,6 +934,7 @@ type ProxyUpdateResponseConfigCustom struct {
JSON struct {
Host respjson.Field
Port respjson.Field
HasCaBundle respjson.Field
HasPassword respjson.Field
Username respjson.Field
ExtraFields map[string]respjson.Field
Expand Down Expand Up @@ -1027,6 +1045,8 @@ type ProxyListResponseConfigUnion struct {
// This field is from variant [ProxyListResponseConfigCustom].
Port int64 `json:"port"`
// This field is from variant [ProxyListResponseConfigCustom].
HasCaBundle bool `json:"has_ca_bundle"`
// This field is from variant [ProxyListResponseConfigCustom].
HasPassword bool `json:"has_password"`
// This field is from variant [ProxyListResponseConfigCustom].
Username string `json:"username"`
Expand All @@ -1039,6 +1059,7 @@ type ProxyListResponseConfigUnion struct {
Zip respjson.Field
Host respjson.Field
Port respjson.Field
HasCaBundle respjson.Field
HasPassword respjson.Field
Username respjson.Field
raw string
Expand Down Expand Up @@ -1181,6 +1202,8 @@ type ProxyListResponseConfigCustom struct {
Host string `json:"host" api:"required"`
// Proxy port.
Port int64 `json:"port" api:"required"`
// Whether the proxy has a custom CA bundle configured.
HasCaBundle bool `json:"has_ca_bundle"`
// Whether the proxy has a password.
HasPassword bool `json:"has_password"`
// Username for proxy authentication.
Expand All @@ -1189,6 +1212,7 @@ type ProxyListResponseConfigCustom struct {
JSON struct {
Host respjson.Field
Port respjson.Field
HasCaBundle respjson.Field
HasPassword respjson.Field
Username respjson.Field
ExtraFields map[string]respjson.Field
Expand Down Expand Up @@ -1299,6 +1323,8 @@ type ProxyCheckResponseConfigUnion struct {
// This field is from variant [ProxyCheckResponseConfigCustom].
Port int64 `json:"port"`
// This field is from variant [ProxyCheckResponseConfigCustom].
HasCaBundle bool `json:"has_ca_bundle"`
// This field is from variant [ProxyCheckResponseConfigCustom].
HasPassword bool `json:"has_password"`
// This field is from variant [ProxyCheckResponseConfigCustom].
Username string `json:"username"`
Expand All @@ -1311,6 +1337,7 @@ type ProxyCheckResponseConfigUnion struct {
Zip respjson.Field
Host respjson.Field
Port respjson.Field
HasCaBundle respjson.Field
HasPassword respjson.Field
Username respjson.Field
raw string
Expand Down Expand Up @@ -1453,6 +1480,8 @@ type ProxyCheckResponseConfigCustom struct {
Host string `json:"host" api:"required"`
// Proxy port.
Port int64 `json:"port" api:"required"`
// Whether the proxy has a custom CA bundle configured.
HasCaBundle bool `json:"has_ca_bundle"`
// Whether the proxy has a password.
HasPassword bool `json:"has_password"`
// Username for proxy authentication.
Expand All @@ -1461,6 +1490,7 @@ type ProxyCheckResponseConfigCustom struct {
JSON struct {
Host respjson.Field
Port respjson.Field
HasCaBundle respjson.Field
HasPassword respjson.Field
Username respjson.Field
ExtraFields map[string]respjson.Field
Expand Down Expand Up @@ -1607,6 +1637,14 @@ func (u ProxyNewParamsConfigUnion) GetPort() *int64 {
return nil
}

// Returns a pointer to the underlying variant's property, if present.
func (u ProxyNewParamsConfigUnion) GetCaBundle() *string {
if vt := u.OfCustom; vt != nil && vt.CaBundle.Valid() {
return &vt.CaBundle.Value
}
return nil
}

// Returns a pointer to the underlying variant's property, if present.
func (u ProxyNewParamsConfigUnion) GetPassword() *string {
if vt := u.OfCustom; vt != nil && vt.Password.Valid() {
Expand Down Expand Up @@ -1750,6 +1788,10 @@ type ProxyNewParamsConfigCustom struct {
Host string `json:"host" api:"required"`
// Proxy port.
Port int64 `json:"port" api:"required"`
// PEM-encoded CA certificate bundle the proxy re-signs upstream TLS with. Provide
// when the proxy terminates TLS (MITM) so the browser trusts its certificates. May
// contain multiple concatenated certificates.
CaBundle param.Opt[string] `json:"ca_bundle,omitzero"`
// Password for proxy authentication.
Password param.Opt[string] `json:"password,omitzero"`
// Username for proxy authentication.
Expand Down
Loading