Lingara Lingara Dokumentasyon Mga gabay API Mga library Mga app Gumawa Web app
Wika: Filipino

Gumawa ng listahan ng bokabularyo

Bersyon ng API 2026-10-affable-towhee

post https://api.getlingara.com/v1/vocab/stream

Nag-i-stream ng listahan ng mga salita sa hiniling na antas. Ipinapadala ng stream ang started kasama ang mga detalye ng listahan, isang item na event bawat salita, pagkatapos ay done. Hangga't hindi pa handa ang listahan, mga keepalive na komento lamang ang ipinapadala nito.

Mga scope vocab:generate

Mga parameter

Lingara-Versionheaderstringopsyonal
Ang bersyon ng API na gagamitin sa pagsagot sa kahilingang ito. Kung wala ito, makukuha ng access token ang bersyong naka-pin sa client nito, at makukuha ng kahilingang walang token ang kasalukuyang bersyon. Maaabot lang ang bersyong dine-develop pa sa pamamagitan ng pagpangalan dito. Ang hindi kilalang bersyon ay sinasagot ng 400 na may code na api_version_unknown. Inililista ng GET /v1/versions ang mga bersyon.

Katawan ng kahilingan application/json

levelintegerkailangan
source_langstringkailangan
target_langstringkailangan
countinteger | nullopsyonal

Mga tugon

200 Ang listahan, isang salita bawat event

Mga event ng stream text/event-stream

Nagpapadala ng keepalive na komento bawat 15 segundo.

started VocabStarted
metaVocabMetakailangan
levelintegerkailangan
source_langstringkailangan
target_langstringkailangan
frameworkstringkailangan
countintegerkailangan
ai_generatedbooleankailangan
item VocabItem
wordstringkailangan
pronunciationstring | nullopsyonal
readingstring | nullopsyonal
translationstringkailangan
exampleVocabExample | nullopsyonal
sentencestringkailangan
translationstringkailangan
image_urlstring | nullopsyonal
done Done Tinatapos ang stream
error StreamError Tinatapos ang stream

Dumarating sa loob ng 200 na tugon. Naipadala na ang status line, kaya ang pagkabigo matapos mabuksan ang stream ay iniuulat bilang event na ito.

codestringkailangan
messagestringkailangan
plan_idstring | nullopsyonal

Mga error

402application/json
Tinanggihan ang tawag ng isang metered client bago ito nakagastos ng anuman. spend_cap_reached: naabot na ng client o ng account nito ang buwanang limitasyon sa paggastos; itaas ang limitasyon sa pahinang Mga integration. metered_billing_inactive: hindi aktibo ang usage billing para sa account na ito; i-set up ito, o i-update ang paraan ng pagbabayad, sa pahinang Mga integration.
410application/json
Itinigil na ang bersyon ng API na ginagamit sa pagsagot sa kahilingang ito. Magpadala ng suportadong bersyon sa Lingara-Version, o i-pin ang client sa ibang bersyon.
4XXapplication/json
Tinanggihan ang kahilingan. Sinasabi ng code kung bakit, at ipinapaliwanag ito ng error sa mga salita.
503application/json · text/plain
Pansamantalang hindi available ang serbisyo; subukang muli pagkatapos ng bilang ng segundong nasa Retry-After. Habang may maintenance, plain text ang body sa halip na ang error envelope.
5XXapplication/json
Tinanggihan ang kahilingan. Sinasabi ng code kung bakit, at ipinapaliwanag ito ng error sa mga salita.
codestringkailangan

Kung bakit tinanggihan ang request, bilang isang matatag na code na mapagbabatayan ng iyong programa: halimbawa insufficient_scope (403), rate_limited (429) at, para sa isang metered client, spend_cap_reached (402) at metered_billing_inactive (402).

errorstringkailangan

Halimbawa

Wika ng halimbawang code

curl

curl -N -X POST "https://api.getlingara.com/v1/vocab/stream" \
  -H "Authorization: Bearer $LINGARA_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"level":2,"source_lang":"en","target_lang":"zh","count":8}'

TypeScript

const stream = client.generateVocabulary({ level: 2, source_lang: "en", target_lang: "zh", count: 8 });
for await (const ev of stream) {
  if (ev.event === "item") console.log(ev.data.word, ev.data.translation);
}

Rust

use lingara::models::{GenerateVocabularyEvent, VocabRequest};
use std::num::NonZeroU8;

let request = VocabRequest { level: 2, source_lang: "en".into(), target_lang: "zh".into(), count: NonZeroU8::new(8) };
let mut stream = client.generate_vocabulary(&request).await?;
while let Some(event) = stream.next().await {
    if let GenerateVocabularyEvent::Item(item) = event? {
        println!("{} {}", item.word, item.translation);
    }
}

Go

count := uint8(8)
s, err := client.GenerateVocabulary(ctx, lingara.VocabRequest{Level: 2, SourceLang: "en", TargetLang: "zh", Count: &count})
if err != nil {
	return err
}
defer s.Close()
for ev, err := range s.Events() {
	if err != nil {
		return err
	}
	if item, ok := ev.(lingara.GenerateVocabularyEventItem); ok {
		fmt.Println(item.Data.Word, item.Data.Translation)
	}
}

Java

import com.getlingara.client.model.GenerateVocabularyEvent;
import com.getlingara.client.model.VocabRequest;

VocabRequest request = new VocabRequest().level(2).sourceLang("en").targetLang("zh").count(8);
try (EventStream<GenerateVocabularyEvent> stream = client.generateVocabulary(request)) {
  for (GenerateVocabularyEvent event : stream) {
    if (event instanceof GenerateVocabularyEvent.Item item) {
      System.out.println(item.data().getWord() + " " + item.data().getTranslation());
    }
  }
}

Kotlin

import com.getlingara.kotlin.LingaraClient
import com.getlingara.kotlin.model.GenerateVocabularyEvent
import com.getlingara.kotlin.model.VocabRequest

val request = VocabRequest(level = 2, sourceLang = "en", targetLang = "zh", count = 8)
// The request is sent here; collect the stream once, inside use {}.
client.generateVocabulary(request).use { stream ->
    stream.collect { event ->
        when (event) {
            is GenerateVocabularyEvent.Item -> println("${event.data.word} ${event.data.translation}")
            is GenerateVocabularyEvent.Started -> Unit
        }
    }
}

Ruby

client.generate_vocabulary(level: 2, source_lang: "en", target_lang: "zh", count: 8) do |event|
  case event
  in Lingara::GenerateVocabularyEventItem => item then puts "#{item.data.word}: #{item.data.translation}"
  else nil
  end
end

PHP

use Lingara\Model\VocabRequest;
use Lingara\Stream\GenerateVocabularyEvent;

$request = new VocabRequest(['level' => 2, 'source_lang' => 'en', 'target_lang' => 'zh', 'count' => 8]);
foreach ($client->generateVocabulary($request) as $event) {
    if ($event instanceof GenerateVocabularyEvent\Item) {
        echo $event->data->getWord(), ': ', $event->data->getTranslation(), "\n";
    }
}

Mas gusto ang library? Tingnan ang seksyong Mga library.

Halimbawang stream

event: started
data: {"meta":{"level":2,"source_lang":"en","target_lang":"zh","framework":"HSK","count":2,"ai_generated":true}}

event: item
data: {"word":"你好","pronunciation":"nǐ hǎo","translation":"hello","example":{"sentence":"你好,我叫小明。","translation":"Hello, my name is Xiaoming."}}

event: item
data: {"word":"谢谢","pronunciation":"xiè xie","translation":"thank you"}

event: done
data: {}

Kung magkaiba ang isang salin at ang sangguniang Ingles, ang sangguniang Ingles ang tama.