# Quickstart — endpoint direto [#quickstart--endpoint-direto] > Pergunta: "como inicio uma transcrição com um endpoint que meu ambiente já forneceu?" Parta dos [pré-requisitos](/pt/docs/transcription/latest/markdown/pre-requisitos). O `ready` abaixo só acontece depois de o socket confirmar a conexão; não é apenas "a chamada de início foi disparada". ```ts import { connectTranscription, TranscriptionError } from '@sofya-sdk/transcription'; async function iniciar() { try { const session = await connectTranscription({ provider: 'sofya_as_service', endpoint: '', token: '', overrides: { languages: { transcription: 'pt-BR' }, externalId: '', }, }); session.on('ready', () => console.log('pronto para capturar áudio')); session.on('recognized', ({ text, offsetMs, durationMs }) => { void text; console.log({ offsetMs, durationMs }); }); session.on('error', ({ code, message }) => console.error(code, message)); return session; } catch (error) { if (error instanceof TranscriptionError) console.error(error.code); throw error; } } const session = await iniciar(); await session.stop(); ``` `connectTranscription()` também aceita este caminho direto e retorna uma única sessão iniciada. `createTranscriptionSession()` é a alternativa de baixo nível quando você já quer construir a sessão sem iniciar fallback; consulte a [referência](/pt/docs/transcription/latest/markdown/referencia-de-simbolos). O placeholder `token` não afirma um contrato de autenticação do endpoint batch: para essa limitação, veja [batch-e-reprocessamento.md](/pt/docs/transcription/latest/markdown/batch-e-reprocessamento#autenticação).