Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

microsoft-translate-api

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

microsoft-translate-api

A simple, powerful and free API for Microsoft Translator for Node.js

  • 1.1.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

Microsoft Translate API

NPM version Auto Test Build NPM Downloads License

A stable and powerful zero-dependency free translator for Microsoft Translator designed for Node.js.

Install

NPM

npm install microsoft-translate-api

Bun

bun add microsoft-translate-api

Basic Usage

Translate from Auto-Detected Language to Another Language
const { translate } = require('microsoft-translate-api')

translate('你好,很高兴认识你!', null, 'en').then(res => {
  console.log(res);
}).catch(err => {
  console.error(err);
});
Translation result
[
  {
    "detectedLanguage": {
      "language": "zh-Hans",
      "score": 1
    },
    "translations": [
      {
        "text": "Hello, nice to meet you!",
        "to": "en"
      }
    ]
  }
]
Translate from Auto-Detected Language to Multiple Languages
const { translate } = require('microsoft-translate-api')

translate('你好,很高兴认识你!', null, ['en', 'ja']).then(res => {
  console.log(res);
}).catch(err => {
  console.error(err);
});
Translation result
[
  {
    "detectedLanguage": {
      "language": "zh-Hans",
      "score": 1
    },
    "translations": [
      {
        "text": "Hello, nice to meet you!",
        "to": "en"
      },
      {
        "text": "こんにちは、はじめまして!",
        "to": "ja"
      }
    ]
  }
]
Translate HTML text
const { translate } = require('microsoft-translate-api')

const htmlText = `
  <div class="notranslate">This will not be translated.</div>
  <div>This will be translated.</div>
`;
translate(htmlText, null, 'zh-Hans', {
  translateOptions: {
    // Explicitly set textType as `html`. Defaults to `plain`.
    textType: 'html'
  }
}).then(res => {
  console.log(res);
}).catch(err => {
  console.error(err);
});
Translation result
[
  {
    "detectedLanguage": {
      "language": "en",
      "score": 1
    },
    "translations": [
      {
        "text": "<div class=\"notranslate\">This will not be translated.</div>\n<div>这将被翻译。</div>",
        "to": "zh-Hans"
      }
    ]
  }
]

Optional Translation Options

Reference

interface TranslateOptions {
  translateOptions?: Record<string, object>;
  authenticationHeaders?: Record<string, string>;
  userAgent?: string;
  fetchOptions?: RequestInit;
}

Full Translation Results

Reference

interface TranslationResult {
  translations: {
    text: string;
    to: string;
    sentLen?: {
      srcSentLen: number[];
      transSentLen: number[];
    };
    transliteration?: {
      script: string;
      text: string;
    };
    alignment?: object;
  }[];
  detectedLanguage?: {
    language: string;
    score: number;
  };
}

Supported Languages

Refer to lang.json.

Service Limits

https://learn.microsoft.com/azure/ai-services/translator/service-limits#character-and-array-limits-per-request

[!NOTE] Note that the correction service is not available.

Use Paid Service With Your Private Keys

const { translate } = require('microsoft-translate-api')

translate('你好,很高兴认识你!', null, 'en', {
  authenticationHeaders: {
    // Use private subscription key
    'Ocp-Apim-Subscription-Key': 'YOUR KEY',
    // Or use a JWT token
    'Authorization': 'YOUR TOKEN'
  }
}).then(res => {
  console.log(res);
}).catch(err => {
  console.error(err);
});

See also https://learn.microsoft.com/azure/ai-services/translator/reference/v3-0-reference#authentication

[!NOTE] Note that using your private keys, the translator will skip to fetch the free authorization and you will have to check if the authorization is expired by yourself.

Credits

bing-translate-api - This package literally would never exist without this.

Keywords

FAQs

Package last updated on 01 Jun 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc