diff --git a/.release-please-manifest.json b/.release-please-manifest.json index c0f9e2d..1ed3fbd 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "4.7.0" + ".": "4.8.0" } diff --git a/.stats.yml b/.stats.yml index 732af71..f6fb8cf 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 50 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/runwayml/runwayml-6891f36f2cfa06dc53ee188ca0ab127f30f849d15ac7cf45d4a1eb27c9ab3868.yml -openapi_spec_hash: e2e91001c6f699c4fbe971c44043950f +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/runwayml/runwayml-caa255c8f1c6fd2b54d331eeacc13de517b8dbaba491ef94745d107798b5eb7a.yml +openapi_spec_hash: d9f7b43604b06f389e2fc45376d0a519 config_hash: 955a0e451964a44778c5c0f54ca1c994 diff --git a/CHANGELOG.md b/CHANGELOG.md index e71cd71..acec617 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 4.8.0 (2026-07-06) + +Full Changelog: [v4.7.0...v4.8.0](https://github.com/runwayml/sdk-node/compare/v4.7.0...v4.8.0) + +### Features + +* **api:** add realtime session external integrations ([75478c6](https://github.com/runwayml/sdk-node/commit/75478c6b00f8189d0d2e82caae6c3f4a25df2d65)) + ## 4.7.0 (2026-07-06) Full Changelog: [v4.6.0...v4.7.0](https://github.com/runwayml/sdk-node/compare/v4.6.0...v4.7.0) diff --git a/package.json b/package.json index bb61af8..b4b149e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@runwayml/sdk", - "version": "4.7.0", + "version": "4.8.0", "description": "The official TypeScript library for the RunwayML API", "author": "RunwayML ", "types": "dist/index.d.ts", diff --git a/src/resources/realtime-sessions.ts b/src/resources/realtime-sessions.ts index ed820f4..6ad4562 100644 --- a/src/resources/realtime-sessions.ts +++ b/src/resources/realtime-sessions.ts @@ -211,6 +211,17 @@ export interface RealtimeSessionCreateParams { */ model: 'gwm1_avatars'; + /** + * External integration. Runway renders the avatar; the integration owns + * conversation or audio. + */ + integration?: RealtimeSessionCreateParams.Elevenlabs | RealtimeSessionCreateParams.Livekit; + + /** + * @deprecated Use integration with type "livekit" instead. + */ + livekit?: RealtimeSessionCreateParams.Livekit; + /** * Maximum session duration in seconds. */ @@ -268,6 +279,75 @@ export namespace RealtimeSessionCreateParams { type: 'custom'; } + /** + * ElevenLabs handles conversation; Runway renders the avatar video. + */ + export interface Elevenlabs { + /** + * ConvAI signed WebSocket URL (~15 min lifetime). + */ + signedUrl: string; + + type: 'elevenlabs'; + } + + /** + * Join an external LiveKit room; Runway publishes video, your agent supplies + * audio. + */ + export interface Livekit { + /** + * LiveKit access token granting the avatar worker publish rights in the external + * room. + */ + token: string; + + /** + * Name of the external LiveKit room. + */ + roomName: string; + + type: 'livekit'; + + /** + * WebSocket URL of the external LiveKit server the avatar worker should join. + */ + url: string; + + /** + * The participant identity of the customer agent already in the room. When + * provided, the avatar worker trusts audio published by this identity. + */ + agentIdentity?: string; + } + + /** + * @deprecated Use integration with type "livekit" instead. + */ + export interface Livekit { + /** + * LiveKit access token granting the avatar worker publish rights in the external + * room. + */ + token: string; + + /** + * Name of the external LiveKit room. + */ + roomName: string; + + /** + * WebSocket URL of the external LiveKit server the avatar worker should join. + */ + url: string; + + /** + * The participant identity of the customer agent already in the room. When + * provided, the avatar worker trusts audio published by this identity. + */ + agentIdentity?: string; + } + /** * A fire-and-forget tool that sends arguments to the frontend client of the * realtime session. diff --git a/src/version.ts b/src/version.ts index 65ca08e..5ae204f 100644 --- a/src/version.ts +++ b/src/version.ts @@ -1 +1 @@ -export const VERSION = '4.7.0'; // x-release-please-version +export const VERSION = '4.8.0'; // x-release-please-version diff --git a/tests/api-resources/realtime-sessions.test.ts b/tests/api-resources/realtime-sessions.test.ts index ec0adc7..5a9c6cd 100644 --- a/tests/api-resources/realtime-sessions.test.ts +++ b/tests/api-resources/realtime-sessions.test.ts @@ -26,6 +26,7 @@ describe('resource realtimeSessions', () => { const response = await client.realtimeSessions.create({ avatar: { presetId: 'game-character', type: 'runway-preset' }, model: 'gwm1_avatars', + integration: { signedUrl: 'https://example.com', type: 'elevenlabs' }, maxDuration: 10, personality: 'x', startScript: 'x',