diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 9e002e9..d720349 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.72.0" + ".": "0.73.0" } diff --git a/.stats.yml b/.stats.yml index 10d9022..9118082 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ -configured_endpoints: 124 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel/kernel-4c243ff089133bd49322d98a6943647589972f71ecadc993fe9e5029972b3995.yml -openapi_spec_hash: a2cb637a19a070d07a1a4343c75444ee -config_hash: fb167e754ebb3a14649463725891c9d0 +configured_endpoints: 125 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/kernel/kernel-55409ab573762d8bc010fb34c885651ca858a97d4353b4776b7aafeaaa313257.yml +openapi_spec_hash: 0cf678d80f2a2b73fb9ec82d05c8cc0a +config_hash: 06186eb40e0058a2a87ac251fc07415d diff --git a/CHANGELOG.md b/CHANGELOG.md index 42e7daf..4bd3f79 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 0.73.0 (2026-07-01) + +Full Changelog: [v0.72.0...v0.73.0](https://github.com/kernel/kernel-node-sdk/compare/v0.72.0...v0.73.0) + +### Features + +* Add hidden audit-logs export endpoint ([14db0ea](https://github.com/kernel/kernel-node-sdk/commit/14db0ea3dfa7c2f0bd2f8f50e8b0415866a3f512)) + ## 0.72.0 (2026-06-26) Full Changelog: [v0.71.1...v0.72.0](https://github.com/kernel/kernel-node-sdk/compare/v0.71.1...v0.72.0) diff --git a/api.md b/api.md index f91b4e8..d729ebd 100644 --- a/api.md +++ b/api.md @@ -404,6 +404,7 @@ Types: Methods: - client.auditLogs.list({ ...params }) -> AuditLogEntriesPageTokenPagination +- client.auditLogs.exportChunk({ ...params }) -> Response # APIKeys diff --git a/package.json b/package.json index 7a90029..dc0bdaa 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@onkernel/sdk", - "version": "0.72.0", + "version": "0.73.0", "description": "The official TypeScript library for the Kernel API", "author": "Kernel <>", "types": "dist/index.d.ts", diff --git a/src/client.ts b/src/client.ts index 427df47..db4f3c3 100644 --- a/src/client.ts +++ b/src/client.ts @@ -45,6 +45,7 @@ import { import { AuditLogEntriesPageTokenPagination, AuditLogEntry, + AuditLogExportChunkParams, AuditLogListParams, AuditLogs, } from './resources/audit-logs'; @@ -1192,6 +1193,7 @@ export declare namespace Kernel { type AuditLogEntry as AuditLogEntry, type AuditLogEntriesPageTokenPagination as AuditLogEntriesPageTokenPagination, type AuditLogListParams as AuditLogListParams, + type AuditLogExportChunkParams as AuditLogExportChunkParams, }; export { diff --git a/src/resources/audit-logs.ts b/src/resources/audit-logs.ts index 69366c5..85df410 100644 --- a/src/resources/audit-logs.ts +++ b/src/resources/audit-logs.ts @@ -1,7 +1,9 @@ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../core/resource'; +import { APIPromise } from '../core/api-promise'; import { PagePromise, PageTokenPagination, type PageTokenPaginationParams } from '../core/pagination'; +import { buildHeaders } from '../internal/headers'; import { RequestOptions } from '../internal/request-options'; /** @@ -18,6 +20,20 @@ export class AuditLogs extends APIResource { ): PagePromise { return this._client.getAPIList('/audit-logs', PageTokenPagination, { query, ...options }); } + + /** + * Download an organization's audit log records for a time range as a file, for + * archival, compliance, or offline analysis. For interactive browsing, use GET + * /audit-logs. + */ + exportChunk(query: AuditLogExportChunkParams, options?: RequestOptions): APIPromise { + return this._client.get('/audit-logs/export/chunk', { + query, + ...options, + headers: buildHeaders([{ Accept: 'application/octet-stream' }, options?.headers]), + __binaryResponse: true, + }); + } } export type AuditLogEntriesPageTokenPagination = PageTokenPagination; @@ -126,10 +142,68 @@ export interface AuditLogListParams extends PageTokenPaginationParams { service?: string; } +export interface AuditLogExportChunkParams { + /** + * Upper bound (exclusive) for the audit record timestamp. + */ + end: string; + + /** + * Lower bound (inclusive) for the audit record timestamp. + */ + start: string; + + /** + * Filter by authentication strategy. + */ + auth_strategy?: string; + + /** + * Opaque cursor from X-Next-Cursor for the next chunk of older records. + */ + cursor?: string; + + /** + * Filter out results by HTTP method. + */ + exclude_method?: string; + + /** + * Encoding for the returned chunk. + */ + format?: 'jsonl' | 'jsonl.gz'; + + /** + * Maximum number of records to return in this chunk. + */ + limit?: number; + + /** + * Filter by HTTP method. + */ + method?: string; + + /** + * Free-text search over path, user ID, email, client IP, and status. + */ + search?: string; + + /** + * Additional user IDs to OR into free-text search. + */ + search_user_id?: Array; + + /** + * Filter by service name. + */ + service?: string; +} + export declare namespace AuditLogs { export { type AuditLogEntry as AuditLogEntry, type AuditLogEntriesPageTokenPagination as AuditLogEntriesPageTokenPagination, type AuditLogListParams as AuditLogListParams, + type AuditLogExportChunkParams as AuditLogExportChunkParams, }; } diff --git a/src/resources/index.ts b/src/resources/index.ts index 4704f6a..a7fdf35 100644 --- a/src/resources/index.ts +++ b/src/resources/index.ts @@ -22,6 +22,7 @@ export { AuditLogs, type AuditLogEntry, type AuditLogListParams, + type AuditLogExportChunkParams, type AuditLogEntriesPageTokenPagination, } from './audit-logs'; export { Auth } from './auth/auth'; diff --git a/src/version.ts b/src/version.ts index 73387f8..9cf3cf2 100644 --- a/src/version.ts +++ b/src/version.ts @@ -1 +1 @@ -export const VERSION = '0.72.0'; // x-release-please-version +export const VERSION = '0.73.0'; // x-release-please-version diff --git a/tests/api-resources/audit-logs.test.ts b/tests/api-resources/audit-logs.test.ts index 833cbe1..b1773ce 100644 --- a/tests/api-resources/audit-logs.test.ts +++ b/tests/api-resources/audit-logs.test.ts @@ -38,4 +38,21 @@ describe('resource auditLogs', () => { service: 'service', }); }); + + // Mock server tests are disabled + test.skip('exportChunk: required and optional params', async () => { + const response = await client.auditLogs.exportChunk({ + end: '2026-01-02T00:00:00Z', + start: '2026-01-01T00:00:00Z', + auth_strategy: 'auth_strategy', + cursor: 'cursor', + exclude_method: 'exclude_method', + format: 'jsonl', + limit: 1, + method: 'method', + search: 'search', + search_user_id: ['string'], + service: 'service', + }); + }); });