Add Free API support to DeepL Node (#1810)

This commit is contained in:
MedAliMarz
2021-05-30 19:33:43 +02:00
committed by GitHub
parent 1ec916e530
commit 07a9108e46
2 changed files with 26 additions and 7 deletions

View File

@@ -22,6 +22,15 @@ export async function deepLApiRequest(
headers: IDataObject = {},
) {
const proApiEndpoint = 'https://api.deepl.com/v2';
const freeApiEndpoint = 'https://api-free.deepl.com/v2';
const credentials = this.getCredentials('deepLApi');
if (credentials === undefined) {
throw new NodeOperationError(this.getNode(), 'No credentials got returned!');
}
const options: OptionsWithUri = {
headers: {
'Content-Type': 'application/json',
@@ -29,7 +38,7 @@ export async function deepLApiRequest(
method,
body,
qs,
uri: uri || `https://api.deepl.com/v2${resource}`,
uri: uri || `${credentials.apiPlan === 'pro' ? proApiEndpoint : freeApiEndpoint}${resource}`,
json: true,
};
@@ -42,12 +51,6 @@ export async function deepLApiRequest(
delete options.body;
}
const credentials = this.getCredentials('deepLApi');
if (credentials === undefined) {
throw new NodeOperationError(this.getNode(), 'No credentials got returned!');
}
options.qs.auth_key = credentials.apiKey;
return await this.helpers.request!(options);