> ## Documentation Index
> Fetch the complete documentation index at: https://typecast.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# SDK Overview

## Why use an SDK?

You can call the Typecast API directly over HTTP, but SDKs are recommended for production code. SDKs wrap repetitive integration work such as authentication headers, request and response types, error handling, streaming handling, and response parsing, so you can integrate more safely and faster than implementing every HTTP call yourself. They also provide higher-level workflows such as **voice recommendations**, **text pauses**, and **multi-speaker composition**, which are cumbersome to implement with direct API calls alone.

Use the SDK that matches where your Typecast API integration will run. If you are starting from a script or prototype, Python is usually the fastest path. For production services, choose the SDK that fits your existing backend or app runtime.

| SDK | Use when |
| --- | --- |
| <span style={{ display: "inline-flex", alignItems: "center", gap: "8px" }}><Icon name="python" size={18} /><DocsLink href="/sdk/python">Python</DocsLink></span> | You are building scripts, notebooks, data pipelines, backend jobs, or quick API prototypes. |
| <span style={{ display: "inline-flex", alignItems: "center", gap: "8px" }}><Icon name="js" size={18} /><DocsLink href="/sdk/javascript">Javascript/Typescript</DocsLink></span> | You are building Node.js services, frontend tooling, full-stack apps, or browser-compatible integrations. |
| <span style={{ display: "inline-flex", alignItems: "center", gap: "8px" }}><Icon name="golang" size={18} /><DocsLink href="/sdk/go">Go</DocsLink></span> | You need a lightweight backend service, CLI, worker, or concurrent batch process. |
| <span style={{ display: "inline-flex", alignItems: "center", gap: "8px" }}><Icon name="rust" size={18} /><DocsLink href="/sdk/rust">Rust</DocsLink></span> | You need strong type safety, predictable performance, or a native audio processing pipeline. |
| <span style={{ display: "inline-flex", alignItems: "center", gap: "8px" }}><Icon name="microsoft" size={18} /><DocsLink href="/sdk/csharp">C#/.NET</DocsLink></span> | You are building .NET services, Windows tools, Unity apps, or Blazor applications. |
| <span style={{ display: "inline-flex", alignItems: "center", gap: "8px" }}><Icon name="java" size={18} /><DocsLink href="/sdk/java">Java</DocsLink></span> | You are integrating with JVM backend systems, Spring services, or Java-first enterprise codebases. |
| <span style={{ display: "inline-flex", alignItems: "center", gap: "8px" }}><Icon name="k" size={18} /><DocsLink href="/sdk/kotlin">Kotlin</DocsLink></span> | You are building Kotlin-first JVM services or Android applications. |
| <span style={{ display: "inline-flex", alignItems: "center", gap: "8px" }}><Icon name="c" size={18} /><DocsLink href="/sdk/c">C/C++</DocsLink></span> | You need native integration, embedded support, FFI bindings, or minimal runtime overhead. |
| <span style={{ display: "inline-flex", alignItems: "center", gap: "8px" }}><Icon name="swift" size={18} /><DocsLink href="/sdk/swift">Swift</DocsLink></span> | You are building iOS, macOS, watchOS, tvOS, or visionOS applications. |
| <span style={{ display: "inline-flex", alignItems: "center", gap: "8px" }}><Icon name="zig" size={18} /><DocsLink href="/sdk/zig">Zig</DocsLink></span> | You want a low-level native integration with explicit memory control and no C dependency. |
| <span style={{ display: "inline-flex", alignItems: "center", gap: "8px" }}><Icon name="php" size={18} /><DocsLink href="/sdk/php">PHP</DocsLink></span> | You are integrating Typecast into Laravel, WordPress, or PHP server-rendered backends. |
| <span style={{ display: "inline-flex", alignItems: "center", gap: "8px" }}><Icon name="dart" size={18} /><DocsLink href="/sdk/dart">Dart/Flutter</DocsLink></span> | You are building Flutter mobile, desktop, or web applications. |
| <span style={{ display: "inline-flex", alignItems: "center", gap: "8px" }}><Icon name="ruby" size={18} /><DocsLink href="/sdk/ruby">Ruby</DocsLink></span> | You are building Rails apps, Ruby backend jobs, or internal automation scripts. |

## Utility SDK

| SDK | Use when |
| --- | --- |
| [Autotag SDK](/bestpractice/autotag) | You need to preprocess phone numbers, dates, times, amounts, and other structured text so TTS reads it more naturally. |
