OSS-first docs

These docs teach the open system first: contracts, generated surfaces, runtimes, governance, and incremental adoption. Studio shows up as the operating layer on top, not as the source of truth.

ai-voice.elevenlabs

ElevenLabs integration for neural voice synthesis and voice catalog access.

  • Type: integration (integration)
  • Version: 1.0.0
  • Owners: platform.ai
  • Tags: voice, tts, stt
  • File: packages/libs/contracts-integrations/src/integrations/providers/elevenlabs.ts
  • field.key.label
    ai-voice.elevenlabs
    field.version.label
    1.0.0
    field.type.label
    integration (integration)
    field.title.label
    ai-voice.elevenlabs
    field.description.label

    ElevenLabs integration for neural voice synthesis and voice catalog access.

  • Type: integration (integration)
  • Version: 1.0.0
  • Owners: platform.ai
  • Tags: voice, tts, stt
  • File: packages/libs/contracts-integrations/src/integrations/providers/elevenlabs.ts
  • field.tags.label
    voice,tts,stt
    field.owners.label
    platform.ai
    field.stability.label

    ElevenLabs integration for neural voice synthesis and voice catalog access.

    Source Definition

    export const elevenLabsIntegrationSpec = defineIntegration({
    	meta: {
    		key: 'ai-voice.elevenlabs',
    		version: '1.0.0',
    		category: 'ai-voice-tts',
    		title: 'ElevenLabs Text-to-Speech',
    		description:
    			'ElevenLabs integration for neural voice synthesis and voice catalog access.',
    		domain: 'ai',
    		owners: ['platform.ai'],
    		tags: ['voice', 'tts', 'stt'],
    		stability: StabilityEnum.Beta,
    	},
    	supportedModes: ['managed', 'byok'],
    	transports: [
    		{ type: 'rest', baseUrl: 'https://api.elevenlabs.io' },
    		{ type: 'sdk', packageName: 'elevenlabs' },
    	] satisfies IntegrationTransportConfig[],
    	preferredTransport: 'rest',
    	supportedAuthMethods: [
    		{ type: 'header', headerName: 'xi-api-key' },
    	] satisfies IntegrationAuthConfig[],
    	capabilities: {
    		provides: [
    			{ key: 'ai.voice.tts', version: '1.0.0' },
    			{ key: 'ai.voice.stt', version: '1.0.0' },
    		],
    	},
    	configSchema: {
    		schema: {
    			type: 'object',
    			properties: {
    				defaultVoiceId: {
    					type: 'string',
    					description:
    						'Optional default voice identifier for synthesis requests.',
    				},
    			},
    		},
    		example: {
    			defaultVoiceId: 'pNInz6obpgDQGcFmaJgB',
    		},
    	},
    	secretSchema: {
    		schema: {
    			type: 'object',
    			required: ['apiKey'],
    			properties: {
    				apiKey: {
    					type: 'string',
    					description: 'ElevenLabs API key with text-to-speech permissions.',
    				},
    			},
    		},
    		example: {
    			apiKey: 'eleven-***',
    		},
    	},
    	healthCheck: {
    		method: 'custom',
    		timeoutMs: 4000,
    	},
    	docsUrl: 'https://elevenlabs.io/docs/api-reference/text-to-speech',
    	constraints: {
    		rateLimit: {
    			rpm: 120,
    		},
    	},
    	byokSetup: {
    		setupInstructions:
    			'Create an ElevenLabs API key and ensure the desired voices are accessible to the key scope.',
    		keyRotationSupported: false,
    		quotaTrackingSupported: true,
    	},
    });