Merge branch 'Master' into 'Pipedrive-OAuth2-support'

This commit is contained in:
ricardo
2020-07-23 16:51:05 -04:00
parent c1b4c570fd
commit b187a8fd7d
271 changed files with 17019 additions and 2796 deletions

View File

@@ -0,0 +1,17 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
export class CircleCiApi implements ICredentialType {
name = 'circleCiApi';
displayName = 'CircleCI API';
properties = [
{
displayName: 'Personal API Token',
name: 'apiKey',
type: 'string' as NodePropertyTypes,
default: '',
},
];
}

View File

@@ -0,0 +1,69 @@
import { ICredentialType, NodePropertyTypes } from 'n8n-workflow';
export class CrateDb implements ICredentialType {
name = 'crateDb';
displayName = 'CrateDB';
properties = [
{
displayName: 'Host',
name: 'host',
type: 'string' as NodePropertyTypes,
default: 'localhost',
},
{
displayName: 'Database',
name: 'database',
type: 'string' as NodePropertyTypes,
default: 'doc',
},
{
displayName: 'User',
name: 'user',
type: 'string' as NodePropertyTypes,
default: 'crate',
},
{
displayName: 'Password',
name: 'password',
type: 'string' as NodePropertyTypes,
typeOptions: {
password: true,
},
default: '',
},
{
displayName: 'SSL',
name: 'ssl',
type: 'options' as NodePropertyTypes,
options: [
{
name: 'disable',
value: 'disable',
},
{
name: 'allow',
value: 'allow',
},
{
name: 'require',
value: 'require',
},
{
name: 'verify (not implemented)',
value: 'verify',
},
{
name: 'verify-full (not implemented)',
value: 'verify-full',
},
],
default: 'disable',
},
{
displayName: 'Port',
name: 'port',
type: 'number' as NodePropertyTypes,
default: 5432,
},
];
}

View File

@@ -0,0 +1,47 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
export class DriftOAuth2Api implements ICredentialType {
name = 'driftOAuth2Api';
extends = [
'oAuth2Api',
];
displayName = 'Drift OAuth2 API';
properties = [
{
displayName: 'Authorization URL',
name: 'authUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://dev.drift.com/authorize',
required: true,
},
{
displayName: 'Access Token URL',
name: 'accessTokenUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://driftapi.com/oauth2/token',
required: true,
},
{
displayName: 'Auth URI Query Parameters',
name: 'authQueryParameters',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Authentication',
name: 'authentication',
type: 'hidden' as NodePropertyTypes,
default: 'body',
},
];
}

View File

@@ -8,7 +8,7 @@ export class EventbriteApi implements ICredentialType {
displayName = 'Eventbrite API';
properties = [
{
displayName: 'API Key',
displayName: 'Private Key',
name: 'apiKey',
type: 'string' as NodePropertyTypes,
default: '',

View File

@@ -0,0 +1,47 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
export class EventbriteOAuth2Api implements ICredentialType {
name = 'eventbriteOAuth2Api';
extends = [
'oAuth2Api',
];
displayName = 'Eventbrite OAuth2 API';
properties = [
{
displayName: 'Authorization URL',
name: 'authUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://www.eventbrite.com/oauth/authorize',
required: true,
},
{
displayName: 'Access Token URL',
name: 'accessTokenUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://www.eventbrite.com/oauth/token',
required: true,
},
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Auth URI Query Parameters',
name: 'authQueryParameters',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Authentication',
name: 'authentication',
type: 'hidden' as NodePropertyTypes,
default: 'body'
},
];
}

View File

@@ -0,0 +1,53 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
export class GitlabOAuth2Api implements ICredentialType {
name = 'gitlabOAuth2Api';
extends = [
'oAuth2Api',
];
displayName = 'Gitlab OAuth2 API';
properties = [
{
displayName: 'Gitlab Server',
name: 'server',
type: 'string' as NodePropertyTypes,
default: 'https://gitlab.com'
},
{
displayName: 'Authorization URL',
name: 'authUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://gitlab.com/oauth/authorize',
required: true,
},
{
displayName: 'Access Token URL',
name: 'accessTokenUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://gitlab.com/oauth/token',
required: true,
},
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: 'api',
},
{
displayName: 'Auth URI Query Parameters',
name: 'authQueryParameters',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Authentication',
name: 'authentication',
type: 'hidden' as NodePropertyTypes,
default: 'body',
},
];
}

View File

@@ -0,0 +1,26 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
const scopes = [
'https://www.googleapis.com/auth/drive',
'https://www.googleapis.com/auth/drive.appdata',
'https://www.googleapis.com/auth/drive.photos.readonly',
];
export class GoogleDriveOAuth2Api implements ICredentialType {
name = 'googleDriveOAuth2Api';
extends = [
'googleOAuth2Api',
];
displayName = 'Google Drive OAuth2 API';
properties = [
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: scopes.join(' '),
},
];
}

View File

@@ -0,0 +1,22 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
const scopes = [
'https://www.googleapis.com/auth/tasks',
];
export class GoogleTasksOAuth2Api implements ICredentialType {
name = 'googleTasksOAuth2Api';
extends = ['googleOAuth2Api'];
displayName = 'Google Tasks OAuth2 API';
properties = [
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: scopes.join(' ')
},
];
}

View File

@@ -0,0 +1,53 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
const scopes = [
'contacts',
'forms',
'tickets',
];
export class HubspotOAuth2Api implements ICredentialType {
name = 'hubspotOAuth2Api';
extends = [
'oAuth2Api',
];
displayName = 'Hubspot OAuth2 API';
properties = [
{
displayName: 'Authorization URL',
name: 'authUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://app.hubspot.com/oauth/authorize',
required: true,
},
{
displayName: 'Access Token URL',
name: 'accessTokenUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://api.hubapi.com/oauth/v1/token',
required: true,
},
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: scopes.join(' '),
},
{
displayName: 'Auth URI Query Parameters',
name: 'authQueryParameters',
type: 'hidden' as NodePropertyTypes,
default: 'grant_type=authorization_code',
},
{
displayName: 'Authentication',
name: 'authentication',
type: 'hidden' as NodePropertyTypes,
default: 'body',
description: 'Resource to consume.',
},
];
}

View File

@@ -0,0 +1,54 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
export class MailchimpOAuth2Api implements ICredentialType {
name = 'mailchimpOAuth2Api';
extends = [
'oAuth2Api',
];
displayName = 'Mailchimp OAuth2 API';
properties = [
{
displayName: 'Authorization URL',
name: 'authUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://login.mailchimp.com/oauth2/authorize',
required: true,
},
{
displayName: 'Access Token URL',
name: 'accessTokenUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://login.mailchimp.com/oauth2/token',
required: true,
},
{
displayName: 'Metadata',
name: 'metadataUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://login.mailchimp.com/oauth2/metadata',
required: true,
},
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Auth URI Query Parameters',
name: 'authQueryParameters',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Authentication',
name: 'authentication',
type: 'hidden' as NodePropertyTypes,
default: 'header',
},
];
}

View File

@@ -0,0 +1,55 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
export class MauticOAuth2Api implements ICredentialType {
name = 'mauticOAuth2Api';
extends = [
'oAuth2Api',
];
displayName = 'Mautic OAuth2 API';
properties = [
{
displayName: 'URL',
name: 'url',
type: 'string' as NodePropertyTypes,
default: '',
placeholder: 'https://name.mautic.net',
},
{
displayName: 'Authorization URL',
name: 'authUrl',
type: 'string' as NodePropertyTypes,
default: '',
placeholder: 'https://name.mautic.net/oauth/v2/authorize',
required: true,
},
{
displayName: 'Access Token URL',
name: 'accessTokenUrl',
type: 'string' as NodePropertyTypes,
default: '',
placeholder: 'https://name.mautic.net/oauth/v2/token',
required: true,
},
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Auth URI Query Parameters',
name: 'authQueryParameters',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Authentication',
name: 'authentication',
type: 'hidden' as NodePropertyTypes,
default: 'header',
},
];
}

View File

@@ -0,0 +1,14 @@
import { ICredentialType, NodePropertyTypes } from 'n8n-workflow';
export class MessageBirdApi implements ICredentialType {
name = 'messageBirdApi';
displayName = 'MessageBird API';
properties = [
{
displayName: 'API Key',
name: 'accessKey',
type: 'string' as NodePropertyTypes,
default: ''
}
];
}

View File

@@ -0,0 +1,47 @@
import { ICredentialType, NodePropertyTypes } from 'n8n-workflow';
export class MicrosoftSql implements ICredentialType {
name = 'microsoftSql';
displayName = 'Microsoft SQL';
properties = [
{
displayName: 'Server',
name: 'server',
type: 'string' as NodePropertyTypes,
default: 'localhost'
},
{
displayName: 'Database',
name: 'database',
type: 'string' as NodePropertyTypes,
default: 'master'
},
{
displayName: 'User',
name: 'user',
type: 'string' as NodePropertyTypes,
default: 'sa'
},
{
displayName: 'Password',
name: 'password',
type: 'string' as NodePropertyTypes,
typeOptions: {
password: true
},
default: ''
},
{
displayName: 'Port',
name: 'port',
type: 'number' as NodePropertyTypes,
default: 1433
},
{
displayName: 'Domain',
name: 'domain',
type: 'string' as NodePropertyTypes,
default: ''
}
];
}

View File

@@ -12,7 +12,7 @@ export class NextCloudApi implements ICredentialType {
displayName: 'Web DAV URL',
name: 'webDavUrl',
type: 'string' as NodePropertyTypes,
placeholder: 'https://nextcloud.example.com/remote.php/webdav/',
placeholder: 'https://nextcloud.example.com/remote.php/webdav',
default: '',
},
{

View File

@@ -0,0 +1,54 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
export class NextCloudOAuth2Api implements ICredentialType {
name = 'nextCloudOAuth2Api';
extends = [
'oAuth2Api',
];
displayName = 'NextCloud OAuth2 API';
properties = [
{
displayName: 'Web DAV URL',
name: 'webDavUrl',
type: 'string' as NodePropertyTypes,
placeholder: 'https://nextcloud.example.com/remote.php/webdav',
default: '',
},
{
displayName: 'Authorization URL',
name: 'authUrl',
type: 'string' as NodePropertyTypes,
default: 'https://nextcloud.example.com/apps/oauth2/authorize',
required: true,
},
{
displayName: 'Access Token URL',
name: 'accessTokenUrl',
type: 'string' as NodePropertyTypes,
default: 'https://nextcloud.example.com/apps/oauth2/api/v1/token',
required: true,
},
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Auth URI Query Parameters',
name: 'authQueryParameters',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Authentication',
name: 'authentication',
type: 'hidden' as NodePropertyTypes,
default: 'body',
},
];
}

View File

@@ -0,0 +1,45 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
export class PagerDutyOAuth2Api implements ICredentialType {
name = 'pagerDutyOAuth2Api';
extends = [
'oAuth2Api',
];
displayName = 'PagerDuty OAuth2 API';
properties = [
{
displayName: 'Authorization URL',
name: 'authUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://app.pagerduty.com/oauth/authorize',
},
{
displayName: 'Access Token URL',
name: 'accessTokenUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://app.pagerduty.com/oauth/token',
},
{
displayName: 'Auth URI Query Parameters',
name: 'authQueryParameters',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Authentication',
name: 'authentication',
type: 'hidden' as NodePropertyTypes,
default: 'header',
description: 'Method of authentication.',
},
];
}

View File

@@ -3,7 +3,6 @@ import {
NodePropertyTypes,
} from 'n8n-workflow';
export class PipedriveOAuth2Api implements ICredentialType {
name = 'pipedriveOAuth2Api';
extends = [
@@ -28,7 +27,7 @@ export class PipedriveOAuth2Api implements ICredentialType {
{
displayName: 'Scope',
name: 'scope',
type: 'string' as NodePropertyTypes,
type: 'hidden' as NodePropertyTypes,
default: '',
},
{

View File

@@ -0,0 +1,18 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
export class PostmarkApi implements ICredentialType {
name = 'postmarkApi';
displayName = 'Postmark API';
properties = [
{
displayName: 'Server API Token',
name: 'serverToken',
type: 'string' as NodePropertyTypes,
default: '',
},
];
}

View File

@@ -0,0 +1,69 @@
import { ICredentialType, NodePropertyTypes } from 'n8n-workflow';
export class QuestDb implements ICredentialType {
name = 'questDb';
displayName = 'QuestDB';
properties = [
{
displayName: 'Host',
name: 'host',
type: 'string' as NodePropertyTypes,
default: 'localhost',
},
{
displayName: 'Database',
name: 'database',
type: 'string' as NodePropertyTypes,
default: 'qdb',
},
{
displayName: 'User',
name: 'user',
type: 'string' as NodePropertyTypes,
default: 'admin',
},
{
displayName: 'Password',
name: 'password',
type: 'string' as NodePropertyTypes,
typeOptions: {
password: true,
},
default: 'quest',
},
{
displayName: 'SSL',
name: 'ssl',
type: 'options' as NodePropertyTypes,
options: [
{
name: 'disable',
value: 'disable',
},
{
name: 'allow',
value: 'allow',
},
{
name: 'require',
value: 'require',
},
{
name: 'verify (not implemented)',
value: 'verify',
},
{
name: 'verify-full (not implemented)',
value: 'verify-full',
},
],
default: 'disable',
},
{
displayName: 'Port',
name: 'port',
type: 'number' as NodePropertyTypes,
default: 8812,
},
];
}

View File

@@ -0,0 +1,18 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
export class Signl4Api implements ICredentialType {
name = 'signl4Api';
displayName = 'SIGNL4 Webhook';
properties = [
{
displayName: 'Team Secret',
name: 'teamSecret',
type: 'string' as NodePropertyTypes,
default: '',
description: 'The team secret is the last part of your SIGNL4 webhook URL.'
},
];
}

View File

@@ -6,15 +6,12 @@ import {
//https://api.slack.com/authentication/oauth-v2
const userScopes = [
'chat:write',
'conversations:history',
'conversations:read',
'files:read',
'files:write',
'stars:read',
'stars:write',
];
export class SlackOAuth2Api implements ICredentialType {
name = 'slackOAuth2Api';
extends = [

View File

@@ -0,0 +1,53 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
export class SpotifyOAuth2Api implements ICredentialType {
name = 'spotifyOAuth2Api';
extends = [
'oAuth2Api',
];
displayName = 'Spotify OAuth2 API';
properties = [
{
displayName: 'Spotify Server',
name: 'server',
type: 'hidden' as NodePropertyTypes,
default: 'https://api.spotify.com/',
},
{
displayName: 'Authorization URL',
name: 'authUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://accounts.spotify.com/authorize',
required: true,
},
{
displayName: 'Access Token URL',
name: 'accessTokenUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://accounts.spotify.com/api/token',
required: true,
},
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: 'user-read-playback-state playlist-read-collaborative user-modify-playback-state playlist-modify-public user-read-currently-playing playlist-read-private user-read-recently-played playlist-modify-private',
},
{
displayName: 'Auth URI Query Parameters',
name: 'authQueryParameters',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Authentication',
name: 'authentication',
type: 'hidden' as NodePropertyTypes,
default: 'header',
}
];
}

View File

@@ -0,0 +1,55 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
const scopes = [
'surveys_read',
'collectors_read',
'responses_read',
'responses_read_detail',
'webhooks_write',
'webhooks_read',
];
export class SurveyMonkeyOAuth2Api implements ICredentialType {
name = 'surveyMonkeyOAuth2Api';
extends = [
'oAuth2Api',
];
displayName = 'SurveyMonkey OAuth2 API';
properties = [
{
displayName: 'Authorization URL',
name: 'authUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://api.surveymonkey.com/oauth/authorize',
required: true,
},
{
displayName: 'Access Token URL',
name: 'accessTokenUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://api.surveymonkey.com/oauth/token',
required: true,
},
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: scopes.join(','),
},
{
displayName: 'Auth URI Query Parameters',
name: 'authQueryParameters',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Authentication',
name: 'authentication',
type: 'hidden' as NodePropertyTypes,
default: 'body'
},
];
}

View File

@@ -0,0 +1,53 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
const scopes = [
'webhooks:write',
'webhooks:read',
'forms:read',
];
export class TypeformOAuth2Api implements ICredentialType {
name = 'typeformOAuth2Api';
extends = [
'oAuth2Api',
];
displayName = 'Typeform OAuth2 API';
properties = [
{
displayName: 'Authorization URL',
name: 'authUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://api.typeform.com/oauth/authorize',
required: true,
},
{
displayName: 'Access Token URL',
name: 'accessTokenUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://api.typeform.com/oauth/token',
required: true,
},
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: scopes.join(','),
},
{
displayName: 'Auth URI Query Parameters',
name: 'authQueryParameters',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Authentication',
name: 'authentication',
type: 'hidden' as NodePropertyTypes,
default: 'header',
},
];
}

View File

@@ -0,0 +1,50 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
export class WebflowOAuth2Api implements ICredentialType {
name = 'webflowOAuth2Api';
extends = [
'oAuth2Api',
];
displayName = 'Webflow OAuth2 API';
properties = [
{
displayName: 'Authorization URL',
name: 'authUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://webflow.com/oauth/authorize',
required: true,
},
{
displayName: 'Access Token URL',
name: 'accessTokenUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://api.webflow.com/oauth/access_token',
required: true,
},
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Auth URI Query Parameters',
name: 'authQueryParameters',
type: 'hidden' as NodePropertyTypes,
default: '',
description: 'For some services additional query parameters have to be set which can be defined here.',
placeholder: '',
},
{
displayName: 'Authentication',
name: 'authentication',
type: 'hidden' as NodePropertyTypes,
default: 'body',
description: '',
},
];
}

View File

@@ -0,0 +1,51 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
const scopes = [
'offline_access',
'accounting.transactions',
'accounting.settings',
'accounting.contacts',
];
export class XeroOAuth2Api implements ICredentialType {
name = 'xeroOAuth2Api';
extends = [
'oAuth2Api',
];
displayName = 'Xero OAuth2 API';
properties = [
{
displayName: 'Authorization URL',
name: 'authUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://login.xero.com/identity/connect/authorize',
},
{
displayName: 'Access Token URL',
name: 'accessTokenUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://identity.xero.com/connect/token',
},
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: scopes.join(' '),
},
{
displayName: 'Auth URI Query Parameters',
name: 'authQueryParameters',
type: 'hidden' as NodePropertyTypes,
default: '',
},
{
displayName: 'Authentication',
name: 'authentication',
type: 'hidden' as NodePropertyTypes,
default: 'header',
},
];
}

View File

@@ -8,10 +8,11 @@ export class ZendeskApi implements ICredentialType {
displayName = 'Zendesk API';
properties = [
{
displayName: 'URL',
name: 'url',
displayName: 'Subdomain',
name: 'subdomain',
type: 'string' as NodePropertyTypes,
default: '',
description: 'The subdomain of your Zendesk work environment.',
default: 'n8n',
},
{
displayName: 'Email',

View File

@@ -0,0 +1,79 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
const scopes = [
'read',
'write',
];
export class ZendeskOAuth2Api implements ICredentialType {
name = 'zendeskOAuth2Api';
extends = [
'oAuth2Api',
];
displayName = 'Zendesk OAuth2 API';
properties = [
{
displayName: 'Subdomain',
name: 'subdomain',
type: 'string' as NodePropertyTypes,
default: '',
placeholder: 'n8n',
description: 'The subdomain of your Zendesk work environment.',
required: true,
},
{
displayName: 'Authorization URL',
name: 'authUrl',
type: 'string' as NodePropertyTypes,
default: 'https://{SUBDOMAIN_HERE}.zendesk.com/oauth/authorizations/new',
description: 'URL to get authorization code. Replace {SUBDOMAIN_HERE} with your subdomain.',
required: true,
},
{
displayName: 'Access Token URL',
name: 'accessTokenUrl',
type: 'string' as NodePropertyTypes,
default: 'https://{SUBDOMAIN_HERE}.zendesk.com/oauth/tokens',
description: 'URL to get access token. Replace {SUBDOMAIN_HERE} with your subdomain.',
required: true,
},
{
displayName: 'Client ID',
name: 'clientId',
type: 'string' as NodePropertyTypes,
default: '',
required: true,
},
{
displayName: 'Client Secret',
name: 'clientSecret',
type: 'string' as NodePropertyTypes,
default: '',
required: true,
},
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: scopes.join(' '),
},
{
displayName: 'Auth URI Query Parameters',
name: 'authQueryParameters',
type: 'hidden' as NodePropertyTypes,
default: '',
description: 'For some services additional query parameters have to be set which can be defined here.',
placeholder: '',
},
{
displayName: 'Authentication',
name: 'authentication',
type: 'hidden' as NodePropertyTypes,
default: 'body',
description: 'Resource to consume.',
},
];
}

View File

@@ -0,0 +1,14 @@
import { ICredentialType, NodePropertyTypes } from 'n8n-workflow';
export class ZoomApi implements ICredentialType {
name = 'zoomApi';
displayName = 'Zoom API';
properties = [
{
displayName: 'JWT Token',
name: 'accessToken',
type: 'string' as NodePropertyTypes,
default: ''
}
];
}

View File

@@ -0,0 +1,42 @@
import {
ICredentialType,
NodePropertyTypes,
} from 'n8n-workflow';
export class ZoomOAuth2Api implements ICredentialType {
name = 'zoomOAuth2Api';
extends = ['oAuth2Api'];
displayName = 'Zoom OAuth2 API';
properties = [
{
displayName: 'Authorization URL',
name: 'authUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://zoom.us/oauth/authorize'
},
{
displayName: 'Access Token URL',
name: 'accessTokenUrl',
type: 'hidden' as NodePropertyTypes,
default: 'https://zoom.us/oauth/token'
},
{
displayName: 'Scope',
name: 'scope',
type: 'hidden' as NodePropertyTypes,
default: ''
},
{
displayName: 'Auth URI Query Parameters',
name: 'authQueryParameters',
type: 'hidden' as NodePropertyTypes,
default: ''
},
{
displayName: 'Authentication',
name: 'authentication',
type: 'hidden' as NodePropertyTypes,
default: 'header'
}
];
}