Service Api's


package main

import (
	"encoding/json"
	"fmt"
	"net/http"
	"net/url"
	"os"
)

var LANG = `
auto - deteksi otomatis, af - Afrikaans, sq - Albania, am - Amharik, ar - Arab, hy - Armenia,
az - Azerbaijan, eu - Basque, be - Belarus, bn - Bengali, bs - Bosnia, bg - Bulgaria, ca - Catalan,
ceb - Cebuano, zh-CN - Cina (Sederhana), zh-TW - Cina (Tradisional), co - Corsika, hr - Kroasia,
cs - Ceko, da - Denmark, nl - Belanda, en - Inggris, eo - Esperanto, et - Estonia, tl - Filipina,
fi - Finlandia, fr - Perancis, fy - Frisia, gl - Galicia, ka - Georgia, de - Jerman, el - Yunani,
gu - Gujarat, ht - Haiti Kreol, ha - Hausa, haw - Hawaii, iw atau he - Ibrani, hi - Hindi,
hmn - Hmong, hu - Hongaria, is - Islandia, ig - Igbo, id - Indonesia, ga - Irlandia, it - Italia,
ja - Jepang, jw - Jawa, kn - Kannada, kk - Kazakh, km - Khmer, ko - Korea, ku - Kurdi, ky - Kirgiz,
lo - Laos, la - Latin, lv - Latvia, lt - Lituania, lb - Luxembourgish, mk - Makedonia, mg - Malagasi,
ms - Melayu, ml - Malayalam, mt - Malta, mi - Maori, mr - Marathi, mn - Mongolia, my - Myanmar (Burma),
ne - Nepali, no - Norwegia, ny - Nyanja, or - Odia (Oriya), ps - Pashto, fa - Persia, pl - Polandia,
pt - Portugis, pa - Punjabi, ro - Rumania, ru - Rusia, sm - Samoa, gd - Skotlandia Gaelik, sr - Serbia,
st - Sesotho, sn - Shona, sd - Sindhi, si - Sinhala, sk - Slovak, sl - Slovenia, so - Somalia,
es - Spanyol, su - Sunda, sw - Swahili, sv - Swedia, tg - Tajik, ta - Tamil, te - Telugu, th - Thailand,
tr - Turki, uk - Ukraina, ur - Urdu, uz - Uzbek, vi - Vietnam, cy - Welsh, xh - Xhosa, yi - Yiddish,
yo - Yoruba, zu - Zulu
`

const (
	APIKey   = "YOUR_API"
	Text     = "aku sayang kamu"
	FromLang = "id"
	ToLang   = "en"
	Endpoint = "https://senpai-bot.store/translate"
)

func main() {
	encodedText := url.QueryEscape(Text)
	fullURL := fmt.Sprintf("%s?apikey=%s&text=%s&from=%s&to=%s", Endpoint, APIKey, encodedText, FromLang, ToLang)

	resp, err := http.Get(fullURL)
	if err != nil {
		fmt.Println("Gagal request:", err)
		os.Exit(1)
	}
	defer resp.Body.Close()

	if resp.StatusCode != http.StatusOK {
		fmt.Printf("API mengembalikan kode error: %d\n", resp.StatusCode)
		os.Exit(1)
	}

	var result struct {
		Code    int    `json:"code"`
		Result  string `json:"result"`
		Message string `json:"message"`
	}

	err = json.NewDecoder(resp.Body).Decode(&result)
	if err != nil {
		fmt.Println("Gagal parsing JSON:", err)
		os.Exit(1)
	}

	if result.Code != 200 {
		fmt.Printf("API error code: %d - %s\n", result.Code, result.Message)
		os.Exit(1)
	}

	if result.Result != "" {
		fmt.Println("Hasil Terjemahan:")
		fmt.Println(result.Result)
	} else {
		fmt.Println("Tidak ada hasil ditemukan.")
	}
}