import AOAuth2Application from 'pipes-nodejs-sdk/dist/lib/Authorization/Type/OAuth2/AOAuth2Application'; import ScopeSeparatorEnum from 'pipes-nodejs-sdk/dist/lib/Authorization/ScopeSeparatorEnum'; import { ApplicationInstall } from 'pipes-nodejs-sdk/dist/lib/Application/Database/ApplicationInstall'; import Form from 'pipes-nodejs-sdk/dist/lib/Application/Model/Form/Form'; import FieldType from 'pipes-nodejs-sdk/dist/lib/Application/Model/Form/FieldType'; import { CLIENT_ID, CLIENT_SECRET } from 'pipes-nodejs-sdk/dist/lib/Authorization/Type/OAuth2/IOAuth2Application'; import Field from 'pipes-nodejs-sdk/dist/lib/Application/Model/Form/Field'; import RequestDto from 'pipes-nodejs-sdk/dist/lib/Transport/Curl/RequestDto'; import ProcessDto from 'pipes-nodejs-sdk/dist/lib/Utils/ProcessDto'; import HttpMethods from 'pipes-nodejs-sdk/dist/lib/Transport/HttpMethods'; import { CommonHeaders, JSON_TYPE } from 'pipes-nodejs-sdk/dist/lib/Utils/Headers'; import { BodyInit } from 'node-fetch'; export default class ZohoApplication extends AOAuth2Application { public getAuthUrl = (): string => 'https://accounts.zoho.eu/oauth/v2/auth'; public getDescription = (): string => 'Zoho is a provider of a Customer Relationship Management (CRM) solution'; public getName = (): string => 'zoho'; public getPublicName = (): string => 'Zoho'; // eslint-disable-next-line max-len public getLogo = (): string => 'data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBBZG9iZSBJbGx1c3RyYXRvciAyNC4yLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHdpZHRoPSIxNTBweCIgaGVpZ2h0PSIxNTBweCIgdmlld0JveD0iMCAwIDE1MCAxNTAiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDE1MCAxNTAiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPHBhdGggZmlsbD0iI0U3OTIyNSIgZD0iTTE1MCw2MC4xNzZ2MzUuNTY2bC00LjkyMiw0LjgwNVY2NS43NDJMMTUwLDYwLjE3NnoiLz4NCgk8cGF0aCBmaWxsPSIjRkZGMTZEIiBkPSJNMTE3Ljc0NCw2MC4yMDVsLTUuMDk4LDUuNTM3bDAuMjY0LDAuMzUybDMxLjk2My0wLjExN2wwLjI5My0wLjIzNEwxNTAsNjAuMTc2TDExNy43NDQsNjAuMjA1DQoJCUwxMTcuNzQ0LDYwLjIwNXoiLz4NCgkNCgkJPGxpbmVhckdyYWRpZW50IGlkPSJTVkdJRF8xXyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSItMjM0Ljg4NDgiIHkxPSI0NzAuNDY4OSIgeDI9Ii0yMzQuODg0OCIgeTI9IjQ3MC40Mzc0IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDk4Ni40NTA3IDAgMCAtMTA1Ni42NTc2IDIzMTgzMS4xNTYyIDQ5NzE5MC43ODEyKSI+DQoJCTxzdG9wICBvZmZzZXQ9IjAuMDA1NiIgc3R5bGU9InN0b3AtY29sb3I6I0ZGRTUxMyIvPg0KCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojRkRCOTI0Ii8+DQoJPC9saW5lYXJHcmFkaWVudD4NCgk8cGF0aCBmaWxsPSJ1cmwoI1NWR0lEXzFfKSIgZD0iTTExMi42NDYsNjUuNzQyaDMyLjUydjM0LjgzNGgtMzIuNTJWNjUuNzQyeiIvPg0KCTxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik0xNDAuMjE1LDc4LjI4MWMtMC42NDUtMS42MTEtMS42MTEtMy4wNzYtMi44NzEtNC4zMzZjLTEuMjAxLTEuMjMtMi41NDktMi4xNjgtNC4wNzItMi43ODMNCgkJYy0xLjQ5NC0wLjYxNS0zLjEwNS0wLjkzOC00Ljg2My0wLjkzOGMtMS43NTgsMC0zLjM5OCwwLjMyMi00Ljg5MywwLjkzOGMtMS41MjMsMC42MTUtMi44NzEsMS41NTMtNC4wNzIsMi43ODMNCgkJYy0xLjI2LDEuMjYtMi4xOTcsMi43MjUtMi44NDIsNC4zMzZzLTAuOTM4LDMuMzY5LTAuOTM4LDUuMzAzYzAsMS44NzUsMC4zMjIsMy42MzMsMC45NjcsNS4yNzMNCgkJYzAuNjQ1LDEuNjQxLDEuNTgyLDMuMTA1LDIuODQyLDQuMzk1YzEuMTcyLDEuMjAxLDIuNTIsMi4xMDksNC4wMTQsMi43MjVzMy4xNjQsMC45MzgsNC45NTEsMC45MzhjMS43MjksMCwzLjM0LTAuMzIyLDQuODM0LTAuOTM4DQoJCWMxLjQ5NC0wLjYxNSwyLjg3MS0xLjUyMyw0LjA3Mi0yLjcyNWMxLjI2LTEuMjg5LDIuMjI3LTIuNzU0LDIuODcxLTQuMzY1czAuOTY3LTMuMzk4LDAuOTY3LTUuMjczDQoJCUMxNDEuMTgyLDgxLjY1LDE0MC44NTksNzkuODkzLDE0MC4yMTUsNzguMjgxTDE0MC4yMTUsNzguMjgxeiBNMTMzLjUwNiw4OS43NjZjLTEuMjYsMS40OTQtMi45MywyLjI1Ni01LjA5OCwyLjI1Ng0KCQljLTIuMTY4LDAtMy44NjctMC43NjItNS4xMjctMi4yNTZjLTEuMjYtMS40OTQtMS44NzUtMy41NzQtMS44NzUtNi4yMTFjMC0yLjY5NSwwLjY0NS00Ljc3NSwxLjg3NS02LjI5OQ0KCQljMS4yNi0xLjUyMywyLjkzLTIuMjU2LDUuMTI3LTIuMjU2YzIuMTY4LDAsMy44MzgsMC43NjIsNS4wOTgsMi4yNTZjMS4yMywxLjUyMywxLjg3NSwzLjYwNCwxLjg3NSw2LjI5OQ0KCQlDMTM1LjM4MSw4Ni4xOTEsMTM0Ljc2Niw4OC4yNzEsMTMzLjUwNiw4OS43NjZ6Ii8+DQoJPGc+DQoJCTxwYXRoIGZpbGw9IiMwMDlBREEiIGQ9Ik0xMDkuNDUzLDU3LjI3NXYwLjE3Nmw0LjE2LDMxLjk2M2wtMi40MzIsNi43MzhsLTAuMzIyLTAuMjM0bC00LjI3Ny0zMC42NDVsMC4wODgtMC40MWwyLjY2Ni03LjQxMg0KCQkJQzEwOS4zMzYsNTcuNDUxLDEwOS40NTMsNTcuMjc1LDEwOS40NTMsNTcuMjc1eiIvPg0KCQk8cGF0aCBmaWxsPSIjOTFDOUVEIiBkPSJNNzcuNDMyLDYxLjcyOWwzMi4wMjEtNC40NTNsLTIuNjk1LDcuNjc2bC0wLjM4MSwwLjQxbC0yOS45NDEsNC4zOTVsMC4xNDYtNS40NzlMNzcuNDMyLDYxLjcyOQ0KCQkJTDc3LjQzMiw2MS43Mjl6Ii8+DQoJCQ0KCQkJPGxpbmVhckdyYWRpZW50IGlkPSJTVkdJRF8yXyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSItMjMzLjUzNTYiIHkxPSI0NzAuNDU1MiIgeDI9Ii0yMzMuNTA1NiIgeTI9IjQ3MC40MzEiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMTA4NS45ODQ1IDAgMCAtMTA4MC42NTIzIDI1MzY5My4wMzEyIDUwODQ2OC4zMTI1KSI+DQoJCQk8c3RvcCAgb2Zmc2V0PSIwLjAwNTYiIHN0eWxlPSJzdG9wLWNvbG9yOiMwMDhDRDIiLz4NCgkJCTxzdG9wICBvZmZzZXQ9IjEiIHN0eWxlPSJzdG9wLWNvbG9yOiMwMDY0OUQiLz4NCgkJPC9saW5lYXJHcmFkaWVudD4NCgkJPHBhdGggZmlsbD0idXJsKCNTVkdJRF8yXykiIGQ9Ik0xMDYuNzU4LDY0Ljk1MWw0LjQyNCwzMS4yMDFsLTMxLjU1Myw0LjQyNEw3NS4zODEsNzAuNDNsMS44NDYtMS40MzZMMTA2Ljc1OCw2NC45NTF6Ii8+DQoJCTxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik0xMDEuMzk2LDcwLjkyOGMtMC4xNDYtMC45NjctMC40NjktMS42OTktMC45OTYtMi4xOTdjLTAuNDM5LTAuMzgxLTAuOTY3LTAuNTg2LTEuNTgyLTAuNTg2DQoJCQljLTAuMTQ2LDAtMC4zMjIsMC0wLjQ5OCwwLjAyOWMtMC44MiwwLjExNy0xLjQzNiwwLjQ5OC0xLjgxNiwxLjExM2MtMC4yOTMsMC40MzktMC40MSwwLjk5Ni0wLjQxLDEuNjQxDQoJCQljMCwwLjIzNCwwLjAyOSwwLjQ5OCwwLjA1OSwwLjc2MmwxLjE0Myw4LjExNWwtOS4wODIsMS4zNDhsLTEuMTQzLTguMTE1Yy0wLjE0Ni0wLjkzOC0wLjQ2OS0xLjY3LTAuOTk2LTIuMTY4DQoJCQljLTAuNDM5LTAuNDEtMC45NjctMC42MTUtMS41NTMtMC42MTVjLTAuMTQ2LDAtMC4yOTMsMC0wLjQzOSwwLjAyOWMtMC44NSwwLjExNy0xLjQ5NCwwLjQ5OC0xLjkwNCwxLjExMw0KCQkJYy0wLjI5MywwLjQzOS0wLjQxLDAuOTk2LTAuNDEsMS42NDFjMCwwLjIzNCwwLjAyOSwwLjQ5OCwwLjA1OSwwLjc5MWwzLjEwNSwyMS4xMjNjMC4xNDYsMC45NjcsMC40NjksMS42OTksMS4wNTUsMi4xOTcNCgkJCWMwLjQzOSwwLjM4MSwwLjk2NywwLjU1NywxLjYxMSwwLjU1N2MwLjE3NiwwLDAuMzUyLDAsMC41MjctMC4wMjljMC43OTEtMC4xMTcsMS4zNzctMC40OTgsMS43NTgtMS4xMTMNCgkJCWMwLjI2NC0wLjQzOSwwLjM4MS0wLjk2NywwLjM4MS0xLjU4MmMwLTAuMjM0LTAuMDI5LTAuNDk4LTAuMDU5LTAuNzYybC0xLjI2LTguMzVsOS4wODItMS4zNDhsMS4yNiw4LjM1DQoJCQljMC4xNDYsMC45NjcsMC40NjksMS42OTksMS4wMjUsMi4xNjhjMC40MzksMC4zODEsMC45NjcsMC41ODYsMS41ODIsMC41ODZjMC4xNDYsMCwwLjMyMiwwLDAuNDk4LTAuMDI5DQoJCQljMC44Mi0wLjExNywxLjQzNi0wLjQ5OCwxLjgxNi0xLjExM2MwLjI2NC0wLjQzOSwwLjQxLTAuOTY3LDAuNDEtMS42MTFjMC0wLjIzNC0wLjAyOS0wLjQ5OC0wLjA1OS0wLjc2MkwxMDEuMzk2LDcwLjkyOA0KCQkJTDEwMS4zOTYsNzAuOTI4eiIvPg0KCTwvZz4NCgk8Zz4NCgkJPHBhdGggZmlsbD0iIzY2QkY2QiIgZD0iTTQ3LjQ2MSw0OS4xMzFsLTExLjM5NiwyNy4wN2wxLjU1MywxMS44OTVsMC4wODgtMC4wMjlsMTIuODAzLTI4Ljc5OWwtMC4wNTktMC42MTVsLTIuNzU0LTkuMTQxDQoJCQlMNDcuNDYxLDQ5LjEzMXoiLz4NCgkJPHBhdGggZmlsbD0iIzk4RDBBMCIgZD0iTTQ3LjQ2MSw0OS4xMzFsMi45NTksOS45MzJsMC4wNTksMC4yMDVsMjguMTg0LDEyLjYyN2wwLjA4OC0wLjA1OWwtMi40MDItOS40OTJMNDcuNDYxLDQ5LjEzMXoiLz4NCgkJDQoJCQk8bGluZWFyR3JhZGllbnQgaWQ9IlNWR0lEXzNfIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9Ii0yMzIuMzAzOSIgeTE9IjQ3MC4zOTQyIiB4Mj0iLTIzMi4zMDM5IiB5Mj0iNDcwLjM3MTIiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMTI0Ny43MjY4IDAgMCAtMTI2OC4xNjY5IDI4OTkwOS45Njg4IDU5NjYwOS4wNjI1KSI+DQoJCQk8c3RvcCAgb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojMjZBMTQ2Ii8+DQoJCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojMDA4QTUyIi8+DQoJCTwvbGluZWFyR3JhZGllbnQ+DQoJCTxwYXRoIGZpbGw9InVybCgjU1ZHSURfM18pIiBkPSJNNTAuNDIsNTkuMDYybDI4LjMzLDEyLjc3M2wtMTIuODAzLDI5LjAzM2wtMjguMzMtMTIuNzczTDUwLjQyLDU5LjA2Mkw1MC40Miw1OS4wNjJ6Ii8+DQoJCTxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik03MC4xNjYsNzQuMThjLTAuNjE1LTEuNjQxLTEuNDY1LTMuMDQ3LTIuNTc4LTQuMjE5cy0yLjQ2MS0yLjEwOS00LjA0My0yLjc4Mw0KCQkJYy0xLjU4Mi0wLjY3NC0zLjE2NC0wLjk5Ni00Ljc3NS0wLjk5NmgtMC4wODhjLTEuNjQxLDAtMy4yNTIsMC4zODEtNC44MzQsMS4wODRjLTEuNjcsMC43MzItMy4xMDUsMS43MjktNC4zMzYsMy4wNDcNCgkJCWMtMS4yMywxLjI4OS0yLjIyNywyLjg3MS0yLjk4OCw0LjY4OGMtMC43NjIsMS43ODctMS4xNzIsMy42MDQtMS4yNiw1LjM5MXYwLjYxNWMwLDEuNTgyLDAuMjY0LDMuMTM1LDAuODIsNC42NTgNCgkJCWMwLjU4NiwxLjYxMSwxLjQzNiwyLjk4OCwyLjU0OSw0LjE2czIuNDksMi4xMDksNC4xMzEsMi43ODNjMS41NTMsMC42NzQsMy4xMzUsMC45OTYsNC43NDYsMC45OTZoMC4wMjkNCgkJCWMxLjYxMSwwLDMuMjIzLTAuMzUyLDQuODA1LTEuMDI1YzEuNjctMC43MzIsMy4xMzUtMS43NTgsNC4zNjUtMy4wNzZjMS4yMy0xLjI4OSwyLjI1Ni0yLjg0MiwzLjAxOC00LjY1OA0KCQkJYzAuNzYyLTEuODE2LDEuMTcyLTMuNjA0LDEuMjYtNS4zOTF2LTAuNTI3QzcxLjAxNiw3Ny4zMTQsNzAuNzUyLDc1LjczMiw3MC4xNjYsNzQuMThMNzAuMTY2LDc0LjE4eiBNNjQuNTEyLDgyLjYxNw0KCQkJYy0xLjA1NSwyLjUyLTIuNDksNC4yNDgtNC4yMTksNS4xODZjLTAuOTM4LDAuNDk4LTEuOTA0LDAuNzYyLTIuODcxLDAuNzYyYy0wLjg1LDAtMS43NTgtMC4yMDUtMi42NjYtMC41ODYNCgkJCWMtMS45OTItMC44NS0zLjIyMy0yLjE5Ny0zLjc1LTQuMTMxYy0wLjE3Ni0wLjY0NS0wLjI2NC0xLjMxOC0wLjI2NC0yLjAyMWMwLTEuNDA2LDAuMzUyLTIuOTU5LDEuMDU1LTQuNjI5DQoJCQljMS4wODQtMi41NzgsMi41Mi00LjMzNiw0LjI0OC01LjMwM2MwLjkzOC0wLjUyNywxLjkwNC0wLjc2MiwyLjg3MS0wLjc2MmMwLjg3OSwwLDEuNzU4LDAuMjA1LDIuNjk1LDAuNTg2DQoJCQljMS45NjMsMC44NSwzLjE5MywyLjE5NywzLjcyMSw0LjEzMWMwLjE3NiwwLjYxNSwwLjI2NCwxLjI4OSwwLjI2NCwxLjk5MkM2NS41OTYsNzkuMzA3LDY1LjI0NCw4MC44ODksNjQuNTEyLDgyLjYxN3oiLz4NCgk8L2c+DQoJPGc+DQoJCTxwYXRoIGZpbGw9IiM3NjBEMTYiIGQ9Ik0zMy44MDksNTMuNzNsNC42MjksMzAuOTk2bC0yLjEwOSwxMC44OThsLTAuMjkzLTAuMzgxbC00LjUxMi0yOS45NDF2LTAuNTg2bDEuOTkyLTEwLjQ1OUwzMy44MDksNTMuNzMNCgkJCUwzMy44MDksNTMuNzN6Ii8+DQoJCTxwYXRoIGZpbGw9IiNFRjQ2M0UiIGQ9Ik0wLDY5Ljc1NmwyLjE5Ny0xMC45NTdsMzEuNjExLTUuMDY4TDMxLjY3LDY0Ljg5M3YwLjczMkwwLjM4MSw3MC4wNDlMMCw2OS43NTZ6Ii8+DQoJCQ0KCQkJPGxpbmVhckdyYWRpZW50IGlkPSJTVkdJRF80XyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSItMjMxLjQ3OTIiIHkxPSI0NzAuNDU1NCIgeDI9Ii0yMzEuNDc0NyIgeTI9IjQ3MC40Mjc0IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDExMDEuOTgxIDAgMCAtMTA4MC42NTIyIDI1NTEwMS42MDk0IDUwODQ2Ni40Njg4KSI+DQoJCQk8c3RvcCAgb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojRDkyMjMxIi8+DQoJCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojQkEyMjM0Ii8+DQoJCTwvbGluZWFyR3JhZGllbnQ+DQoJCTxwYXRoIGZpbGw9InVybCgjU1ZHSURfNF8pIiBkPSJNMzEuNjcsNjQuODkzbDQuNjU4LDMwLjczMmwtMzEuMjg5LDQuODkzTDAsNjkuNzU2TDMxLjY3LDY0Ljg5M0wzMS42Nyw2NC44OTN6Ii8+DQoJCTxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik0yOC4zMDEsOTAuNzMyYy0wLjIzNC0wLjI5My0wLjU4Ni0wLjQ5OC0wLjk5Ni0wLjY0NWMtMC40MS0wLjE0Ni0wLjkwOC0wLjIwNS0xLjUyMy0wLjIwNQ0KCQkJYy0wLjU1NywwLTEuMjAxLDAuMDU5LTEuOTA0LDAuMTc2bC04LjI2MiwxLjQwNmMwLjA4OC0wLjY0NSwwLjQxLTEuNDY1LDAuOTY3LTIuNDljMC42MTUtMS4xNDMsMS41NTMtMi41MiwyLjc1NC00LjEwMg0KCQkJYzAuNDEtMC41NTcsMC43MzItMC45NjcsMC45NjctMS4yNmMwLjE0Ni0wLjIwNSwwLjM4MS0wLjQ2OSwwLjY3NC0wLjg1YzEuOTA0LTIuNDksMy4wNDctNC41MTIsMy41MTYtNi4wOTQNCgkJCWMwLjI2NC0wLjkwOCwwLjQxLTEuODE2LDAuNDY5LTIuNzI1YzAuMDI5LTAuMjY0LDAuMDI5LTAuNDk4LDAuMDI5LTAuNzMyYzAtMC42NDUtMC4wNTktMS4yODktMC4xNzYtMS45MzQNCgkJCWMtMC4wODgtMC41ODYtMC4yMzQtMS4wNTUtMC40MzktMS40MzZjLTAuMjA1LTAuMzgxLTAuNDM5LTAuNjc0LTAuNzMyLTAuODVjLTAuMzIyLTAuMjA1LTAuODItMC4yOTMtMS40MzYtMC4yOTMNCgkJCWMtMC40OTgsMC0xLjExMywwLjA1OS0xLjg0NiwwLjE3NmwtOS41NTEsMS42NDFjLTEuMTQzLDAuMjA1LTIuMDIxLDAuNTI3LTIuNTQ5LDEuMDU1Yy0wLjQzOSwwLjQxLTAuNjQ1LDAuOTM4LTAuNjQ1LDEuNTIzDQoJCQljMCwwLjE0NiwwLDAuMzIyLDAuMDI5LDAuNDk4YzAuMTQ2LDAuODIsMC41NTcsMS40MDYsMS4yMywxLjY5OWMwLjQxLDAuMTc2LDAuODc5LDAuMjY0LDEuNDY1LDAuMjY0DQoJCQljMC4zODEsMCwwLjgyLTAuMDI5LDEuMjg5LTAuMTE3bDcuOTY5LTEuNDA2YzAsMC4xNDYsMC4wMjksMC4yOTMsMC4wMjksMC40MWMwLDAuNDk4LTAuMDg4LDAuOTk2LTAuMjY0LDEuNDY1DQoJCQljLTAuMjM0LDAuNjc0LTAuODIsMS42MTEtMS43ODcsMi44MTJjLTAuMjY0LDAuMzIyLTAuNjc0LDAuODUtMS4yMywxLjUyM2MtMi4xNjgsMi42MDctMy42OTEsNC44MzQtNC42MjksNi42OA0KCQkJYy0wLjY3NCwxLjI4OS0xLjExMywyLjUyLTEuMzc3LDMuNzc5Yy0wLjE0NiwwLjczMi0wLjIzNCwxLjQwNi0wLjIzNCwyLjA4YzAsMC40NjksMC4wMjksMC45MzgsMC4xMTcsMS4zNzcNCgkJCWMwLjExNywwLjY0NSwwLjI2NCwxLjE3MiwwLjQ2OSwxLjU4MmMwLjIwNSwwLjQxLDAuNDk4LDAuNzMyLDAuODIsMC45MDhjMC4zMjIsMC4xNzYsMC43NjIsMC4yMzQsMS40MDYsMC4yMzQNCgkJCWMwLjc5MSwwLDEuODc1LTAuMTE3LDMuMjUyLTAuMzUybDguNjcyLTEuNDk0YzEuNTIzLTAuMjY0LDIuNjA3LTAuNjQ1LDMuMjIzLTEuMTQzYzAuNDk4LTAuNDEsMC43NjItMC45NjcsMC43NjItMS42MTENCgkJCWMwLTAuMTc2LTAuMDI5LTAuMzUyLTAuMDU5LTAuNTI3QzI4LjcxMSw5MS4zNzcsMjguNTY0LDkxLjAyNSwyOC4zMDEsOTAuNzMyeiIvPg0KCTwvZz4NCjwvZz4NCjwvc3ZnPg0K'; public getRequestDto( dto: ProcessDto, applicationInstall: ApplicationInstall, method: HttpMethods, url?: string, data?: BodyInit, ): RequestDto | Promise { const request = new RequestDto(this.getUri(url).toString(), method, dto); request.headers = { [CommonHeaders.CONTENT_TYPE]: JSON_TYPE, [CommonHeaders.ACCEPT]: JSON_TYPE, [CommonHeaders.AUTHORIZATION]: `Bearer ${this.getAccessToken(applicationInstall)}`, }; if (data) { request.body = data; } return request; } public getScopes = ( // eslint-disable-next-line @typescript-eslint/no-unused-vars applicationInstall: ApplicationInstall, ): string[] => ['ZohoCRM.modules.ALL', 'ZohoCRM.settings.ALL']; public getSettingsForm = (): Form => new Form() .addField(new Field(FieldType.TEXT, CLIENT_ID, 'Client Id', undefined, true)) .addField(new Field(FieldType.TEXT, CLIENT_SECRET, 'Client Secret', undefined, true)); public getTokenUrl = (): string => 'https://accounts.zoho.eu/oauth/v2/token'; protected _getScopesSeparator = (): string => ScopeSeparatorEnum.SPACE; }