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

# API-ге арналған кітапханалар (SDK)

> Он тілге арналған дайын Tungo кітапханалары: қайдан алу, қалай орнату және ЖИ-бухгалтерге алғашқы сұрақты қалай қою керек.

Кітапхана HTTP-мен қолмен жұмыс істеуден құтқарады: сіз әдісті шақырасыз, ал ол кілтті өзі қояды, сұрауды жинайды және жауапты талдайды. Кітапханалар он тілге бар. Олардың бәрі бір API сипаттамасынан жиналған, сондықтан әдістер мен өрістер бірдей аталады және «API» қойындысындағы анықтамалықпен сәйкес келеді.

API кілті керек болады: [API кілтін жасау](https://docs.tungo.kz/kk/platform/api-keys.md) бетін қараңыз. Сұраулардың ішінде не болатыны [Алғашқы сұрауды жіберу](https://docs.tungo.kz/kk/platform/first-request.md) бетінде талданған.

## Қандай кітапханалар бар

| Тіл | Қайда орналасқан | Пакет |
| - | - | - |
| TypeScript | npm | [`@tungoai/sdk`](https://github.com/TungoAI/tungo-sdk-typescript) |
| Python | PyPI | [`tungoai`](https://github.com/TungoAI/tungo-sdk-python) |
| Go | GitHub | [`github.com/TungoAI/tungo-sdk-go`](https://github.com/TungoAI/tungo-sdk-go) |
| Rust | crates.io | [`tungo-sdk`](https://github.com/TungoAI/tungo-sdk-rust) |
| PHP | Packagist | [`tungo/sdk`](https://github.com/TungoAI/tungo-sdk-php) |
| Ruby | RubyGems | [`tungo-sdk`](https://github.com/TungoAI/tungo-sdk-ruby) |
| .NET | NuGet | [`Tungo.Sdk`](https://github.com/TungoAI/tungo-sdk-dotnet) |
| Java | Maven Central | [`kz.tungo:tungo-sdk`](https://github.com/TungoAI/tungo-sdk-java) |
| Kotlin | Maven Central | [`kz.tungo:tungo-sdk-kotlin`](https://github.com/TungoAI/tungo-sdk-kotlin) |
| Swift | GitHub | [`tungo-sdk-swift`](https://github.com/TungoAI/tungo-sdk-swift) |

Кестедегі сілтеме кітапхананың репозиторийіне апарады. Әрқайсысында қазақша, орысша және ағылшынша сипаттама, мысалдар және өзгерістер тізімі бар. Swift тікелей репозиторийден орнатылады, қалғандары өз тілінің пакеттер қоймасынан алынады.

## Орнату

```sh TypeScript theme={null}
npm install @tungoai/sdk
```

```sh Python theme={null}
pip install tungoai
```

```sh Go theme={null}
go get github.com/TungoAI/tungo-sdk-go@latest
```

```toml Rust theme={null}
# Cargo.toml
[dependencies]
tungo-sdk = "0.2"
tokio = { version = "1", features = ["macros", "rt-multi-thread"] }
```

```sh PHP theme={null}
composer require tungo/sdk
```

```sh Ruby theme={null}
gem install tungo-sdk
```

```sh .NET theme={null}
dotnet add package Tungo.Sdk
```

```kotlin Java theme={null}
// build.gradle.kts
implementation("kz.tungo:tungo-sdk:0.2.0")
```

```kotlin Kotlin theme={null}
// build.gradle.kts
implementation("kz.tungo:tungo-sdk-kotlin:0.2.0")
```

```swift Swift theme={null}
// Package.swift
dependencies: [
    .package(url: "https://github.com/TungoAI/tungo-sdk-swift.git", branch: "main")
],
targets: [
    .target(name: "MyApp", dependencies: [.product(name: "TungoSDK", package: "tungo-sdk-swift")])
]
```

## Алғашқы сұрақты қою

Кілтті `TUNGO_API_KEY` орта айнымалысына салыңыз: кітапхана оны өзі оқиды, кілт кодқа түспейді.

```sh theme={null}
export TUNGO_API_KEY=tg_…
```

Компанияның id-і `co_` деп басталады. Оны компаниялар тізімі қайтарады, TypeScript пен Python мысалдарындағыдай.

```ts TypeScript theme={null}
import { Tungo } from '@tungoai/sdk';

const client = new Tungo(); // кілт TUNGO_API_KEY айнымалысынан алынады

const { data: companies } = await client.companies.list();
const reply = await client.ask(companies[0].id, 'Соңғы өткізудің ҚҚС-ы қандай?');
console.log(reply.answer);
```

```python Python theme={null}
from tungoai import Tungo

with Tungo() as client:  # кілт TUNGO_API_KEY айнымалысынан алынады
    companies = client.companies.list()
    turn = client.ask(companies.data[0].id, "Соңғы өткізудің ҚҚС-ы қандай?")
    print(turn.answer)
```

```go Go theme={null}
package main

import (
	"context"
	"fmt"
	"log"

	tungo "github.com/TungoAI/tungo-sdk-go"
)

func main() {
	// кілт TUNGO_API_KEY айнымалысынан алынады; компания — TUNGO_COMPANY_ID айнымалысынан
	client := tungo.NewClient()

	turn, err := client.Ask(context.Background(), "Соңғы өткізудің ҚҚС-ы қандай?")
	if err != nil {
		log.Fatal(err)
	}
	fmt.Println(turn.Answer)
}
```

```rust Rust theme={null}
use tungo_sdk::Tungo;

#[tokio::main]
async fn main() -> tungo_sdk::Result<()> {
    // кілт TUNGO_API_KEY айнымалысынан алынады
    let client = Tungo::builder().company_id("co_…").build()?;

    let turn = client.ask("Соңғы өткізудің ҚҚС-ы қандай?").await?;
    println!("{}", turn.answer);
    Ok(())
}
```

```php PHP theme={null}
use Tungo\Sdk\TungoClient;

// кілт TUNGO_API_KEY айнымалысынан алынады
$client = new TungoClient(companyId: 'co_…');

$turn = $client->ask('Соңғы өткізудің ҚҚС-ы қандай?');
echo $turn->answer, PHP_EOL;
```

```ruby Ruby theme={null}
require "tungo"

client = Tungo::Client.new(api_key: ENV.fetch("TUNGO_API_KEY"), company_id: "co_…")

result = client.ask("Соңғы өткізудің ҚҚС-ы қандай?")
puts result.answer
```

```csharp .NET theme={null}
using Tungo.Sdk;

// кілт TUNGO_API_KEY айнымалысынан алынады
using var client = new TungoClient(new TungoClientOptions { CompanyId = "co_…" });

var turn = await client.AskAsync("Соңғы өткізудің ҚҚС-ы қандай?");
Console.WriteLine(turn.Answer);
```

```java Java theme={null}
// кілт TUNGO_API_KEY айнымалысынан алынады
TungoClient client = TungoClient.builder().build();

ChatTurnResult turn = client.ask("co_…", "Соңғы өткізудің ҚҚС-ы қандай?");
System.out.println(turn.answer());
```

```kotlin Kotlin theme={null}
import kz.tungo.sdk.kotlin.TungoClient
import kz.tungo.sdk.kotlin.resources.ask

suspend fun main() {
    val client = TungoClient() // кілт TUNGO_API_KEY айнымалысынан алынады

    val turn = client.chat.ask("Соңғы өткізудің ҚҚС-ы қандай?", companyId = "co_…")
    println(turn.answer)

    client.close()
}
```

```swift Swift theme={null}
import TungoSDK

let client = TungoClient(apiKey: "tg_…", companyID: "co_…")

let reply = try await client.ask("Соңғы өткізудің ҚҚС-ы қандай?")
print(reply.answer)
```

## Баптаулар

Әр баптауды клиентті жасағанда беруге болады. Олардың үшеуін бермесеңіз, кітапхана орта айнымалыларынан оқиды.

| Айнымалы | Нені береді |
| - | - |
| `TUNGO_API_KEY` | API кілті |
| `TUNGO_BASE_URL` | API мекенжайы, әдепкіде `https://api.tungo.kz` |
| `TUNGO_WEBHOOK_SECRET` | Вебхук қолтаңбасын тексеруге арналған құпия |

Go, PHP, Ruby, .NET, Kotlin және Swift кітапханалары `TUNGO_COMPANY_ID` айнымалысын да оқиды — бұл әр шақыруда бермеу үшін қойылатын әдепкі компания.

Бір клиентті іске қосқанда жасап, бірнеше ағыннан қолдануға болады. Желі іркілсе, кітапхана сұрауды өзі қайталайды, ал вебхук қолтаңбасын бір шақырумен тексереді: [Оқиғаларды алу (вебхуктар)](https://docs.tungo.kz/kk/platform/webhooks.md) бетін қараңыз.

## Әрі қарай

* [Алғашқы сұрауды жіберу](https://docs.tungo.kz/kk/platform/first-request.md): сол қадамдар кітапханасыз, жауапты талдаумен.
* [Қателер мен шектеулер](https://docs.tungo.kz/kk/platform/errors-and-limits.md): кітапхана қандай бас тартуларды қайтарады және олармен не істеу керек.
* [ЖИ-көмекшілерге арналған құжаттама (MCP)](https://docs.tungo.kz/kk/platform/mcp.md): Claude немесе Cursor Tungo-ға код жазуы үшін осы құжаттаманы оларға қосыңыз.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.