Go online translation package
go get github.com/nuveo/translate
- Microsoft
 - or send us the next Translator API 😄
 
package main
import (
  "fmt"
  "log"
  "github.com/nuveo/translate"
)
func main() {
  // gettind your credentials here in: http://www.microsoft.com/translator/getstarted.aspx
  t := µsoft.AuthRequest{"client_id", "client_secret"}
  // Generate a token valid for 10 minutes
  tokenResponse := microsoft.GetAccessToken(t)
  text := "one two three"
  from := "en"
  to := "pt"
  toTranslate := µsoft.TextTranslate{
	Text: text, From: from, To: to, TokenResponse: tokenResponse,
  }
  // Get translate of text, return the word translated and error
  resp, err := microsoft.TranslateText(toTranslate)
  if err != nil {
	log.Println(err)
  }
  fmt.Println(resp) // um dois três
  texts := []string{"one two three", "the book on the table"}
  toTranslate.Texts = texts
  // or get translate of array of strings
  resps, err := microsoft.TranslateTexts(toTranslate)
  if err != nil {
	log.Println(err)
  }
  fmt.Println(resps) // [um dois três o livro em cima da mesa]
  // Detect the language of texts
  detect := []string{"mundo", "world", "monde"}
  toTranslate.Texts = detect
  respsD, err := microsoft.DetectText(toTranslate)
  if err != nil {
	log.Println(err)
  }
  fmt.Println(respsD, toTranslate.Texts) // [es en fr]
}Now Translate make cache of words translated.
  // to activate cache
  toTranslate := µsoft.TextTranslate{
	Text: text, From: from, To: to, TokenResponse: tokenResponse, Cache: true,
  }